Agile Development with Scrum
Shannon LucasJuly 22nd, 2011
OutlineWhat is Scrum?
The Scrum Team
Scrum Events
Scrum Artifacts
UX & Testing
Organizational Impacts
Selling Scrum
What is Scrum?
Scrum frameworkFounded on empirical process control theory
Intentionally incomplete
Iterative & incremental
Outwardly facing & transparent
Requires a definition of “done”
Adapts to changing requirements
The Scrum Team
The Scrum Team
Product
Owner
Scrum Maste
rBusiness
owner
Stakeholders
Scrum Team
Product OwnerManages the Product Backlog and ensures business value of the Team’s work
Represents stakeholder interests to the team
Plans product releases and maintains product roadmap
One person, not a committee
Ultimately responsible for product’s success
Scrum MasterServes as coach, fixer, and gatekeeper
A leadership role rather than managerial
Plans individual Sprints with Team
Facilitates all of the Scrum events
Manages relationship between Product Owner and rest of team
The Development TeamCross-functional group of 5 to 9 people
Self-organizing & continuously improving
Team determines how to transform Product Backlog into shippable functionality
Accountability belongs to Team as a whole
No domain-specific sub-teams
Scrum Events
Sprints24
Hours
Expanded tasks
Daily Scrum meeting
Sprint Backlog
Product Backlog
Potentially shippable product
increment
14 Days
SprintsConsistent duration throughout project
Team composition and quality goals remain constant
No changes made that affect Sprint Goal
Scope can be clarified or re-negotiated as more is learned
Risk is limited to cost of one sprint
Sprint Planning Meeting
Time-boxed meeting to determine work to be done in a Sprint
First event of every Sprint
Answers “What will be delivered in this Sprint?”
Answers “How will the work be achieved?”
Daily ScrumDaily 15 minute (max) meeting
Each team member answers three questions:- What has been accomplished since last meeting?- What will be done before the next meeting?- What obstacles are in the way?
Not a status meeting
Only Development Team can participate
Sprint ReviewDevelopment Team demonstrates work done in the Sprint
Product Owner determines what has been “Done” or not “Done”
Results in a revised Product Backlog
Informs planning for the next Sprint
Sprint Retrospective
Final activity of every Sprint
Team reflects on the Sprint in terms of people, relationships, process, and tools
Identify what went well and where improvements are needed.
Team plans how to implement improvements
Scrum Artifacts
Product BacklogSingle source of requirements and changes to the product
Ordered by unique priority
Never complete
Dynamic and changes as needed responding to changing business needs
Anyone involved can contribute to it
Product Backlog
Highest priority items have the most detail
Detail on lower priority items deferred until it’s needed
Sprint BacklogSet of Backlog items that the Team commits to delivering in the Sprint
Serves as a real-time picture of how work is progressing
Belongs solely to the Development Team
Definition of “Done”A shared understanding of what it means when work is considered done
Defined at the beginning of the project
Applies globally to the project
Might include things such as:- Unit & functional tests- Documentation
User Experience & Testing
User Experience Tasks
UX tasks happen slightly ahead of programming tasks
UX expertise stays involved
No big handoffs
TestingNo distinct testing phase
Features are tested as they are completed, during the Sprint they are developed in
Organizational Impacts
Organizational ImpactsTransitioning to Scrum isn’t always easy
Traditional roles change
Cultural changes
Commitment to continuous improvement.
Selling Scrum
Selling ScrumClients may perceive fixed-bid contracts as less risky
Target-scope & target-cost models
Limiting client exposure to the internal process
Who uses Scrum?
Questions?
Thank you!
ResourcesScrum.org - http://www.scrum.org/
Scrum Alliance - http://www.scrumalliance.org/
All Things Product Owner - http://www.romanpichler.com/blog/
Agile Project Management with Scrum by Ken Schwaber
Succeeding with Agile: Software Development Using Scrum by Mike Cohn
A Practical Guide to Distributed Scrum by Elizabeth Woodward