Grading Rubric for Programming Problems
• 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 Efficiency 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 program Significant details of specification are Program only functions
correctly and meets the specification are violated, program violated, or the program often exhibits correctly in limited cases
specifications functions incorrectly on some inputs. incorrect behavior. or not at all.
Readability 6 points 4 points 2 points 0 point
Code is clean, Minor issues such as inconsistent At least one major issue that makes it Several major issues
understandable, well- indentation, variable naming, general difficult to read that make it difficult to
organized organization read.
Documentation 3 points 2 points 1 point 0 point
Code is well One or two places could benefit from Major lack of comments makes it No comments.
commented. comments, or the code is overly difficult to understand code.
commented
Code 4 points 2 points 1 point
Efficiency
Code uses an easy, fast Code uses a poorly chosen approach Many instances where code could have
approach in at least one place used easier/faster/better approach.
Assignment 2 points 1 point
specifications
Assignment meets Minor specifications are violated
specifications
Adopted from:
Shelby Kimmel