Milestones
A milestone represents a significant date in your project.
We are doing using an iterative development process, so your significant milestones are regular meetings where you meet your TA to present your progress. This section describes what is expected for each of these project milestones. For details on the format, see how to prepare for a demo.
Demo 1: Proposal
This is your initial plan. The purpose of this meeting is for your and your TA to agree on what you intend to build, and for them to provide you with feedback. Your grade for this section is based on the viability and cohesiveness of your project plan i.e., are your features complete, will you be able to deliver.
For Demo 1, you will need to produce:
- Project Proposal (PDF format), which includes:
- a description of a typical user and a description of how your product solves a problem for that user.
- a list of requirements, 1-2 sentences each, which describe your final product.
- sketches of your product screens (low-fidellity prototypes).
- GitLab project, which includes:
- Basic product information (product name and description, team details, team contract).
- Milestones for each demo, with high-level features assigned to each demo.
- Gantt chart showing your timeline. Identify reading week and other disruptions.
Demo 2-3: Iterations
The intermediate demos are meant to show progress from the previous weeks. You are not expected to bring a presentation, but should be able to show actual project artifacts related to what you accomplished. The goal is to get feedback, make adjustments and set yourselves up for the next demo.
For Demos 2 & 3, you will need to complete the following.
- Features are added.
- Source code changes were made on feature branches, then merged and committed to
main. - Automated tests were created. Coverage should grow as the course progresses. Tests should pass.
- Source code changes were made on feature branches, then merged and committed to
- Project artifacts are updated.
- Any changes should be reflected in your documentation.
- Issues for this milestone are updated and/or closed.
- Unresolved issues are set to the next milestone and ready to be assigned.
- A software release should be produced and linked to your README.
- This includes installers for supported platforms.
- See release software.
Demo 4: Complete
Your final demo should show the finished product, with all features complete. We will grade what is submitted on the day of the demo.
For this release:
- Features are completed.
- Source code changes were made on feature branches, then merged and committed to
main. - All anticipated features are completed in this release.
- Test coverage is complete. Tests pass.
- Source code changes were made on feature branches, then merged and committed to
- Project artifacts are updated.
- Issues for this milestone are closed.
- Unresolved issues are unassigned.
- A software release should be produced and linked to your README.
- This includes installers for supported platforms.
- See release software.
- Documentation is updated, see track project artifacts. This includes:
- Your user guide + and YouTube video.
- A team reflections page.
- Grading instructions.