Aren't you lucky? Once again you have a chance to help your favorite professor.
Despite being the high profile computer science professional that I am, I still use a paper and pencil to keep track of grades. For this very course, in fact, a simple coffee spill could result in a drastic error that might affect someone's future. This is the kind of pain that I have to live with every day, and it's eating me up from within. At least I still look good.
Your final project for CMPU 123 will be to solve this problem for me. You must design, and implement, a system for handling student grades. You think this is so easy? If it was I'd have written it already for myself.
weight slot has the value 20.
% grader-lite cs123.fall97
The format of this file is up to you.
Grader Lite Command Interface 1) Add a new exam, homework, etc. 2) Add/Change a students grade. 3) Print a single students record with computed final grade. 4) Print full class records with computed final grades. 5) Print a single exam or homework with computed high/low/avg grades. 6) Save current data to file. 7) Exit Grader Lite. Please select a Grader Lite Command (1-7):
You must submit a top-level design of your project. This should
include complete interface (.h) and implementation (.C) files for each
of your classes, a main routine that shows the top-level
design through function calls, though the functions need not be
implemented.
No requirement will be made that what you submit work or even compile, but it should reflect a system that has been carefully designed. One aspect, though minor, of your grade will be the amount that changes in the final project.
Part I is worth 30% of the total homework grade.
Submit a well documented working version of your program. I will actually use the best program that is submitted to keep track of grades...
Part II Documentation will be worth 20%, implementation will be worth 50%.