Scrum Overview

This is an overview of the ScrumProcess, an AgileProcess for software development.

To avoid the MethodOrMethodology debate, this page's author(s) prefer(s) the term process, as is used on the Scrum website at http://www.controlchaos.com

From scrum or scrummage 1 : a rugby play in which the forwards of each side come together in a tight formation and struggle to gain possession of the ball when it is tossed in among them 2. British : MADHOUSE


A good way to begin to understand Scrum is through the terminology used in the process:
Scrum is made up of two InspectAndAdapt cycles: the monthly ScrumSprint and the daily Scrum Meeting. All activity takes place within these two cycles. (There's a half-exception to this: when a team first starts using Scrum, they can't begin a Sprint until there is something on the ProductBacklog. Building just enough ProductBacklog to start the Sprint may therefore happen before the Sprint officially begins. It may also happen as part of the first SprintPlanningMeeting, which would make it part of the monthly cycle.)

The monthly Sprint

This is a 30-day cycle that results in a potentially shippable increment of the software product. During this period the team is empowered to do whatever it takes to meet their goal.

The Sprint begins with a SprintPlanningMeeting attended by the ProductOwner, the ScrumTeam, and any other parties that want to see how the next 30 days will likely go. At the first half of this meeting the ScrumTeam and the ProductOwner select some items from the ProductBacklog that can be implemented in the next 30 days. Based on these items, the ProductOwner and the ScrumTeam agree on a SprintGoal for the next 30 days. This half of the meeting is usually about 4 hours.

The second half of the meeting is where the ScrumTeam takes the items from the ProductBacklog and distills them into items for the SprintBacklog. ProductBacklog items are high-level and loosely defined. They will be estimated from 1 - 20 days or so. SprintBacklog items are lower-level and much more defined. They should be measured in hours, not days, and will be estimated from 1 - 16 hours or so.

The daily Scrum Meeting

The chance to InspectAndAdapt comes every day in Scrum at the DailyScrum. Each work day the Scrumteam gathers in the same place at the same time. The ScrumMaster asks each person 3 questions, in turn: This is a good place to introduce the idea of ChickensAndPigs. A not-so-funny joke:

  A chicken and a pig decide to start a restaurant.
  The pig says, "What should we call it?"
  The chicken says, "How about 'Ham & Eggs'?"
  The pig says, "No thanks.  I'd be committed, but you'd just be involved."

In Scrum, people on the ScrumTeam are pigs. Everyone else is a chicken. At the DailyScrum, only pigs can talk. Chickens can come to the meeting to observe and learn, but they can't talk, make funny faces, whisper, take notes loudly, or in any other way communicate during the meeting. If they do, they have to leave. If they persist, they can be banned from the meeting. This applies to all chickens, including (especially?) executives.

After the DailyScrum, the team gets to work, and the ScrumMaster sets about removing impediments. LatherRinseRepeat.
During the Sprint, the ScrumTeam has two requirements: attend the DailyScrum and update the SprintBacklog with number of hours remaining. Notice that this is estimated work remaining, not a measure of work done. A task that had 3 hours remaining on Monday may have 5 hours remaining on Tuesday and 10 hours remaining on Wednesday, even though the developer has worked on it solid for 2 days. Updates to the SprintBacklog do not reflect the amount of work that has been done on a task; they reflect the work remaining to complete the task.
At the end of 30 days, there is a SprintReview where the team demonstrates the increment of the software they have completed. This meeting has a two hour rule: no more than two hours of prep time are allowed, and PowerPoint is forbidden...unless you're using Scrum to develop PowerPoint. The primary focus of this is to allow the ProductOwner and other parties to see the working software, and comment on it. Things they say as they play with it and use it will become items on the ProductBacklog for future sprints.
That's Scrum, in a nutshell. The concepts are easy, the practice is hard.
Perhaps Scrum is not a HighToleranceMethodology as nowadays a new term has been coined: ScrumBut?, which are dialects of traditional application of ScrumMethodology. -- DericoFilho
Contributors: MichaelIvey
See Also: ScrumProcess, FrequentScrumQuestions?, ScrumBook
CategoryScrum

EditText of this page (last edited August 18, 2009) or FindPage with title or text search