Syllabus
Grading
The course is graded on a total of 1000 points exactly, such that 10 points represent a single percentage point. With that said, the course uses the traditional A-F grading scale, where each grade band is represented below.
| A | B | C | D | F | 
|---|---|---|---|---|
| >=90 | >=80 | >=70 | >=60 | <=59 | 
Participation (15%)
Although not the most significant portion of your grade, we intentionally list the participation assessment because of its importance. Software engineering is an inherently collaborative practice, often requiring dozens (if not hundreds) of engineers working on the same source code repository.
In this class, you will be responsible for reviewing other students' code, participating in forum discussions on Piazza, and communicating with your peers in Slack. You are not forced to use each of these platforms extensively; you should be able to do so with any platform on its own, a subset of the platforms, or all of the platforms in combination.
Each of your contributions will be individually graded and assigned a point allocation. For example, an exemplary code review could receive up to 10 points if it exceeds all of our expectations, whereas another code review could only earn 1 point if it is clearly lacking in substance and quality.
Assignments (65%)
The assignments are the primary source of your grade in this class. Each unit will have one or more assignments with one or more individual tasks for you to complete. The deliverables for each assignment will also vary between units. For example, some units will require that you submit your solution with a lightweight technical document that justifies the decisions you've made, whereas others will require that you provide a certain number of test cases.
In general, your assignments will be graded on completeness and correctness. Code style will also be taken into account, but it will only account for 5% of the total assignment grade.
Final project (20%)
The final project will feel very familiar to the assignments you've completed in the class up to this point, but will be larger in scope and open-ended. 80% of the final project grade will be allocated towards completeness and correctness, 15% will be allocated to the final project write-up, and the final 5% will, again, be devoted to code style.