Group Project
In the second half of this course, you will be working on a large-scale group project in teams of four. You and your teammates will be making a fairly substantial contribution to the IDLE code base. This can be creating an entirely new feature, or revamping an existing one.
At the end of this quarter, each team is expected to present their project before the course staff. The specific grading rubric will be determined and published at a later date.
Requirements
-
You have added a substantial feature/modification to IDLE (regardless of amount of code, we care more about the thought put into design and the substance of the changes, not the quantity)
-
You have written tests to verify correctness of your added code and to protect against future changes that may break your implementation.
-
You have sufficiently documented your changes with diagrams, comments, and other methods of knowledge/code management.
-
You should follow good practices of using Git by giving comments on code reviews, branching, etc. We will discuss this in future lectures.
Grade Breakdown
The final group project grade is based on five components, each scored on a 0–3 scale:
- Project Proposal
- Checkpoint
- Weekly Reflections
- Final Presentation
- Final Pull Request
The Final Group Project Score (0-3) is determined using the thresholds below.
| Final Group Project Score | Requirements |
|---|---|
| 3 (Exemplary) | Reflections + Presentation + Final PR ≥ 8 / 9 AND Proposal + Checkpoint ≥ 5 / 6 |
| 2 (Satisfactory) | Reflections + Presentation + Final PR ≥ 7 / 9 AND Proposal + Checkpoint ≥ 4 / 6 |
| 1 (Threshold Pass) | Reflections + Presentation + Final PR ≥ 6 / 9 AND Proposal + Checkpoint ≥ 3 / 6 |
| 0 (No Pass) | Reflections + Presentation + Final PR ≤ 5 / 9 OR Proposal + Checkpoint ≤ 2 / 6 OR Scored 0 on any component |