Next: Miscellaneous Ideas not yet
Up: Programming Projects
Previous: Termination.
For the most part, grading considers the following points.
- Documentation of Requirements
- A short section on what you think the problem is.
- List of requirements and ``pointers'' from the
list to test cases verifying requirements met.
- Preliminary Design (Architecture).
- Do type and routine names make sense?
- Does choice of types make sense?
- Pre- and post-conditions on routines. Pointers to
tests verifying conditions met.
- Organization of types as to best use of space.
- Completeness of the design. What level does it
get to?
- Code
- Does the code have useful comments or just filler?
- Are overloads and operator definitions obvious?
- Use of exceptions (throw/catch/try)
- Maximum reuse of previous assignments?
- Testing
- Test data complete and reasonable.
- Primitives completely tested?
- Are derived routines correctly tested?
- Is the test output usable and in the document?
- Learning Recap available from every member?
The weights heavily favor points 1, 2, and 4
at a total of with respective weights 20%, 30%, and 30% respectively. The
coding part gets the remaining 20%. Item 5 will be required of each
individual independently. This becomes a 20 point homework assignment. It
is graded on how convincing you are about what you learned.
Steve Stevenson
Wed Feb 26 10:54:45 EST 1997