Project Tracking
You are expected to track your project and all related implementation details in your GitLab project.
- Milestones should be defined for your project, where each stage of your project is listed as a milestone spanning a fixed date range.
- Requirements should be tracked as issues, or “tasks”. Issues are assigned to a milestone as part of the planning process for a particular stage. Issues may be Open or Closed, depending on their state. They should remain associated with a milestone, even after they are closed.
- Issue are updated as work progresses. Ideally, you should be able to understand the state of the project by reviewing the state of the issues attached to the current milestone.
- Code branches should be used to stage work-in-progress, and code commits should be coordinated with the issues associated with that commit.
Milestones
A milestone is a major project activity, with a fixed timeframe.
- Each milestones relates to a project activities and is named after that activity e.g.,
Proposal
orSprint 1
. - Milestones have a timeline, so you should set start and end dates to correspond with the schedule.
- Milestones all end with a submission (demo).

Issues
An issue is a description of a requirement that should be implemented.
- It should correspond to a requirement from your proposal. A particularly large requirement may need to be broken down into multiple issues. (i.e. tasks -> sub-tasks).
- You should have at least as many issues as you have requirements.
Issues are also units of work. All work conducted on your project should be associated with an issue, and you are expected to add implementation details to your issues.
- Each issue should be approximately 0.5 days of work.
- Issues should be initially unassigned. You only assign them to a person and a milestone when you have agreed to include this issue in a milestone, and assigned it to a person.

Make use of the issue and milestone views:
Plan
>Issue Boards
is useful for planning in team meetings, since it shows you all of your open work for the rest of the project.Plan
>Milestones
is really useful to check the status of the current sprint. You should use this view when discussing your progress with your TA in demos.