3. ž Management decides what, when, and
how
ž This
defined model only works when all
factors are known, such as in simple
manufacturing operations
ž Not
a good fit for unpredictable processes,
such as software development
Steve Barr
4. ž Is
a system for collaboration between workers
and management to produce working
iterations of a product in short time periods
despite a complex, unpredictable
environment.
ž Provides periods of stability, change, and
feedback
ž Can be used for more than just development
Steve Barr
5. ž A project management methodology
• Does not replace BDD or other XP practices
ž Based on a business theory:
• New New Product Development Game by Hirotaka
Takeuchi, Ikujiro Nonaka. Harvard Business Review Jan 01,
1986
ž Different
than other approaches in allocation of
control and responsibility
ž An
empirical system using observations and
adjustments throughout
Steve Barr
6. ž Scrum viewed as a set of mutually-
reinforcing practices
ž Only
implementing some Scrum ideas not
considered using Scrum
Steve Barr
7. ž Three Roles
• Product Owner
• Scrum Master
• Team member
ž Three lists (and one chart)
• Product Backlog
• Sprint Backlog
• Completed Features (just what it says)
• Burndown Chart
ž Three meetings
• Sprint planning meeting
• Daily Scrum (status meeting)
• Sprint review meeting
Steve Barr
8. Product Sprint Sprint Sprint
Backlog Planning Backlog
Meeting
Daily Scrum
Work
New Sprint Working
Requirements Review Iteration of
Meeting Product
Steve Barr
9. ž List
of every feature, issue, bug, etc. related to
product
ž Kept in priority order as new items added
• High-priority items are well-defined
ž Items
added to Product Backlog, not Sprint
Backlog
ž Important to have one agreed-upon list per product
ž Viewable by everyone
Steve Barr
10. ž Better name would be “Iteration” or “Increment”
ž Period from 1 week to 1 month when work is done
• Sprint duration should be as long as you can keep change out
ž Time allocated to the Sprint protected from other tasks
• Urgent tasks can be added to top of Product Backlog or Sprint
can be cancelled
ž Has a Goal describing Sprint
ž Estimates tend to be far off for first 3-4 Sprints
ž Produces working iteration of product
Steve Barr
11. ž Describes Sprint in general terms
ž If
Sprint is likely to not deliver all planned
functionality, deliverables may be
renegotiated to try to still meet Sprint Goal
Steve Barr
12. ž List
of tasks based on items from Product
Backlog that team will try to complete in
Sprint
ž Taskshave time estimates (usually 4-16
hours each) and team members assigned
ž Tasks may be added/changed/removed
only through negotiation
Steve Barr
13. ž Provides visualization of how Sprint is
going
ž Shows number of hours remaining for
Sprint to complete tasks
ž Should
be updated by team members
every day
• Hours removed as progress on tasks made
• Hours added as problems found
Steve Barr
14. ž Single
individual who controls the Product
Backlog
• Makes final decision on what makes it on and
priority of items
ž Collaborates
with Scrum Master and Team
on which tasks to tackle during a Sprint
and adjustments to Sprint Backlog
Steve Barr
15. ž Runs the Daily Scrum
ž Empoweredto remove obstacles blocking
team from making progress
ž WatchesSprint for problems and works
with team to resolve them
ž Keeps
track of Sprint Backlog, Completed
Features, and Burndown Chart
Steve Barr
16. ž Cross-disciplinary group working on Sprint
• Everyone who is committed to complete tasks during
Sprint
ž “Self-organizing”
ž Empowered to choose how to complete tasks
ž Defines tasks from Product Backlog items
• Estimates task effort
ž Provides information for Burndown Chart
Steve Barr
17. ž Product
Owner, Team, and Scrum Master meet
and choose Sprint Goal
ž Items
are chosen from the Product Backlog that
team could work on
• Team must be confident in ability to complete them
ž Teambreaks down each item into tasks and
estimates hours required
• Tasks added to the Sprint Backlog
ž Meetingcomplete when all hours in Sprint are
allocated
Steve Barr
18. ž Each team member says
• What they accomplished since the last Daily Scrum
• What they will try to accomplish today
• What is blocking them, if anything
ž ScrumMaster reports to team on efforts to
resolve blocking issues
ž Sprint Backlog and Burndown Chart updated
ž Other
discussions take place after Daily
Scrum is over
Steve Barr
19. ž Features
developed during the Sprint are
demonstrated from the main build
ž Everyone discusses what happened during
Sprint
ž Meetingprovides info to guide decisions
for the next Sprint
Steve Barr
20. ž Put new tasks, etc. on Product Backlog
ž One week Sprints
• If something new comes up, try to wait for Sprint completion
before working on it (put it in next Sprint if appropriate)
ž Select
number of tasks based on estimated hours
required and hours available
• Move those into Sprint Backlog
• Update Burndown Chart
ž At end of day
• Update Sprint Backlog if possible
• Update Burndown Chart
Steve Barr
21. Product Sprint Sprint Sprint
Backlog Planning Backlog
Meeting
Daily Scrum
Work
New Sprint Working
Requirements Review Iteration of
Meeting Product
Steve Barr
23. ž “Scrum demands the liberal application of common sense. If
the date can’t be met, reduce the functionality that will be
delivered. If the functionality can’t be reduced, reduce some
of the capabilities within the functionality. Increase the cost by
adding another team that Sprints in parallel, or bring in
experts. Scrum will put all of the information that is needed to
make these decisions at management’s fingertips.
Management then has to decide how to maximize business
value from the project. Management is primarily responsible
for doing anything possible to increase team productivity and
then adapting to the results. Management should live and
breathe to help the teams.”
• Agile Software Development with Scrum, Schwaber and Beedle
Steve Barr
24. ž Agile Software Development with Scrum, ISBN 0-13-067634-9
ž http://en.wikipedia.org/wiki/Scrum_%28development%29
ž http://www.torak.com/site/files/SCRUM%20An%20extension
%20pattern%20language%20for%20hyperproductive
%20software%20development.pdf
ž http://www.gamedevradio.net/?p=443
ž http://www.mountaingoatsoftware.com/scrum-a-presentation
ž http://search.dilbert.com/comic/Agile%20Programming :-)
Steve Barr