MS1: Alpha

Your task in this milestone is to complete your first sprint. Build some functionality, test it, demo it to your section and TAs, submit your source code, and submit a progress report as described below. At the end of the sprint, you will do a group exercise on teamwork.

Table of Contents:

Read the Handouts

Please read all of the MS1 through MS3 handouts at this time, especially the final rubric in the MS3 handout.

Build and Test

During the first of the two weeks of this sprint, you’ll be working on A5 as well. So during that week, you’ll probably want to just do some planning on MS1. As a team, decide what functionality you want to implement in MS1. You already did some thinking about that on MS0. Now, go deeper. Identify small pieces of functionality that can be divided among team members. It is perfectly fine for each team member to be working on distinct tasks.

During the second week of the sprint, you won’t have any other 3110 programming assignments. So, it’s time to hit the ground running! Work hard to implement your planned functionality. At the same time, put all those good software engineering techniques we’ve been teaching you this semester to good use: keep the code quality high, everything documented, and the test suite growing.

Demos

During your Tuesday or Wednesday discussion section at the end of each sprint, you will spend the section demoing your completed functionality to the other teams in your section. At least one person from your team must be present. Bring laptops with your system pre-installed and running, so that everyone can see the result of your hard work!

Note that you may demo whatever you have completed at the time of the demo, regardless of what you have or have not submitted to CMS. Your grade will be primarily be based on the report that you submit (described next), and that report will be due at the same time for everyone.

We encourage you to give constructive feedback to the other teams as you try out their systems, and to receive such feedback yourself. Perhaps other users will expose faults in your system, or have ideas about how to improve the interface, or thoughts about enhancements you could make in future sprints.

Progress Reports

With every team building a different system, it’s impossible for your work to be assessed in exactly the same way as the previous programming assignments have been. After all, the course staff can’t build its own test suite for each of the 120+ projects.

Instead, you will do a self-evaluation of your progress at the end of each sprint by writing a progress report. Your report will be due the Thursday after your demo, to give you time to reflect on your progress and plan your next sprint.

Your report should be approximately two to three pages long. It should contain the following information:

Acknowledgement: this progress report format is based on Prof. Walker White’s CS 4152 (Advanced Games) progress report.

Submission

Source code.

Progress report. Submit your progress report on CMS before the deadline. The progress report should not be an afterthought: it is a critical component of this project. Don’t blow it off or forget about it.

Late submissions. Unlike the programming assignments, no late submissions will be accepted on the project. Instead, there will be a grace period of a couple hours. As usual, submissions will not be accepted through email. You must upload to CMS by the deadline.

Rubric

Total: 10 points.

Code quality, documentation, and testing will not be graded until MS3 (see the MS3 rubric for details), but don’t wait until then to work on them!

Teamwork Exercise

A day or two after you have submitted all the deliverables for this sprint, fill out this form together as a team. Use that as an opportunity to have a discussion about how you can become more effective as a team. You do not need to submit the form; it is for your edification, not for the course staff to read.