CSC 150
Grading Standards for Projects

Guideline for point deductions: The above are just guidelines and do not reflect every case. In general, programming projects will be graded using the following standards. Before turning in any code, check to be sure that you meet the following criteria. We will be discussing many of these design issues as the term progresses.

Criteria Category Explanation
Output Issues


The program solves the correct problem.
The program solves the problem correctly.


All assignment requirements are met.


Effective test data chosen.
Design Issues


Comment for each major algorithm step.
Comments following each variable/object declaration (unless variable name makes it clear).
Meaningful variable names
Effective use of white space and indentation
Prompts for input
Headings/Labels for output
Comment before each method/class describing its role


Good utilization of the Java programming language
No global variables
Logic of your code follows the algorithm
English explanation = what the code does
Relationships between the data elements are inherently represented in the code
No unnecessary work done or excessively convoluted logic


Each method does one task
Methods reflect the behavior of the object
Complex tasks are effectively delegated to other objects
Good use of encapsulation


Class is general enough to be usable elsewhere
No unnecessary duplication of code
Good use of Java interfaces and/or generics


Good error-checking
Data structure is protected against accidental or deliberate misuse


Time and space-intensive operations have been identified
Correct abstract data type (ADT) is used to decrease running time for frequently-used operations