CSC301H Fall2013

Sprint 1

Sprint 1

This is a team assignment; each team submits one assignment

Due Date for Preliminary Deliverables: October 15, 22:00:00 EST (No late submissions will be accepted).

Weight: 3% of course grade

Due Date for Final Deliverables: October 23, 22:00:00 EST (No late submissions will be accepted).

Weight: 12% of course grade

Submission format: commit all necessary files to your team GitHub repository by the deadline.

Goals

The goals of the project at this stage are:

All work artifacts should be checked into the repository throughout the sprint. Time stamps and versions will be used especially to evaluate process tasks.

Process Tasks

The following tasks relate to the scrum process, not the performance of the product itself. Elements that can be documented should be included in your repository by the sprint due date, and all others will be verified by your TA at the weekly tutorial meetings.

Be sure to meet with your Product Champion at least twice: once to prioritize the user stories and once to obtain feedback on the work you have done so far.

Produce a Product Backlog

Estimate sizes for your user stories. Present the stories to the Product Champion and obtain a prioritization.

Allocate Stories to Sprints

Decide which stories will by implemented in this and the remaining sprints.

Hold a Sprint Planning Meeting

Take the stories allocated to the current sprint and break them into a tasks. Estimate the number of hours required for each task.

Maintain a Scrum Board

Place the tasks and stories on a Scrum Board. Use this display to track the progress of tasks and stories.

Maintain a Burndown Chart and Calculate Velocity

Create a burndown chart. Record progress on the chart as the project moves forward. Calculate estimated and actual velocities.

Maintain Meeting Minutes and Attendance Spreadsheet

Keep minutes for your all meetings (planning, scrums, and client). Minutes should include a list of who attended, what decisions were made (and how), and a list of action items (with deadlines and who they were assigned to.) Also, create a spreadsheet showing who attended which meetings. Make each meeting a column in the spreadsheet.

Product Tasks

As with the Process Tasks, the Product Tasks are ongoing. They may be checked by the TA at the end or during the sprint.

Testing

For every story, there must be either an automated tests or a test plan for manual testing. These should be produced before the application code is written.

Implementation

Create the functionality for multiple user stories. Every team member must write code.

Code Quality

Produce code that is easy to read and easy to understand. Use comments, developer notes, diagrams, and documentation as appropriate to facilitate comprehension.

Design and Technology Manifesto

Justify your decisions. Why did you select the technologies that you are using? How did you arrive at these decisions? What is the design/architecture of your software? Why this structure, subsystem decomposition, data model, etc?

Specification for Next Sprint

Write a specification for what you will build for the next sprint. Think about what / how many features (user stories) you should build, what other supporting documentation should be submitted with them, and what criteria should be used to judge success (i.e. how will your TAs mark Sprint 2?)

Assessment Criteria

Overall Functionality: Requirement Fulfillment:
  • Were user stories really completed (implemented, tested, and ready to demo)
  • How well does implementation of the features meets the needs of the users specified in personas?
  • How well did the team adhere to its desired feature list / schedule for this iteration?
  • Relevant Documentation: Planning:

    What and How to Submit

    Preliminary Deliverables: Estimates and priorities of the user stories are due on October 15. The TAs will give you feedback on them during tutorial.

    Final versions of all deliverables are due on October 23.

    In both cases, submission will be through GitHub.

    Create a web page for Sprint 1. From there add links to all elements that you want graded. Many of the links will be to your group's github repository. This includes meeting minutes, notes about your conversations with the customers, test plan, test code, user stories, source code, and any other explicit and implicit deliverables.

    The above requirements are subject to changes based on feedback from the course bulletin board. This page will be frozen at midnight on Friday, October 18.