Tuesday, December 28, 2010

What is Scrum?

Scrum, by definition, is an Agile framework for Software Development.

 
Key Definitions:

 
Sprint: Also called Iteration sometimes, it is a pre-defined period of 2 to 4 weeks, during which an incremental and deliveration product is created by the team.

 
Daily Scrum (or Stand-ups): Daily meetings. They are conducted daily, at the same time, and are very short- typically 15 minutes.
During a daily scrum, each team member specifies 3 things:
- What did he do yesterday?
- What is he planning to do today?
- Any blockers/issues that stop him/her from the planned work.
ScrumMaster is responsible for taking steps in order to 'Unblock' the team members.

 
ScrumMaster or Iteration Manager: A person who oversees the process and makes sure its smooth flow. He/she often replaces Project Manager.

 
Product Owner: is the business owner of the project/product.

 
Pigs and Chicken: These are the two roles. Pigs are the people who actively participate in the daily Scrum activities: meetings, development work etc. ScrumMaster and the Team represent Pig role. Product Owner may also be considered as Pig Role, however, he/she does not participate in the daily stand-ups etc.

 
Going forward, Sprint and Iteration are used interchangeably.

 
Story: A story is something to be worked on, during a sprint. A Software requirement or a defect (bug) is a story. A typical story has 3 parts:
- Title
- Short Narrative
- Acceptance Criteria
A story is broken down into smaller pieces called Tasks. A task should be trackable, and should have a clear definition of Done.

 
Product Backlog: A prioritized set of requirements (stories).

 
PBI: Each requirement in the Product Backlog is called Product Backlog Item, or simply, PBI.

 
Sprint Backlog: A prioritized set of tasks to be worked on (and completed) during a sprint.

 
BurnDown Chart: Graphical representation of amount of work not yet completed, in a sprint.

 
Done: Acceptance Criteria or Exit Criteria, that determines whether a task (or PBI) is complete.
Examples of Done criteria are:
  • Code reviewed and Unit-Tested.
  • Code checked into a common Code Library (or repository).
  • Build Deployed successfully.
  • Automated Build Accecptance tests run successfully.
  • Regression Tests run successfully.
 ... and so on.


 Velocity: Capacity of work.

No comments:

Post a Comment