24sp ver.

Note: this is for the Spring 2024 iteration of CSE 121. Looking for a different quarter? Please visit https://courses.cs.washington.edu/courses/cse121/.

A grade of U (“Unassessable”) may be assigned in the case that the submitted work cannot be properly assessed.

Programming Assignment Rubric

E(xcellent)
Evidence of meeting or exceeding all learning objectives is present. Work has only trivial or inconsequential flaws, if any. Little to no room left to improve understanding.
S(atisfactory)
Evidence of meeting most or all learning objectives is present. Work includes minor errors or inconsistencies, but no significant shortcomings. Understanding could potentially be improved, but demonstrated mastery is acceptable.
N(ot yet)
Evidence of meeting some learning objectives is present, but there are significant gaps and/or evidence of not yet meeting other learning objectives. Demonstrated understanding needs further development to meet expectations.
Behavior
  • Correctly implements all required functionality
  • Exhibits correct behavior in all cases
  • Attempts to implement all required functionality
  • Exhibits correct behavior in all common cases
  • Attempts to implement most required functionality
  • Exhibits correct behavior in most common cases
Concepts
  • Most appropriate variant of language features used in all circumstances
  • Most appropriate type and/or data structure used for all data (e.g. variables, parameters, fields)
  • All data created and used in the most local scope possible
  • All code is appropriately factored to eliminate unnecessary redundancy and/or computation
  • No extraneous or unnecessary code or constructs (e.g. methods, parameters, conditional cases)
  • All assignment-specific implementation requirements met
  • Reasonable variant of language features used in all circumstances
  • Reasonable type and/or data structure used for all data (e.g. variables, parameters, fields)
  • All data created and used in local scope
  • No obviously unnecessary redundancy or computation
  • No obviously extraneous or unnecessary code or constructs (e.g. methods, parameters, conditional cases)
  • All key assignment-specific implementation requirements met
  • Some reasonable language features used
  • Some reasonable types and/or data structures used
  • All data created and used in local scope
  • Some unnecessary redundancy or computation eliminated
  • Some extraneous or unnecessary code or constructs eliminated
  • Most key assignment-specific implementation requirements met
Quality
  • Header comments are present on all classes and methods
  • All header comments are concise and meaningful, and include all relevant information and no inappropriate information
  • All identifiers are descriptive and meaningful, and follow naming conventions
  • Names, comments, and line lengths make code more readable and maintainable
  • All code is indented and spaced consistently and cleanly
  • Code follows all guidelines from code quality guide
  • Personal style choices are reasonable and consistent
  • Header comments present on most classes and methods
  • All present header comments are concise and meaningful, and include all relevant information
  • Most identifiers are meaningful and follow naming conventions
  • Names, comments, and line lengths do not significantly reduce readability or maintainability
  • Indentation and spacing do not significantly reduce readability or maintainability
  • Code follows all major guidelines from code quality guide
  • Personal style choices are reasonable
  • Header comments present on some classes and/or methods
  • Some header comments are concise and meaningful, and include most relevant information
  • Some identifiers are meaningful and/or follow naming conventions
  • Some attempt made at appropriate naming, line lengths, Indentation and spacing
  • Some code follows guidelines from code quality guide
Testing/Reflection
  • Tests cases/plan provided for all meaningful behavior
  • All coded tests run without errors and provide meaningful and accurate results
  • Tests and/or plan are well-written and easy to comprehend
  • Appropriate comments and documentation provided for all coded tests
  • All reflection questions answered and demonstrate meaningful effort
  • Test cases/plan are provided for all common and important behavior, and all required cases
  • All coded tests run without errors and produce accurate results
  • Tests and/or plan conform to stated requirements
  • Appropriate comments and documentation provided for most coded tests
  • All reflection questions answered and demosntrate meaningful effort
  • Tests cases/plan provided for some required cases
  • Some coded tests run without errors
  • Some tests and/or plan conform to some stated requirements
  • Comments and/or documentation provided for some coded tests
  • Some reflection questions answered and demonstate meaningful effort.

Creative Project Rubric

Mark Requirements
E(xcellent)
  • All basic requirements met.
  • Extension meets requirements and demonstrates meaningful effort.
  • All code quality requirements and expectations met.
S(atisfactory)
  • All basic requirements met.
  • Extension missing, does not meet requirements, or does not demonstrate meaningful effort.
  • Some code quality requirements and expectations not met.
N(ot yet)
  • Some basic requirements not met.