Grading Rubric for Undergraduate Software Projects
Characteristic Outstanding Above Average Average Below Average Failing
Meets The program The program The program The program is The program is Computational meets all of the produces the produces correct produces incorrect does not work or Specifications computational correct results and results for most results, has several has many bugs specifications displays them computational bugs correctly for almost specs, has a few all computational bugs specifications Displays The program The program The program The program does The program does Output Correctly displays results displays results displays results not display results not display results very clearly and clearly and meets clearly and meets clearly or does not correctly and does intuitively, and most of the display many of the display meet most display not meet most meets all display specifications specifications specs display specs specifications Error Handling The program The program The program The program The program does checks for all error checks for most checks for some checks for few not check error conditions and error conditions error conditions error conditions conditions handles them and handles them and handles them and doesn't handle appropriately appropriately appropriately them appropriately Readability The code is well The code is pretty The code has The code is The code is poorly organized and very well organized, some readable only by organized and very easy to fairly easy to read, organization,is a someone who difficult to read, understand, with and has good challenge to read, knows what it is with no comments clear comments comments and has minimal supposed to do, both in-line and in comments has few comments headers Reusability The code could be Most of the code Some parts of the A few parts of the The code is not reused as a whole could be reused in code could be code could be organized for and each routine other programs reused in other reused in other reusability could be reused programs programs Documentation Documentation is Documentation is Documentation is Documentation is No separate Characteristic Outstanding Above Average Average Below Average Failing clear and well reasonably clear adequate, but not does not explain documentation is written, and clearly and mostly well written or the purpose or provided explains what the complete, and is thorough; methods well, and code does and useful in configuration and does not help the how. It includes understanding the user information is reader understand how to configure system and how to minimal the program or the system and configure and use it system; how to use it correctly configuration and correctly user documentation is inadequate Testing Test cases are Test cases are Tests cover most Test cases miss Test cases are thorough and thorough and representative significant absent or very few, systematic, well systematic, known cases, tests and scenarios, and are and are poorly documented with bugs are known bugs are poorly documented or expected and documented adequately documented; bugs undocumented ; actual output documented are poorly bugs not documented documented Efficiency and The code is very The code is fairly The code is nave The code is brute The code is huge Performance efficient, system efficient, system or brute force, force and and grossly meets or exceeds meets performance system meets most unnecessarily long, inefficient, system all performance requirements performance system meets meets few or no requirements requirements some performance performance requirements requirements Delivery The code and The code and The code and The code and The code and documentation documentation documentation documentation documentation were turned in were turned in on were turned within were turned in were turned in ahead of schedule schedule one day of the due within a week of more than one date the due date week late