Sunday, May 4, 2008

Scrum Handbook

Roles

Scrum Team

1. Team is cross-functional and consists of 5-9 people

2. There are no set project roles within the team

3. Team defines tasks and assignments

4. Team is self-organizing and self-managing

5. Maintains the Sprint Backlog

6. Conducts the Sprint Review

Product Owner (PO)

1. Accountable for product success

2. Defines all product features

3. Responsible for prioritizing product features

4. Maintain the Product Backlog

5. Insures team working on highest valued features

Scrum Master (SM)

1. Holds daily 15 minutes team meeting (Daily Scrum)

2. Removes impediments

3. Shields the team from external interference

4. Maintains the Sprint Burndown Chart

5. Conducts Sprint Retrospective at the end of a sprint

6. Is a facilitator not a manager


Process


Tools

Task Board

1. White Board containing teams goals, backlog items, tasks, tasks in progress, “Done” items and the daily Sprint Burndown chart.

2. Scrum meeting best held around task board.

3. Visible to everyone


Artifacts

Product Backlog – (PB)

1. List of all desired product features

2. List can contain bugs and non-functional items

3. Product Owner is responsible for prioritizing.

4. Items can be added by anyone at anytime

5. Each item should have a business value assigned

6. Maintained by the Product Owner

Sprint Backlog – (SB)

1. To-do list (also known as Backlog item) for the sprint.

2. Created by Scrum Team

3. Product Owner has defined as highest priority

Burndown Chart – (BC)

1. Chart showing how much work remaining in a sprint

2. Calculated in hours remaining

3. Maintained by the Scrum Master daily

Release Backlog – (RB)

1. Same as the Product Backlog. May involve one or more sprints dependent on determined Release date.

“Done”

Means potentially Shippable

FAQ

Who decides when a Release Happens?

At the end of any given sprint the PO can initiate a Release

Who is responsible for managing the teams?

The teams are responsible for managing themselves

What is the length of a task?

Tasks should take no longer than 16 hours. If longer then the then the task should be broken down further.

Who manages obstacles?

Primary responsibility is on the Scrum Master. However, teams must learn to resolve their own issues, if not able then escalated to SM.

What are two of the biggest challenges in Scrum?

Teams are self-managing, Scrum Master managing not leading.

Meetings

Sprint Planning – Day 1/First half

· Product backlog prepared prior to meeting.

· First half – Team selects items committing to complete.

· Additional discussion of PB occurs during actual Sprint.

Spring Planning – Day 2/Second half

· Occurs after first half done – PO available for questions

· Team solely responsible for deciding how to build.

· Tasks created / assigned – Sprint Backlog produced

Daily Scrum

· Held every day during a Sprint

· Lasts 15 minutes

· Team members report to each other not Scrum Master

· Opportunity for team members to synchronize their work.

· Ask 3 questions during meeting

1. What you have done yesterday?

2. What will you do today?

3. What was the impediments?

Sprint Review

· Team presents “done” code to PO and stakeholders

· Functionality not “done” is not shown

· Feedback generated – PB may be reprioritized

· Scrum Master sets next Sprint Review

Sprint Retrospective

· Attendees – SM and Team. PO is optional

· Questions – What went well and what can be improved

· SM helps team in discovery – not provide answers

Visibility + Flexibility = Scrum

Glossary to Terms

  • Time Box – A period of time to finish a task. The end date is set and can not be changed.
  • Chickens – People that are not committed to the project and are not accountable for deliverables
  • Pigs – People who are accountable for the project’s success
  • Single Wringable Neck – This is the Product Owner!

Estimating

User Stories

· A very high level definition of what the customer wants the system to do.

· Each story is captured as a separate item on the Product Backlog.

· User stories are NOT dependent on other stories

Story Template

· As a I want So that ”

Story Example

· As a registered user, I want to print the recipe so that I can cook it.

Story Points

· A simple way to initially estimate level of effort expected to develop

· Story points are a relative measure of feature difficulty

· Usually scored on a scale of 1-10 (typically). 1=very easy through 10=very difficult.

Examples:

1. Send to a Friend” Story Points = 2.

2. Shopping Cart” Story Points = 9

Business value

  • Each User Story in the Product Backlog should have a corresponding business value assigned.
  • Typically assign (L.M.H.) Low, Medium, High
  • PO prioritizes Backlog items by highest value.

Estimate Team Capacity

  • Capacity = # Teammates (Productive Hrs * Sprint Days)
  • Example – Team size is 4, productive hours are 5, Sprint length is 15 days.
  • Capacity = 4 (5 * 15) = 300 hrs
  • NOTE: Account for vacation time during the Sprint.

Velocity

  • The rate at which team converts items to “DONE” in a single sprint – Usually calculated in Story Points.