# Grading and Feedback in CS50

## Design

Correctness, design, and style are the three axes along which CS50 at Harvard assesses student work. Correctness and style can be autograded with check50 and style50, but design is where you as a teacher critique code and offer your qualitative assessment. At Harvard, CS50 grades design out of 5 points.

#### What is Design?

Design is about how a student has approached the problem: to what extent their solution is efficient, creative, and shows mastery of course concepts. For more on what to look for in design, see both the base grading guidelines and problem set-specific guidelines below.

#### Guidelines on Awarding Points

Design points are not subtractive—that is, a baseline grade is not a 5 and earning a 3 does not mean that a student has “lost two points” on an assignment or “earned a 60%” (two common interpretations we hear from students). Rather, points are used to characterize the extent to which a student has met, exceeded, or fallen short of the course’s expectations.

The course expects that most students on average will be earning a score of 3 or 4 on the Design axis, with perhaps a 2 serving as the low end. Reserve awarding a 5 only to those submissions that are exceptional, for which you can find absolutely no room for improvement. If you can propose even one modification that would improve efficiency, it’s not a 5 and should not be scored as such.

3’s and 4’s should be awarded to work that demonstrates a good to great mastery of the given week’s concepts and problem set. A student’s benchmark for success is considered a 3.

1’s and 2’s should be awarded to work that demonstrates a poor to fair understanding of the given week’s concepts and problem set. Awarding a 1 or a 2 indicates that there are substantial improvements to be made to the design of a student’s solution.

#### How should I grade incomplete work?

If a student has submitted an incomplete solution, it is best to approach grading design in response to the question, “Given what the student has submitted, what evidence do I have that they have understood a good design approach to the problem?”. It’s best to avoid a scenario where a student is double-penalized for incompleteness on both correctness and design, but it’s also best not to extrapolate from a single function that a student has understood all of the week’s concepts.