SCRUM - overview

advertisement
SCRUM
John Drew
SCRUM - overview


Scrum is a project management discipline that has
evolved since the early 1990s to deliver software that
meets business needs within an environment of
complex and evolving requirements, innovative
technology and creative people.
Scrum provides a framework that can meet the needs
of modern software development projects to manage
changing and uncertain requirements. This is achieved
through iterative and incremental development with
frequent feedback.
SCRUM - overview


Unlike other iterative approaches such as the
Unified Process, the Scrum methodology is
light on prescribed ways of working,
production of artifacts and use of tools and
languages
Scrum encourages teams to be self-organizing
and empowered to do what is necessary to
deliver valuable business software
SCRUM - components

Product Backlog
–
–
–
–
The product backlog is an evolving, prioritized queue of
business and technical functionality that needs to be
developed into a system
It is a list of all features, functions, technologies,
enhancements and bug fixes that constitute the changes that
will be made to the product for future releases
Backlog originates from many sources. The most obvious
source is customer-generated requirements. However,
requirements can also come from marketing and sales, from
engineers or from customer support, who track bugs reported
from external users
The items in the product backlog are prioritized
SCRUM - components

Sprint
–
–
–
–
–
represents a development cycle in the Scrum world
A Sprint can be as short as a week or as long as 6 weeks.
However, Sprints are usually constrained to be no longer than
30 days
The team has complete control over the Sprint and over how
they will achieve the objectives of the Sprint
At the end of the Sprint, the team produces an increment
that builds on previous increments
After each Sprint, the project team meets with all
stakeholders, including high-level management, customers
and customer representatives
SCRUM - components

Sprint Planning Meeting
–
–
–
Each Sprint begins with a Sprint Planning Meeting in which
the development team meets with the Product Owner
(typically someone from a Marketing role or a key user in
internal development), management and the users to figure
out what functionality to build during the next Sprint
Usually, the items in the product backlog with the highest
priority are selected for the next sprint
The team then works by itself to figure out how it is going to
build this functionality into a product increment during the
Sprint
SCRUM - components

Scrum Master
–
–
–
–
–
a new management role introduced by Scrum
is responsible for ensuring that Scrum values, practices, and
rules are enacted and enforced
represents management and the development team to each
other
minimizes the amount of external interference that the team
experiences
identifies and remove any obstacles that are keeping the
development team from completing the Sprint
SCRUM - components

Daily Scrum
–
–
is the heart-and soul of Scrum
is a daily meeting of the Scrum team and Scrum
Master



same time and place each day
meeting should only last 15 – 30 minutes
each team member explains what he has accomplished
since the last meeting, what he is going to do before the
next meeting and what obstacles are in his way
SCRUM - process
SCRUM - benefits




Scrum is flexible in that it does not work off the “old
school” assumption that requirements should be
frozen before development begins
mitigates risks by addressing them early in the
development process
customer begins to see results very early in the
project
development team is able to participate in all phases
of the development process
SCRUM – usage guidelines


Scrum should be used when the development
team is fairly small, no more than 8-10 team
members
Scrum does not work well when the
development team is large and/or when the
development team is geographically
distributed
SCRUM – implementation success
factors



The key element in the Scrum process is
communication
An open seating arrangement, preferably with
workstations in the middle of the room, is
preferable as it accommodates and
encourages communication
The Scrum Master must be empowered to
remove obstacles that stand in the way of the
team making real progress
SCRUM - challenges


Getting the development team to take control
over the process
Retraining senior management to stop
thinking in a “waterfall” manner and start
thinking in a Scrum manner
SCRUM – key players

Jeff Sutherland
SCRUM – key players

Ken Schwaber
SCRUM – key players

Mike Beedle
SCRUM – market forecasts




There are not many case studies on Scrum
Difficult to assess its success or to estimate just how
many developers or firms are actually using Scrum
It is unlikely that Scrum will catch on in organizations
with large (>10) development teams because the
communication management becomes too difficult
It is likely that as the agile software development
“movement” gains momentum, the use of Scrum and
its principles will increase.
SCRUM - resources

Web sites
–
–
–

ControlChaos.com
Jeff Sutherland’s Scrum Log
Mountain Goat Software
Books
–
–
–
Agile Software Development with Scrum
Agile project Management with Scrum
Agile Modeling: Effective Practices for Extreme
Programming and the Unified Process
Download