Professional Documents
Culture Documents
Common Sense
Jim Coplien & Jens stergaard
Scrum Training Institute
cope@gertrudandcope.com
jeos12@gmail.com
G&C
About this Course
This course is:
Much the same as most ScrumMaster
certication courses
The start of your journey, or a good
waypoint on a journey that has already
begun
This seminar materials are Copyright 2008, 2009 by James O. Coplien. All
rights reserved. Permission granted to reproduce these materials for non-
instructional use, provided the source is cited and that this Copyright notice
appears.
Many thanks to Jens stergaard, whose original SCM deck inspired much of the
content here. Jens! deck in turn gives homage to Ken Schwaber, whose contribution
is also gratefully acknowledged. Likewise, some of Jeff Sutherland!s own materials
have made it into this deck.
Certied Scrum Trainer is a certication mark, and Scrum AllianceSM is a service
mark, of
Scrum Alliance, Inc. Any unauthorized use is strictly prohibited.
Welcome to Scrum! This course is a two-day Scrum immersion. It is patterned after
many other ScrumMaster Certication (CSM) courses and covers the topics
necessary for ScrumMaster certication. Though this is a certication course, a
course alone cannot make you an effective ScrumMaster: it requires the right
personal touch and experience. Certication should be a gate that qualies one to
practice or to excellence; no such gate exists for the core notions of
ScrumMastering.
However, well-controlled studies at Systematic in Denmark show that there is value
in exactly the kind of training that you will receive in this course. Today starts a
journey for you. Let!s go!
G&C
A quick lexicon
English Danish Hebrew
impediment forhindring !"#$%&
agile
adrt eller
smidig
'()*'
G&C
Course Outline
0. What is Scrum?
1. Scrum History
2. Scrum Theory, Concepts, Practices
3. Release Planning
4. Production and Sprints
5. Velocity Game
6. Overcoming Impediments
7. Management, Distribution and Scaling
8. Engineering Tools and Practices
I spend quite a bit of time on history in this course, because understanding the
foundations makes it easier to understand some of the techniques. But most of the
course will focus on two areas: Scrum Theory, Concepts and Practices, and
Production and Sprints. The theory is important for you to understand why you do
what you do: Scrum is rst and foremost about thinking: inspecting and adapting.
The Production and Sprints are important because the Agile Manifesto values
working software.
We also talk about Release Planning and the Product Owner, but this is not a
product owner course.
The Velocity Game is graduation: an intense learning exercise where you will use
many of the tools you learn over the next two days. At the end we cover
miscellaneous but important topics: process improvement, and management issues
including distribution and scaling. Finally, we!ll look at the engineering practices,
and warn about some that recent research calls into doubt.
G&C
0. What is Scrum?
It is not a method
It does not tell you what to do, nor how
It is not about software it works for any
endeavor concerned about building a product
It is a product management framework that
you ll in, that allows you to inspect and adapt
It promises only that the team will work on
the most important things rst
It tends to be fun
G&C
1. Scrum History
In fact, Agile is old 1950s, 1960s in
software
We focus on recent history since about 1990
The Pattern / OO / Agile community
Agile Manifesto
Manufacturing Inuences
Lean
Scrum is not a method. It promises only that the team is always working on the
most important thing.
Scrum is only a framework. In most cases it doesn!t tell you what to do, nor how to
do things. It is a project management framework that you ll in, within which you
inspect and adapt to optimize ROI.
Scrum principles apply to companies ranging from automobile manufacturing to
churches. Here we will focus on the software perspective on Scrum.
Much software practice was Agile before Agile was cool. The Hacker culture at MIT
in the 1960s was practicing much of what we would call Agile today. Agile isn!t so
much something new as it is a stripping off of bad management practices that have
strangled software over the years.
Here, we focus on the past decade or two of software development history and
sprinkle in insights that came from manufacturing and Lean. The Agile Manifesto is
a key landmark in this progression.
G&C
A Bit of History
SCRUM
Easel, 1993
Pasteur Project
(1990-3)
Hillside: Org
Patterns
(aug. 1993)
XP
(1997?) Beck: Organizational
patterns are one of the
three influences on XP
Sutherland:
Dr. Dobbs article
was the final key
Cockburn
Patterns
(1995-6)
Highsmith:
Agile
(feb. 2001)
Dr. Dobb;s
Article,
okt. 1994
PLoP1: Org
Patterns
(aug. 1994)
QPW Study
maj 1993
WYCASH Way,
Borland
1991-2
Agile
Manifesto
aug. 2001
Takeuchi
The New New
Development
Game, 1986
G&C
The Agile Manifesto
We are uncovering better ways of developing software by
doing it and helping others do it. Through this work we have
come to value:
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
That is, while there is value in the items on the right, we value
the items on the left more.
James Grenning
Jim Highsmith
Andrew Hunt
Ron Jeffries
Jon Kern
Brian Marick
Robert Cecil Martin
Steve Mellor
Ken Schwaber
Jeff Sutherland
Dave Thomas
Kent Beck
Mike Beedle
Arie van Bennekun
Alistair Cockburn
Ward Cunningham
Martin Fowler
2001, the above authors
this declaration may be freely copied in any form,
but only in its entirety through this notice.
Here is a personal perspective on Agile historybut a personal history that has
been ratied by Alistair Cockburn, Jeff Sutherland and others.
Agile is old. Many people were Agile before Agile was cool, adhering to its values
back in the 1950s and 1960s. As software became a management nightmare
managers used more and more approaches with roots in manufacturing line
management and applied them to software. Agile is trying to strip those off and
return us to the good old days.
Agile is not about software; its roots are in the Lean movement in Honda and Toyota
in Japan, and in a management paper by Takeuchi rooted in Honda!s manufacturing
culture. Software started articulating its use of these practices, and their
importance, in the 1990s. Ward Cunningham!s company Wycash, which did
nancial software, was one of the early arrivals.
Jim Coplien started an empirical research project at Bell Labs in connection with
their ISO 9000 improvement effort. After studying 120 organizations and ten years
later, it would culminate in the Organizational Patterns. Some of its early fruits were
a Dr. Dobb!s magazine article on practice at Borland, which to this day sets the
standard for Agile development.
Most of you have seen the Agile Manifesto. It is a brilliant document, and we let it
speak for itself here. Let me ask you a couple of things about the Manifesto:
What does it say about iteration?
What does it say about customer satisfaction with the product?
What new things does it tell you to do that you are not already doing?
What are the consequences of using processes, tools, documentation, contracts,
and plans?
You get the idea. The Manifesto is a framework for thinking about what you value; it
is not a framework that you can ll in according to your needs.
It is nonetheless a rm starting point for Scrumwhich itself is a framework that
guides you and you can ll in. However, don!t leave your brains behind: you will
need your wits just as much as a Scrum practitioner as an Agile fan.
G&C
Origins of Scrum
9
The New, New
Product
Development Game*
Borland QPW
Iterative,
Incremental
Development,
Timeboxes
Smalltalk Engineering Tools
Scrum
*Harvard Business Review, Jan. 1986, Takeuchi and Nonaka
G&C
Toyota Motor
Manufacturing
1. As an American company, contribute to the
economic growth of the community and the
United States.
2. As an independent company, contribute to the
stability and well-being of team members.
3. As a Toyota group company, contribute to the
overall growth of Toyota by adding value to
our customers.
This is how things came together within Easel. They used some Smalltalk
engineering tools. This came together in 1993.
The rst Scrum took place at the Easel corporation in 1993, some four years before
XP would appear. The foundations of Scrum include the paper by Hirotaka Takeuchi
and Ikujiro Nonaka in Harvard Business Review that talked about issues related to
knowledge management. Lean principles are also a major foundation, as are
Iterative and Incremental development and time boxing.
Easel used a Smalltalk tool set. All of this, combined with the concept of morning
Scrums that came from the Borland Quattro Pro for Windows Project, cooked
together into Scrum.
Toyota!s North America Mission. Gets to some of the values of Scrum. Most
companies would say: To be the most protable. The heart of Scrum is about
people, not about technology.
What does your company mission say?
G&C
Lean
Reduce waste! How?
Dont let mistakes propagate into the
process
Find problems early
Dont build something for which there isnt
a customer
Minimize on-hand inventory: optimize
material ow
G&C
History of Lean
Originally, Toyoda looms
Popularized in Toyota car manufacturing
(esp. the Prius line)
Also draws on Taylors application of Scientic
Method to manufacturing (1911)
Lean isn!t so much about minimalism as it is about being as efcient as possible by
reducing waste, eliminating inconsistencies in systems, and reducing stress. How
can we achieve these goals?
By catching errors before they propagate into the process where they do more
harm
By nding problems early, reducing the amount of work to undo them, and limiting
their scope of impact
By not wasting work building something for which there is no customer
By avoiding inventory-building: optimizing the ow so there is no build-up or
bunching along the way, and the ow is smooth
Scrum draws heavily on Lean principles
Lean dates back to Kiichiro Toyoda!s ideas for just-in-time delivery in his Japanese
loom company. As the company moved into automobiles later in its history, Toyoda!s
ideas would be rened to encompass what we now know as the Kaizen (continuous
process improvement) that was a large part of Japanese automobile excellence in
the 1970s. The ideas also have roots in Taylor!s ideas.
G&C
Lean: Ba / Mudha Mura
Muri
Source: Taiichi Ohno, Executive Vice President of Toyota
The Three Ms of inefciency
Muda: waste
Mura: inconsistencies
Muri: unharmonizing strain, disruptions in ow
Characteristics of Kaizen (continuous improvement) management
philosophy
Solution: communication (Kanban) and problem isolation (Andon)
The Andon cord
and the Andon
Board at Toyota
G&C
Muda Mura Muri in Scrum
The Andon Board
Kaizen: learn by doing
We do not master plan but
inspect and adapt
Muda (ichi)
No time-worked sheets, no
write-only documentation, no
shelfware
Mura (ni)
Short feedback loops to ensure
everyone is on the same page
Muri (san) Things are done when they are done;
no date or time itself denes DONE.
Focus on teams, not individuals, for
accountability and improvement.
Smooth out ow.
Lean concepts have their roots in the Toyoda company that made looms: just-in-
time delivery. But during the War, Japan became inefcient and in 1945, the Toyota
car company was stressed to the limit. Kiichiro Toyoda!s Just-In-Time system had
collapsed.
Taiichi Ohno was running Toyota!s nal assembly activity at the time, and it was his
Muda-Mura-Muri system that again brought prosperity to the lines. This was a form
of Kaizenan orientation to continuous process improvement.
His means to xing these problems? Communication (Kanban) and problem
isolation (Andon, using factory-wide Andon boards)
Lean is a conscious foundation of Scrum. The Andon board that opens project
status to the whole enterprise nds its counterpart in Task Boards. These are not a
way to do master planning but a way to deal with problems in real time as they arise
Kaizen. Scrum eliminates Muda (waste) by eliminating useless artefacts. It
eliminates Mura (inconsistencies) using short feedback loops. It addresses Muri by
driving towards certainty: done means done, and there is no tension that can arise
by putting different team members on different levels.
G&C
The result: Ba
Creative ow of innovation
Without inefciency, you get:
Process Improvement
Observation
Use of new Paradigms
Short time
Zero investment
Human Development
Prots & Savings
The system is a system, not a collection of individual, de-coupled
activities
Ba comes from:
Kanban: a framework for effective communication
Total elimination of mura, muri, muda
G&C
A Short History of XP
From: Kent Beck
To: Jeff Sutherland <jsutherland>
Reply: 70761.1216@compuserve.com
Date: Mon, 15 May 1995 18:01:15 -0400 (EDT)
Subj: HBR paper
_________________________
Is there a good place to get reprints of the SCRUM
paper from HBR? I've written patterns for something
very similar and I want to make sure I steal as many
ideas as possible.
Kent
This Kaizen approach of eliminating muda / mura muri leads to an emergent
propery called Ba. Ba is a kind of emergent energy that arises from perfect
harmony. The main drivers behind Ba are communication and the fact that systems
thinking comes to bear.
XP arrived late in the Agile story, in about 1997. It pretended to be a novel
integration of parts that t curiously well together, but was never proven to be such.
In fact, XP has rarely offers homage to any of its sources but changes allegiance
when it does so. In the proceedings of the fourth XP and Agile conference in 2003,
Beck ascribes XP to foundations provided by Coplien and Cunningham Coplien!s
contributions being the Organizational Patterns which, at the time, Beck discounted
as irrelevant.
G&C
Another short History of
XP
2. Scrum Theory,
Concepts, Practices
Motivation and basics of Scrum and Agile
Scrum as a viable framework
Scrum as 3 roles, 3 meetings, and 3 lists
Time Boxing
Poker Planning
Source: Fraser, Steven, Kent Beck, Bill Caputo, Tim Mackinnon, James Newkirk
and Charlie Pool. Test Driven Development (TDD). In M. Marchesi and G. Succi,
eds., XP 2003, LNCS 2675, pp. 459462, 2003. Springer-Verlag, Berlin and
Heidelberg, 2003.
In this section we look at some basic foundations and building blocks of Scrum.
This material motivates Scrum from a process perspective, argues why it might be
useful, and describes its major components at a high level. Scrum can be quickly
described as comprising four roles (the canonical three plus the customer), four
meetings, and three lists. To these we add the crucial components of estimation and
time boxing, and that denes the major parts of Scrum.
G&C
Why Scrum?
Be careful about prediciting, particularly if it
involves the future Niels Bohr
Traditional process (waterfall, Microsoft
Project) depend on prediction over long
time scales
They guess wrong about what is needed
They miss the mark about when it will be
done
G&C
What is Agile?
Agile lays out a vision and then nurtures
project resources to do the best possible to
achieve the plan
Agile is the art of the possible
The Agile Heart is self-organization
Niels Bohr, the Danish scientist, is reported to have said that we should be careful
about predicting things, particularly if it involves the future. Traditional development
depends on prediction. The longer the interval being estimated, the less certain
uncertain durations will be.
Why? The main reason is emergent requirements. We in fact cannot predict
everything we need to do because new requirements will arise as a side effect of
development. That causes us to miss the mark about when we will be done.
By reducing the prediction targets to short intervals, we limit how far astray we can
go.
Agile: What is possible? in the direction of the user desire rather than what we
must do. The heart of Agile is self-organization. This leads to radical practices: no
pre-dened roles within the team; no manager within the sphere of development
process.
G&C
How does Agile work?
Frequent inspection and adaptation
Emergence of requirements, technology, and
team capabilities
Self-organization and adaptation in response
to what emerges using feedback
Incremental emergence
Dealing with reality, not internal artifacts;
abstraction is evil; God is in the details
Mutual coordination
G&C
Game: Self-Organization
A game to illustrate self-organization
We use frequent course corrections to avoid wasting time off-track. We also
recognize that we can!t master plan, but that new requirements and technologies
emerge as a result of design. Technology changesoften improvesover time,
and our team learns to learn or may occasionally lose a member. We deal with
emergence one incremental step at a time.
A single point of control creates a bottleneck and makes it impossible for every
team member to leverage his or her talents at every moment. So we self-organize,
and every team member takes part in adapting to the ever-changing environment,
coordinating with those around him or her to ensure the team moves forward in the
same direction.
Artifacts here means internal artifacts such as UML diagrams and specications.
We are lean. Artifacts usually have heavy inertia inertia stronger than that of the
software itself. It is difcult to be Agile while dragging artifacts around.
G&C
How do we support it?
Maximized Communication
Effective, regular (daily!) meetings
Collocation and true small-team dynamics
Time-boxing: give the team space and
uninterrupted time to do work
We expect the team only to do their best: it
is easier to ask forgiveness than ask
permission
G&C
The Glossy Brochure
Empirical management & control processes
Complex projects since 1990
Deliver business functionality in 30 days
Wraps existing engineering practices
Adaptable to large, distributed, and long
projects
CMMI Level 3 and ISO 9001 compliant
Very simple but very hard
Effective communication connects us with our environment so we nd opportunities
to react, and so we can quickly self-organize to draw on the resources around us to
rise to problems and opportunity. We have frequentdailyformal interactions;
both the frequency and regularity are key. Because communication costs go up
geometrically with team size, we keep teams small and focused.
Time boxing honors the market reality that customers like things on time, for many
suitable denitions of thing. We honor the team by allowing them to commit to a
delivery and giving them uninterrupted time to deliver.
Scrum doesn!t promise anything. We can!t promise a delivery date or any
functionality because of emergence. We can only promise that the team will try their
best, and that we give the team an environment that best optimizes their chances to
do their best. There is no failure; only feedback. For this perspective to work, the
customer must be on board to the Scrum approach.
In a nutshell, for managers: Scrum is an empirical approach based on frequent
measurement and feedback, rather than a method. It has been used on complex
projects since 1990 and has been used on a large scale in enterprises such as
Yahoo, which has about 150 Scrum teams. It has no limitations for long-duration
projects.
Because it is focused on incremental delivery, it channels work programs to deliver
early and often. A typical sprint is about 20 working days (30 calendar days) and
today most sprints are half that long.
Scrum is CMMI level 3 compliant and, with a manager role, aspires to be level 5
compliant. It has been successfully embedded in a CMMI level 5 project where it
doubled productivity and cut error rates in half.
Scrum is very simple to describe. We will now move into a simple description of
Scrum. Though easy to describe, it is in fact very hard to do: it requires focus and
discipline. There is no free lunch.
G&C
Scrum as Org Patterns
NAMED STABLE
BASES
TAKE NO
SMALL SLIPS
COMPLETION
HEADROOM
RECOMMITMENT
MEETING
WORK
QUEUE
INFORMAL
LABOR PLAN
PROGRAMMING
EPISODE
DEVELOPER CON-
TROLS PROCESS
SOMEONE ALWAYS
MAKES PROGRESS
INTERRUPTS
UNJAM BLOCKING
SIZE THE
ORGANIZATION
ENGAGE
CUSTOMERS
SURROGATE
CUSTOMER
SCENARIOS
DEFINE PROBLEM
FIREWALLS
SELF SELECTING
TEAM
UNITY OF
PURPOSE
TEAM
PRIDE
PATRON ROLE
HOLISTIC
DIVERSITY
ENGAGE
QUALITY
ASSURANCE
GROUP
VALIDATION
COMMUNITY
OF TRUST
FEW ROLES
PRODUCER
ROLES
PRODUCERS IN
THE MIDDLE
ORGANIZATION
FOLLOWS LOCATION
SHAPING CIRCULA-
TION REALMS
DISTRIBUTE
WORK EVENLY
RESPONSIBILITES
ENGAGE
MOVE
RESPONSIBILITIES
3 TO 7 HELPERS
PER ROLE
COUPLING
DECREASES
LATENCY
Scrum Broken Down
Three Roles Three Meetings Three Lists
Product Owner
ScrumMaster
Development
Team
Sprint Planning
Part 1 (release)
Sprint Planning
Part 2 (sprint)
Daily Scrum
Sprint Review
Product Backlog
Sprint Backlog
Impediment List
Scrum is, in fact, very complex! Here is a breakdown of Scrum into the
Organizational Patterns it comprises. This graph shows one set of paths to
implementing Scrum in a low-risk way, one organizational pattern at a time. These
patterns go to the deep structure of Scrum that make it work.
However, we can view Scrum from another perspective, which is closer to the
process perspective more commonly adopted by process formalists and managers.
That perspective is easier to understand but tends to hide the fact that Scrum is
hard. We!ll start with the simpler description so we have a shared model of
understanding and then will come back to some of the difcult points.
We can summarize the structure of Scrum as four roles (the Scrum dogma says
three, but we include the customer here), four meetings, and three lists. Most
properties of Scrum relate either to these, or to the concepts of estimation and time
boxing. Over the next few hours we will cover these areas in detail and you will
have most of the head knowledge about Agile that you need.
Product Owner
One person
Ensures:
clarify issues
Powerless, except: