Project Sprint 3
After reviewing the deliverables for the second project sprint, I noticed that most teams are struggling to have their code approved by the end of each sprint. Every team still has at least one open pull request to support basic gameplay (e.g., the ability to place walls); some teams haven’t had any code approved to date.
In light of this situation, I will offer two alternatives for the third sprint:
- Code Cleanup
- With this option, the third sprint will focus on existing code—namely,
refactoring it so that all the existing features are approved. No new code
will be written apart from that requested as part of reviews. Due to the
change in project scope, scores will be capped at 50 points for the
sprint as a whole (instead of 60 points); earning all 50 points requires all
features previously developed to be approved.
If you choose this option, your specification should clearly state what you are doing. For example, the “problem description” should highlight specific issues raised on the reviews of existing pull requests, and the “proposed change” should have a paragraph on what will be done to address the issue(s) for each pull request. Remember that specifics are important: “too much code in a single pull request” is a reasonable synopsis of a problem, but “create smaller pull requests” is too vague to be useful. Instead, take the opportunity to identify how to divide the code into independent chunks that incrementally support gameplay.
- Additional Feature
- With this option, the third sprint will focus on a new feature: either a computer player or graphical user interface (GUI), whichever was not implemented previously. Teams pursuing this option can earn up to 60 points, but it should be noted that earning all 60 points requires the new feature to be approved, which may also necessitate the approval of code developed as part of a previous sprint. If the new feature still requires considerable work prior to its approval, then the maximum score you’ll earn is 47.5 points (i.e., 50% credit for your implementation).
Which option you choose is up to each individual team. You do not need to let me know in advance, as I can infer your choice from your specification, but I’m happy to meet with any teams that would like to discuss the various options based on what they’ve accomplished to date.