Shelby Kimmel
Grading Rubric for Programming Problems
Programming assignments will be graded based on a 30-point rubric (see next page). On this page, we give a little more information
about the categories in the rubric:
• Program Specifications: You program should work correctly on all inputs. Also, if there any specifications about how the program
should be written, or how the output should appear, those specifications should be followed.
• Readability: Variables and functions should have meaningful names. Code should be organized into functions/methods where
appropriate. There should be an appropriate amount of white space so that the code is readable, and indentation should be consistent.
• Documentation Your code and functions/methods should be appropriately commented. However, not every line should be commented
because that makes your code overly busy. Think carefully about where comments are needed.
• Code Elegance There are many ways to write the same functionality into your code, and some of them are needlessly slow or
complicated. For example, if you are repeating the same code, it should be inside creating a new method/function or for loop.
• Assignment Specifications The assignment will likely ask you to include certain information as comments, or save your program
with a certain file name, or other such specifications. These tasks fall under “assignment specifications.”
Program 15 points 10 points 5 points 0 point
Correctness
Program always works Minor details of the pro- Significant details of Program only functions
correctly and meets the gram specification are vi- specification are vio- correctly in limited cases
specifications olated, program func- lated, or the program or not at all.
tions incorrectly on some often exhibits incorrect
inputs. behavior.
Readability 6 points 4 points 2 points 0 point
Code is clean, under- Minor issues such as At least one major issue Several major issues that
standable, well-organized inconsistent indentation, that makes it difficult to make it difficult to read.
variable naming, general read
organization
Documentation 3 points 2 points 1 points 0 point
Code is well commented. One or two places could Major lack of comments No comments.
benefit from comments, make it difficult to under-
or the code is overly com- stand code.
mented
Code Elegance 4 points 2 points 0 point
Code appropriately uses Code uses a poorly cho- Many instances where
for loops and methods for sen approach in at least code could have used
repeated code, and there one place, for exam- easier/faster/better ap-
is minimal hard-coding. ple, hard coding some- proach.
thing that could be im-
plemented through a for
loop
Assignment 2 points 1 points 0 point
specifications
Assignment meets speci- Minor specifications are Significant specifications
fications violated ignored or violated