Professional Documents
Culture Documents
James O. Coplien
Gertrud Bjørnvig
Cesário Ramos
2013
“アジャイル開発とスクラム-顧客・技術・経営をつなぐ協調的ソフトウェエア開発”
Collaborative Software Development That Connects Customers, Engineers, and Management
Set your browser to make all (and only) dashes on one line:
--- ---- ---- ---- ---- ---- ---- ---- ---- ----
! Software
development is
mistake-prone
! Reviews are
insufficient
"Allow, but don’t
force people to
work in pairs
* * *
G&C 12
12 Online-ScrumOrgPatterns-1-Day-Master.key - 23 October 2020
Pattern forces
G&C
13 Online-ScrumOrgPatterns-1-Day-Master.key - 23 October 2020
Solution
Therefore:
Have a short event every day to replan the
SPRINT, focusing on the next 24 hours. Strictly
time-box the meeting to keep focus on the daily
plan and to avoid robbing time from
development.
Keep the meeting to 15 minutes or less. The team
manages itself to its timebox, and the
SCRUMMASTER will enforce this aspect of the
process if necessary. Many teams stand during the
meeting to emphasize the short duration of the
meeting.
G&C
14 Online-ScrumOrgPatterns-1-Day-Master.key - 23 October 2020
More Solution
In order to plan, you must know where you are, as well as
what problems are standing in the way. And you need a
complete picture. One approach is for each person in
the DEVELOPMENT TEAM to answer the following three
questions:
What did I do yesterday that helped the DEVELOPMENT
TEAM meet the SPRINT GOAL?
What will I do today to help the DEVELOPMENT
TEAM meet the SPRINT GOAL?
Do I see any impediment that hinders me or
the DEVELOPMENT TEAM from meeting the SPRINT GOAL?
* * *
G&C
15 Online-ScrumOrgPatterns-1-Day-Master.key - 23 October 2020
Resulting Context
The ethos of the Daily Scrum is a reality check: will we
meet the SPRINT GOAL? The result of the Daily Scrum is a
new daily plan grounded in reality, and generates a team
that is more prone to cooperate and that has a better
shared vision and understanding of what they are doing
together. The team becomes better attuned to the
landscape of impediments in which they are working.
The ritual of Daily Scrums helps a sense of team identity
emerge from a group of people. It brings them together to
refocus on their shared purpose and common identity. It
reinforces TEAM PRIDE. In some way, it is a daily version of
FACE-TO-FACE BEFORE WORKING REMOTELY.
G&C
16 Online-ScrumOrgPatterns-1-Day-Master.key - 23 October 2020
Pattern: A Definition
1. It’s something that you build (and an
instruction of how to build it)
G&C
17 Online-ScrumOrgPatterns-1-Day-Master.key - 23 October 2020
A pattern is:
One of a set of many patterns that work
together
G&C
19 Online-ScrumOrgPatterns-1-Day-Master.key - 23 October 2020
Examples from the Product
Organization Pattern Language
The Product
Organization is a whole
It has a form
G&C
21 Online-ScrumOrgPatterns-1-Day-Master.key - 23 October 2020
§ 34
SCRUM OF SCRUMS
… a SCRUM TEAM is working on a single product with
multiple DEVELOPMENT TEAMs. The DEVELOPMENT
TEAMs need to coordinate dependencies and shared
work. Dependencies that cannot be resolved within
individual teams are a shared challenge of all teams.
***
When multiple teams work independently of each
other they tend to focus myopically on their own
concerns and lose sight of any common goals.
Hierarchical control increases delays and reduces the responsiveness of the
teams and the wider organization to business and technology changes.
G&C
22 Online-ScrumOrgPatterns-1-Day-Master.key - 23 October 2020
§7
SCRUM TEAM
! Traditional development
segments work into
departments
! Departments create silos,
local optimization
"Create a team that
includes the business,
production and process
responsibilities
G&C
23 Online-ScrumOrgPatterns-1-Day-Master.key - 23 October 2020
PRODUCT OWNER § 11
... Scrum team members need a single, well formed, sequenced list
of PRODUCT BACKLOG ITEMS to help focus on delivering value.
Without this list the team may generate features that will never or
rarely be used (but need to be maintained), deliver features at the
wrong time (sub-optimizing revenue) or deliver nothing. The SCRUM
TEAM needs the backlog in a timely manner to support and
maximize the team’s velocity.
***
One person needs to be responsible for the PRODUCT BACKLOG.
This person needs deep domain knowledge, business insight,
understanding of product technology, technical dependencies,
and the authority to force rank the backlog to maximize
business value.…
Too many organizations try to put several bosses in charge of
charting product rollout. Sometimes they can't even agree what the
product is… customers can be made much more comfortable if a
person on the vendor side takes responsibility for up-front planning
and thinking. Lean says that it is important to line up the decisions
early on, so that the decisions are easy to make once the time
comes to make them.
A → B → D → C
A → B → C → D → F
A → E → F
§ 41 VALUE STREAM
§ 46 SPRINT
§ 54 PRODUCT BACKLOG
§ 63 ENABLING SPECIFICATION
§ 71 SPRINT GOAL
§ 72 SPRINT BACKLOG
§ 75 PRODUCTION EPISODE
§ 79 DEPENDENCIES FIRST
§ 84 RESPONSIVE DEPLOYMENT
§ 35 SPRINT REVIEW
§ 36 SPRINT RETROSPECTIVE
§ 93 GREATEST VALUE
§ 94 PRODUCT WAKE
30 Online-ScrumOrgPatterns-1-Day-Master.key - 23 October 2020
The Product
Organization Sequence
§ 1 THE SPIRIT OF THE GAME
§ 2 THE MIST
§ 5 BIRDS OF A FEATHER
§ 7 SCRUM TEAM
§ 11 PRODUCT OWNER
§ 14 DEVELOPMENT TEAM
§ 19 SCRUMMASTER
§ 24 SPRINT PLANNING
§ 25 SWARMING
§ 29 DAILY SCRUM
§ 32 EMERGENCY PROCEDURE
§ 34 SCRUM OF SCRUMS
§ 35 SPRINT REVIEW
§ 36 SPRINT RETROSPECTIVE
§ 37 METASCRUM
Therefore:
Focus maximum team effort on one item in the SPRINT BACKLOG and get it done as soon as
possible. Whoever takes this item is Captain of the team. Everyone must help the Captain if they
can and no one can interrupt the Captain. As soon as the Captain is Done, whoever takes
responsibility for the next priority backlog item is Captain.
Implementing this pattern moves the team toward one-piece continuous flow. Toyota demonstrated that
this optimizes production capacity…
G&C
32 Online-ScrumOrgPatterns-1-Day-Master.key - 23 October 2020
MINIMIZE HANDOFFS
$$$ ?
Widget Machine Whatzit Machine Wrapping & Shipping
96 94 100
33
33 Online-ScrumOrgPatterns-1-Day-Master.key - 23 October 2020
Pattern Languages
Consider again the three sequences:
A → B → D → C
A → B → C → D → F
A → E → F
Conway’s
Law Structure
Involve the Scrum
Managers Team
Fixed Development
MetaScrum Work Team
Swarming:
Emergency Development Small One-Piece Team
Procedure Partnership Red Continuous Pride
Phone
Flow
Illegitimus
Kaizen Oyatsu Non Sprint
Pulse Jinja Retrospective
Interruptus
Product
Pride
Happiness
Metric
35 Online-ScrumOrgPatterns-1-Day-Master.key - 23 October 2020
A pattern language
builds a “Whole”
The “Wholes” of Scrum
4. What “latent structures” exist, that beg to be made explicit and strengthened?
6. Find a pattern that best differentiates and strengthens the latent structure
8. The new structure is stronger, it strengthens both the larger structures of which it is a
part, and the smaller structures which it comprises
10. Test whether this is the simplest thing that can be done to move forward
Double-loop learning
Insights:
why
Knowledge and
Understanding
Identity:
Triple-loop learning
Values and
Change slowly
• How do you successfully pull backlog items into a Sprint? (YESTERDAY'S WEATHER)
• How do you deal with interruptions during the Sprint? (ILLEGITIMUS NON INTERRUPTUS)
• How do get defect free at the end of the Sprint? (GOOD HOUSEKEEPING)
• How do you get hyperproductive? (TEAMS THAT FINISH EARLY ACCELERATE FASTER)
Vision
Value Stream
Product
Roadmap
Set-Based
Design
Sprint
Product
Backlog
Refined
Product
Product
Backlog
Team
Sprint
Organizational
Sprint Pulse
Follow
the
The second
half of the
Backlog Item Moon
patterns:
Gradient Points PBI
the Value
Enabling Specialized Scrumming
Specification Velocities the
Scrum
Sprint
Backlog
Stream
Sprint Scrum Yesterday’s
Burndown Board Weather
Chart
Sprint
Dependencies Information Backlog Updated
First Radiator Item Velocity
Teams That
Developer-Ordered Finish Early Definition Responsive
Work Accelerate of Deployment
Plan Faster Done
High
Emergency Sprint Good Value Release
Procedure Goal Housekeeping First Range
Regular
Product
Increment
Sprint Sprint
Retrospective Review
Greatest Value
Product Wake
G&C
43 Online-ScrumOrgPatterns-1-Day-Master.key - 23 October 2020
§ 54
PRODUCT BACKLOG
! You can’t deliver
everything at once
! Delivery ordering is
much more subtle
than prioritization
"Create a delivery-
ordered list of the
smallest individual
units of delivery
G&C
44 Online-ScrumOrgPatterns-1-Day-Master.key - 23 October 2020
§ 63
ENABLING SPECIFICATION
• Unexplored requirements cause unpleasant
surprises.
• Therefore, establish a
shared baseline and
range to calibrate
estimates across teams
Sprint
Help Desk, etc
Backlog
Bug or Emergent
Requirement
Product
Backlog
1. The team creates a buffer for unexpected items based on historical data.
For example, 30% of the team's work on the average is caused by
unplanned work coming into the Sprint unexpectedly. If the team velocity
averages 60 points, 20 points will be reserved for the interrupt buffer.
3. If the buffer starts to overflow, i.e. the Product Owner puts one point more
than 20 points into the Sprint, the team must automatically abort,
the Sprint must be re-planned, and management is notified that dates will
slip.
Bug or Emergent
Requirement
R T
Backlog
O
Sized at Sprint Planning
to the team’s historic
velocity, e.g. 60
B
vingummibamser
Product
Backlog
A ?
Normally sized to
accommodate 76.2%
of emergent
requirements: e.g., 20
vingummibamser
G&C 52 Buffer
52 Online-ScrumOrgPatterns-1-Day-Master.key - 23 October 2020
4. Applying Scrum
Patterns Day to Day
A form of research
• Try this: