You are on page 1of 20

Agile Software Development

with Scrum

Shveta Mehtani
shveta@acm.org
Lightweight Processes Are “Hot”

• Small teams

• Incremental development

• Time-boxed scheduling

• Adaptive and agile.


SCRUM - How it became
• First presented to OMG in 1995 by shared
concerns between Advanced Development
Methods (ADM) and VMARK Software
(VMARK).
• ADM produces process automation software
• VMARK produces object-oriented software development
environments
• Both companies were concerned over the lack of
breakthrough productivity being reported in object-oriented
development projects

• Not an acronym, Rugby team uses SCRUM


meetings
– “A scrum is a team pack in Rugby, everybody in the pack acts
together with everyone else to move the ball down the field”
The Philosophy of SCRUM

• The core of the Scrum approach is the belief that


most systems development has the wrong
philosophical basis.
- The stated, accepted philosophy is that systems development
process is a well understood approach that can be planned,
estimated, and successfully completed.

• Scrum defines the systems development


process as a loose set of activities that combines
known, workable tools and techniques with the
best that a development team can devise to
build systems
What is SCRUM ?

• Scrum is an agile, lightweight process to manage and


control development work.

• Scrum is a wrapper for existing engineering practices.

• Scrum is a team-based approach to iteratively,


incrementally develop systems and products when
requirements are rapidly changing

• Scrum is a process that controls the chaos of conflicting


interests and needs.
What is SCRUM ?

• Scrum is a way to improve communications and maximize


co-operation.

• Scrum is a way to detect and cause the removal of anything


that gets in the way of developing and delivering products.

• Scrum is a way to maximize productivity.

• Scrum is scalable from single projects to entire


organizations.
What is SCRUM ?

• Scrum has controlled and organized development and


implementation for multiple interrelated products and
projects with over a thousand developers and
implementers.

• Scrum is a pattern.
How Does Scrum Work?

• Small teams (< 10 people)

• A series of Sprints (1 - 4 weeks)

• Visible, usable increments

• Time-boxed
Sprint Rules

• Total focus—no unwanted diversion

• NO interruptions/changes from the outside

• New work may be uncovered by the team

• Very XP-ish
What Happens During a Sprint?

• Frequent, short Scrum Meetings

• Each team produces a visible, usable increment

• Each increment builds on prior increments

• Clearly defined deliverables and responsibilities

• Each team member buys into the assignment


What’s a Scrum Meeting?

• Short (15 - 30 min) frequent meetings, facilitated


by the ScrumMaster

• All team members attend—even teleworkers

• One activity -- ScrumMaster asks each attendee


3 questions
What Are The 3 Questions?

1. What have you completed (relative to the Backlog) since


the last Scrum meeting?

2. What got in your way of completing this work?

3. What will you do between now and the next Scrum


meeting?
At the End of a Sprint?

• Status meeting with all stakeholders.


• Increments are delivered.
• Surprises are reported.
• ANYTHING can be changed, work can be added, eliminated,
re-prioritized.
• New estimates and team assignments are made for the next
Sprint.
• The project can be cancelled.

“Experience from earlier increments allows better estimates and


planning as project progresses.It's always easier to estimate shorter
development periods”
Benefits?

• Requirements churn is managed—not avoided!

• Market input is incorporated—not eliminated!

• Customers see on-time delivery of increments, which


refines requirements and improves input.

• Relationships with customers and marketing develops,


trust builds, knowledge grows.
How to Learn Using SCRUM

• Scrum and other lightweight processes are incremental.

• When an increment is delivered, there is a natural pause


in team activity.

• Many organizations hold a postmortem at the end of the


final increment—this is not enough!

• We would have a much better change of improving the


health of the project and improving the process if we did
periodic checkups!
Checkups

• Frequent checkups enable us to learn now while there is


time to take corrective action and improve the process.

• This kind of process improvement is timely and requires


minimal effort from the team and the process owners.

• Waiting until the end of a project: takes longer, people


forget, team membership changes.
Who does this?

• A small team of process owners must ensure that the


whole organization learns.

• Without process owners to (1) document and (2) share


knowledge it will be lost.

• Process improvement, pattern mining, and knowledge


management require resources.
Project Management Patterns

• Patterns “mined” from checkups/postmortems.

• Based on comments from participants.

• Observed in at least three projects.

• Industry experience or research verifies solution.

• Patterns are living and grow based on


experience with use.
More Information?

• www.controlchaos.com/

• Agile Software Development with Scrum, by Ken


Schwaber and Mike Beedle, published by Prentice
Hall

• http://www.jeffsutherland.org/scrum/index.html

You might also like