Beruflich Dokumente
Kultur Dokumente
Henrik Kniberg
Agile/Lean coach
www.crisp.se
Board of
directors
henrik.kniberg@crisp.se
070 4925284
Henrik Kniberg
Scrum in a
nutshell
Henrik Kniberg
Scrum in a nutshell
Split your product
Large group spending a long time building a huge thing
Small team spending a little time building a small thing
... but integrating regularly to see the whole
Optimize process
$$$
Split time
January
April
Henrik Kniberg
Typical Scrumboard
Henrik Kniberg
the unofficial
Core Scrum
Scrum Checklist
Henrik Kniberg
Recommended but not always necessary
Most of these will usually be needed, but not always all of them. Experiment!
Team has all skills needed to
bring backlog items to Done
Team members not locked into
specific roles
PO is empowered to
prioritize
PO has knowledge to
prioritize
PO understands purpose
of all backlog items
Highly visible
PO participates
Updated daily
PO uses velocity f or
release planning
Escalated to management
when team cant solve
Timeboxed iterations
Demo happens af ter every
sprint
Shows working, tested
software
Feedback received f rom
stakeholders & PO
Have Definition of Done (DoD)
Henrik Kniberg
Velocity is measured
Scaling
Positive indicators
Leading indicators of a
good Scrum implementation.
PO = Product owner SM = Scrum Master PBL = Product Backlog DoD = Definition of Done
http://www.crisp.se/scrum/checklist | Version 2.1 (2009-08-17)
Kanban in a
nutshell
Henrik Kniberg
Todo
orem ipsum dolor
sit amet, co nse
ctetur
orem ipsum dolor
sit amet, co nse
ctetur orem ipsum dolor
sit amet, co nse
ctetur
Russel Ackoff
Team 2
Done
Doing
orem ipsum dolor
sit amet, co nse
ctetur
orem ipsum dolor
sit amet, co nse
ctetur
orem ipsum dolor
sit amet, co nse
ctetur
Henrik Kniberg
Todo
this week
Doing
Done
this week
20 days
3 days
8
Henrik Kniberg
Kanban
Visual Card
Signaling system
Visual
Limited in supply
Henrik Kniberg
10
Darn. Forgot to
limit.
Henrik Kniberg
11
Kanban @ Toyota
Buyer
Consume
Detach
Supplier
Receive
Ship
Allocate
Manufacture
Henrik Kniberg
Taiichi Ohno
Father of the
Toyota Production System
12
Kanban in SW development
Visualize the workflow
Limit WIP (work in progress)
Measure & optimize flow
Explicit policies (definition of Done, WIP limits, etc)
Backlog
5
Dev
3
Pioneered by
David Anderson
in 2004
FLOW
Henrik Kniberg
12 days
13
Henrik Kniberg
14
Feature
team 2
Feature
team 2
Scrum
Scrum
Scrum
Scrum step 2
Feature
team 1
Scrum
Feature
team 2
Scrum
Feature
team 2
Scrum
Henrik Kniberg
Scrum + Kanban
Feature
team 1
Scrum
Feature
team 2
Scrum
Feature
team 2
Scrum
15
Compare for
understanding,
not judgement
Henrik Kniberg
16
Thinking tools
Tool
anything used as a means of
accomplishing a task or purpose.
- dictionary.com
Lean
Physical tools
Agile
Systems Thinking
Theory of Constraints
Toolkits
a.k.a. frameworks
RUP
Scrum
XP
Kanban
Process tools
Dev
3
Test
Release
Done!
A
K
FLOW
Henrik Kniberg
17
Never blame
the tool!
18
Henrik Kniberg
18
More adaptive
RUP
(120+)
Architecture Reviewer
Business Designer
Business-Model Reviewer
Business-Process Analyst
Capsule Designer
Change Control Manager
Code Reviewer
Configuration Manager
Course Developer
Database Designer
Deployment Manager
Design Reviewer
Designer
Graphic Artist
Implementer
Integrator
Process Engineer
Project Manager
Project Reviewer
Requirements Reviewer
Requirements Specifier
Software Architect
Stakeholder
System Administrator
System Analyst
Technical Writer
Test Analyst
Test Designer
Test Manager
Tester
Tool Specialist
User-Interface Designer
Architectural analysis
Assess Viability of architectural
proof-of-concept
Capsule design
Class design
Construct architectural proof-ofconcept
Database design
Describe distribution
Describe the run-time architecture
Design test packages and classes
Develop design guidelines
Develop programming guidelines
Identify design elements
Identify design mechanisms
Incorporate design elements
Prioritize use cases
Review the architecture
Review the design
Structure the implementation
model
Subsystem design
Use-case analysis
Use-case design
Analysis model
Architectural proof-of-concept
Bill of materials
Business architecture document
Business case
Business glossary
Business modeling guidelines
Business object model
Business rules
Business use case
Henrik Kniberg
Scrum
(9)
XP
(13)
Whole team
Coding standard
TDD
Collective ownership
Customer tests
Pair programming
Refactoring
Planning game
Continuous integration
Simple design
Sustainable pace
Metaphor
Small releases
Scrum Master
Product Owner
Team
Sprint planning meeting
Daily Scrum
Sprint review
Product backlogt
Sprint backlog
BUrndown chart
Kanban
(3)
Do Whatever
(0)
19
Kanban
XP
Scrum
Henrik Kniberg
20
One day in
Kanban land
Henrik Kniberg
21
Henrik Kniberg
22
Next
Backlog
A
Dev
In production :o)
Ongoing
Done
G
C
F
H
J
M
D
I
L
K
Henrik Kniberg
23
Next
Backlog
Ongoing
Done
C
F
H
M
In production :o)
Dev
D
I
L
K
Henrik Kniberg
24
Backlog
Ongoing
Done
C
F
H
M
In production :o)
Dev
Next
D
I
L
K
Henrik Kniberg
25
Dev
Next
Backlog
Ongoing
In production :o)
Done
A
F
H
J
M
I
L
K
Henrik Kniberg
26
Dev
Next
Backlog
In production :o)
Ongoing
Done
G
D
A
B
F
H
J
M
I
L
K
Henrik Kniberg
27
Next
Backlog
PO
A
Dev
In production :o)
Ongoing
Done
G
C
F
H
J
M
D
I
L
K
Henrik Kniberg
28
Next
Backlog
PO
Ongoing
Done
C
F
H
M
In production :o)
Dev
D
I
L
K
Henrik Kniberg
29
Dev
Next
Backlog
PO
G
In production :o)
Ongoing
Done
F
H
J
M
I
L
K
Henrik Kniberg
30
Dev
Next
Backlog
PO
Ongoing
C
G
D
In production :o)
Done
A
F
H
J
M
I
L
K
Henrik Kniberg
31
Backlog
PO
G
D
F
H
J
M
Dev
Next
In production :o)
Ongoing
Done
!?
I
L
K
Henrik Kniberg
32
Backlog
PO
F
H
M
In production :o)
Ongoing
!?
Dev
Nexet
Done
A
I
L
K
Henrik Kniberg
33
Next
Backlog
PO
F
H
M
In production :o)
Ongoing
Done
A
Dev
I
L
K
Henrik Kniberg
34
Next
Backlog
PO
Dev
In production :o)
Ongoing
Done
A
G
D
F
H
J
M
B
C
I
L
K
Henrik Kniberg
35
Backlog
PO
In production :o)
Ongoing
Done
A
B
Dev
Next
C
I
L
K
Henrik Kniberg
36
Kanban
compared to
Scrum
Henrik Kniberg
37
Henrik Kniberg
Product
owner
Team
Scrum
Master
PO
SM
38
Capacity
Lead time
Quality
Predictability
(aka velocity)
Little planning
Lots of planning
Henrik Kniberg
Short iterations
39
Kanban www.crisp.se/kanban/example
kick-start example
Henrik Kniberg
Next
2
Analysis
3
Development
3
Ongoing
Ongoing Done
2009-09-01
2009-08-20
orem olor sit amet, co
nse ctetur adi pis cing
elit nisl
2009-08-29
orem ipsum dolor sit
amet, nse ctetur adi
pis cing elit nisl
2009-08-25
orem ipsum dolor sit
ctetur adi pis cing elit
nisl
Definition of Done:
Goal is clear
First tasks defined
Story split (if necessary)
Feature / story
Date when
added to board
2009-09-30
(description)
Done
2009-09-02
2009-08-20
Ongoing
orem ipsum dolor sit
amet, adi pis cing elit
nisl
xxxx kjd
orem ipsumdjdolor
d xxx
sit amet, co nse
ctetur
Acceptance Prod
2
2009-08-27
2009-09-08
2009-08-30
orem ipsum
dolor sit
orem ipsum dolor
amet,
co nse
amet, co sit
nse
ctetur
ctetur
adi pis cing
elit nisl
Done
version 1.2
2009-11-16
Definition of Done:
Code clean & checked in on trunk
Integrated & regression tested
Running on UAT environment
Hard deadline
(if applicable)
= priority
= panic
Who is analyzing /
testing right now
Definition of Done:
Customer accepted
Ready for production
Task / defect
(description)
=task
(description)
Why
(description)
(description)
(description)
=defect
Panicfeatures
Priority features
Hard deadline features
= completed
= blocked
= who is doing
this right now
Oldest features
week 1
week 3
week 4
Sprint 1
Kanban team 2
week 2
week 5
week 6
week 7
week 8
Sprint 2
Review
(release?)
Retrospective
week 1
week 2
week 3
week 4
week 5
week 6
week 7
week 8
week 1
week 2
week 3
week 4
week 5
week 6
week 7
week 8
Retrospectives (4w)
Planning cadence (2w)
Release cadence (1w)
Kanban team 3
Retrospectives (4w)
Planning (on demand)
Release (on demand)
Henrik Kniberg
41
Sprint 1
Sprint 2
Sprint 3
Sprint 4
Kanban
Long running task
WIP limit = 3
Henrik Kniberg
42
Scrum board
To do
To do
A
B
B
C
D
FLOW
Henrik Kniberg
FLOW
43
Id like to have E!
PO
Wait until a To Do slot
becomes available!
Or swap out C or D!
Kanban
Scrum
To do
To do
2
FLOW
FLOW
Policies
Henrik Kniberg
44
Mid-sprint
Kanban
Any day
Henrik Kniberg
45
Cross-functional
team
Henrik Kniberg
Kanban team 2
Specialist Cross-functional
team
Specialist
team
46
Design
Fold
Tape
Trim
Draw
Cross-functional
team
Henrik Kniberg
47
V= 8
V= 7
2
2
Sprint 1
Henrik Kniberg
2
3
1
Sprint 2
V= 9
1
3
1
2
2
2
Sprint 3
48
Estimation
Typical
Kanban
Tasks
Features
S
Hours?
M
Days?
Weeks?
1sp 2sp
5sp
1d
3d
Henrik Kniberg
6d
2d
1d
Typical
Scrum
8h
12h
49
Scrum example 1
Green Product
Green team
Scrum example 2
All products
Cross-product team
Henrik Kniberg
Color-coded tasks
Yellow Product
Yellow team
Scrum example 3
All products
Cross-product team
Kanban example 2
Color-coded swimlanes
50
Minor difference:
Henrik Kniberg
51
Minor difference:
Kanban:
Product backlog is optional
Changes to product backlog
take effect as soon as
capacity becomes available
Any prioritization scheme can
be used. For example:
Take any item
Always take the top item
Always take the oldest item
20% on maintainance items,
80% on new features
Split capacity evenly between
product A and product B
Always take red items first
Policies
Henrik Kniberg
52
Minor difference:
Cumulative Flow
Henrik Kniberg
53
Final points
Henrik Kniberg
54
www.crisp.se/henrik.kniberg/kanban-vs-scrum.pdf
Comparison summary
Similarities
Both are Lean and Agile
Both based on pull scheduling
Both limit WIP
Both use transparency to drive process
improvement
Both focus on delivering releasable
software early and often
Both are based on self-organizing teams
Both require breaking the work into
pieces
In both cases the release plan is
continuously optimized based on
empirical data (velocity / lead time)
Henrik Kniberg
Differences
Scrum
Kanban
Commitment optional.
Free download
http://www.infoq.com/minibooks/kanban-scrum-minibook
Henrik Kniberg
56
Dont be dogmatic
Go away! Dont talk to us!
Were in a Sprint.
Come back
in 3 weeks.
Henrik Kniberg
Though Shalt
Limit WIP
57
Software
craftsmanship
Retrospectives
As a buyer
I want to save my shopping cart
so that I can continue shopping
later
Henrik Kniberg
58
Take-away points
1. Know your goal
Hint: Agile/Lean/Kanban/Scrum isnt it.
2. Never blame the tool
Tools dont fail or succeed. People do.
There is no such thing as a good or bad tool. Only good
or bad decisions about when, where, how, and why to
use which tool.
3. Dont limit yourself to one tool
Kanban coaching workshop
with David Anderson
Learn as many as possible.
Compare for understanding,
March 29-31, Stockholm
not judgement.
Limited to 8 participants
www.crisp.se/utbildning
4. Experiment & enjoy the ride
Dont worry about getting it right from start.
The only real failure is the failure to learn from failure.
Henrik Kniberg
59
Henrik Kniberg
60