Project Rubric
The project will be graded according to this rubric:
Core Functionality
35% How well does the project work?
-
100%
Code compiles, runs with no exceptions, and has excellent test cases that exercise the business logic. -
90%
Code compiles and runs with zero run time exceptions, and has some test cases. -
80%
Code compiles and runs fairly well under normal circumstances, but may break down in unusual circumstances, or is lacking test cases. -
70%
Code compiles, and resembles the solution, but has several bugs that occur during normal circumstances. -
50%
Some resemblance to the solution exists, but it is very minimal.
25% How well does the project fulfill its requirements?
-
100%
All explicit requirements met, and some stretch ones too. -
90%
All explicit requirements met. -
80%
The majority of requirements met, but still lacking needed functionality. -
70%
About half of the requirements met. -
50%
Fewer than half met.
Code Style, Design, and Development
10% How well does the code embody good design principles and patterns?
-
100%
Exceptional use of appropriate design patterns AND OO design principles and practices (e.g., interfaces, inheritance, composition, etc.). -
90%
Good application of OO design principles and practices (e.g., interfaces, inheritance, composition, etc.). -
80%
Many principles of good OO design are present, but the project lacks proper overall design and cohesion. -
70%
Some elements of good OO design are present, but almost as an exception. -
50%
Code is not simply in one big class.
10% How “beautiful” is the code? (e.g. conforms to Java code conventions) ?
-
100%
Perfect compliance with course code standards document, and excellent naming. -
90%
Nearly consistent, but some areas of formatting and/or naming could be cleaned up. -
80%
Most of the code looks good, but there are a number of areas of bad naming or very poor formatting. -
70%
Some of the code is consistent with the standards, but it is more an exception. -
50%
An attempt was made at correct conventions.
10% How well documented is the code?
-
100%
Someone else could easily dive into my project next semester based solely on the comments and the Javadoc headers. -
90%
Javadoc headers blocks are filled in consistently and some comments exist. -
80%
Header blocks are mostly present. -
70%
Some comments and Javadoc headers exist, but it is not consistent. -
50%
Some comments here and there.
10% How well was version control used?
-
100%
Specific targeted changes committed with excellent comments. -
90%
Specific targeted changes committed, but comments should be improved. -
80%
Decent commits, but should have been more frequent, and comments are not very helpful. -
70%
Changes committed, but caused build errors, or too much at once, and terrible comments. -
50%
Only committed occasional huge changes.