ESNU Criteria¶
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. | U(nassessable) This may include, but is not limited to, work that is missing, does not demonstrate meaningful effort, does not provide enough evidence to determine proficiency, uses forbidden features, or violates other major course rules. |
---|
Programming Assignment Rubric¶
Behavior¶
E(xcellent) | S(atisfactory) | N(ot yet) | U(nassessable) |
---|---|---|---|
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 | No attempt or unassessable |
Concepts¶
E(xcellent) | S(atisfactory) | N(ot yet) | U(nassessable) |
---|---|---|---|
Most appropriate variant of language features used throughout 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 | No attempt or unassessable Use of forbidden features No demonstration of assignment learning goals |
Quality¶
E(xcellent) | S(atisfactory) | N(ot yet) | U(nassessable) |
---|---|---|---|
Comments are present on all classes and methods All 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 | Comments present on most classes and methods All present 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 | Comments present on some classes and/or methods Some 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 | No attempt or unassessable Little to no attempt at program quality |
Creative Project Rubric¶
The key difference between Creative Projects and Programming Assignmnets is the inclusion of a Creative Extension. To avoid duplicatiing data between tables please refer to the Programming Asignment Criteria as a basis for Creative Projects. The below table explains how the Creative Extension is factored into the Creative Project grading.
Behavior¶
E(xcellent) | S(atisfactory) | N(ot yet) | U(nassessable) |
---|---|---|---|
Correctly implements Creative Extension | Creative Extension is missing or incorrectly implemented but the base requirements still function as expected | Creative Extension causes the base requiremnets to fail in some way | Creative Extension causes base requirements to be unassessable |
Concepts¶
E(xcellent) | S(atisfactory) | N(ot yet) | U(nassessable) |
---|---|---|---|
Correctly implements Creative Extension with excellent demonstration of concepts | Creative Extension is missing, incorrectly implemented, or does not demonstrate excellent understanding of concepts | Creative Extension introduces any N Criteria for Programming Assignmnet Concepts | Creative Extension introduces forbidden features |
Quality¶
E(xcellent) | S(atisfactory) | N(ot yet) | U(nassessable) |
---|---|---|---|
Creative Extension demonstrates excellent code quality | Creative Extension is missing or fails to meet excellent code quality criteria | Creative Extension introduces any N Criteria for Programming Assignmnet Quality | Creative extension causes program to be unassessable |
Reflection Rubric¶
Each Programming Assignment and Creative Project (7 total) includes one reflection questionare. Each meaningful completetion will contribute to an overall reflection grade at the end of the quarter.
E(xcellent) | S(atisfactory) | N(ot yet) | U(nassessable) |
---|---|---|---|
7 | 5 | 3 | >3 |