Exploring kanban options - Crisp's Blogblog.crisp.se/mattiasskarin/files/slides/exploring...Mattias...
Transcript of Exploring kanban options - Crisp's Blogblog.crisp.se/mattiasskarin/files/slides/exploring...Mattias...
Mattias SkarinKanban / Lean coach
www.crisp.se
Exploring kanban optionsas a Scrum Team
March 3, 2011
2
Kanban
Signaling system
Visual
Limited in supply
Henrik Kniberg
2
看板”Visual Card”
3
The Kanban Formula
2011-03-05
Mattias Skarin 3
Y = [D (Tw+Tp) (1+a)] / AY = [D (Tw+Tp) ] / AY = [D (Tw+Tp) (1+a)] / A
Source: Kaneyoshi Kusunoki
4
Kanban in SW development
Backlog Dev Done
orem ipsum dolor sit amet, co nse
ctetur
orem ipsum dolor sit amet, co nse
cteturorem ipsum dolor sit amet, co nse
ctetur
orem ipsum dolor sit amet, co nse
ctetur
orem ipsum dolor sit amet, co nse
ctetur
UAT Deploy5 3 2 3
FLOW Avg lead time: days 12
orem ipsum dolor sit amet, co nse
ctetur
orem ipsum dolor sit amet, co nse
ctetur
orem ipsum dolor sit amet, co nse
ctetur
Visualize the workflow
Limit WIP (work in progress)
Measure & optimize flow
Use explicit policies (definition of Done, WIP limits, etc)
Pioneered byDavid Anderson
in 2004
• SOLID • Happy day • DoD!
5
A view on scrum
2011-03-05
Mattias Skarin 5
Flow
Cooperation modelContinuous improvement
Prioritize
.. we can choose to apply a standardized or optimized solution to our problem
6
Scrum cadences
2011-03-05
Mattias Skarin 6
Sprint Sprint
Release
Plan
Retro
7
Kanban cadences
2011-03-05
Mattias Skarin 7
Plan
Release
Kanban Dev Test Build Done!BL
Improve
8
More prescriptive More adaptive
Process tools
Henrik Kniberg
8
XP(13)
Scrum(9)
Kanban(4)
Do Whatever(0)
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-of-concept
• 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
• 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
• Visualize the workflow• Limit WIP
• Measure and optimize flow• Use explicit polices
Miyamoto Musashi17th century samurai
Do not develop an attachmentto any one weapon
or any one school of fighting
• Business use case realization• Business use-case model
• Business vision• Change request
• Configuration audit findings• Configuration management plan
• Data model• Deployment model• Deployment plan• Design guidelines
• Design model• Development case
• Development-organization assessment
• End-user support mateirla• Glossary
• Implementation model• Installation artifacts
• Integration build plan• Issues list
• Iteration assessment• Iteration plan
• Manual styleguide• Programming guidelines• Quality assurance plan• Reference architecture
• Release notes• Requirements attributes
• Requirementsmanagement plan
• Review record• Risk list
• Risk management plan• Software architecture
document• Software development
plan• Software requirements
specification• Stakeholder requests• Status assessment
• Supplementary business specification
• Supplementary specification• Target organization assessment
• Test automation architecture• Test cases
• Test environment configuration• Test evaluation summary
• Test guidelines• Test ideas list
• Test interface specification• Test plan• Test suite
• Tool guidelines• Training materials• Use case model
• Use case package• Use-case modeling guidelines
• Use-case realization• Use-case storyboard
• User-interface guidelines• User-interface prototype
• Vision• Work order
• Workload analysis model
Henrik Kniberg, 2009
10
Let’s take a walk..
2011-03-05
Mattias Skarin 10
Product backlog
Sprint planning
Sprint Demo Retrospective
Product Owner
Team
11
PRODUCT BACKLOG
The art of delivering value, without being sure
2011-03-05
Mattias Skarin 11
12
Q: Should these patients share the same queue?
2011-03-05
Mattias Skarin 12
13
Option: Study your demand
2011-03-05
Mattias Skarin 13
Cool Feature $$$
Infrastructure upgrade
Annoying customer bug
Legislation committment
Product Backlog
Unfinished from last sprint
14
Studying demand in a real team
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
Sprint 1 Sprint 2 Sprint 3 Sprint 4 Sprint 5 Sprint 6 Sprint 7
Value demand
Failure Demand
Average 28 %
2011-03-05
Mattias Skarin 14
15
Option: Optimize on system level
2011-03-05
Mattias Skarin 15
Analysis DevelopmentDesign Test
Flow, D. Reinertsen, 2008
Let’s do Scrumhere
17
Option: Agree on a portfolio strategy for a sustainable pace
2011-03-05
Mattias Skarin 17
Feature
Infrastructure
Customer bugReady for dev
Sprint #1 Sprint #3 Sprint #3
Smooth pace
WIP = 1/sprint. Do when arrive
WIP = Fill up to the WIP limit using me
WIP = 0,5/sprint. A little at a time, continuously
18
Option: Decentralize decision making
2011-03-05
Mattias Skarin 18
Ready for dev
Backlog In Dev Done
Support
Team
Key stakeholder
Product Owner
Pheew.. Less detailsfor me to worry about
19
Option: Limit your queues
2011-03-05
Mattias Skarin 19
Late start advantage!
Company A
Company B
20
PLANNING
2011-03-05
Mattias Skarin 20
21
Respecting WIP, but in different ways
Henrik Kniberg
21
Sprint 1 Sprint 2 Sprint 3 Sprint 4
Long running task
Long running task
Scrum
Kanban
WIP limit = 3
4
2 1 4
Velocity = 11
22
Option: Learn your cycle time to know when you can ship
2011-03-05
Mattias Skarin 22
Backlog Dev Done
orem ipsum dolor sit amet, co nse
ctetur
orem ipsum dolor sit amet, co nse
cteturorem ipsum dolor sit amet, co nse
ctetur
orem ipsum dolor sit amet, co nse
ctetur
orem ipsum dolor sit amet, co nse
ctetur
UAT Deploy3 2 3
orem ipsum dolor sit amet, co nse
ctetur
orem ipsum dolor sit amet, co nse
ctetur
orem ipsum dolor sit amet, co nse
ctetur
Free slot
Cycle time
23
Option: Lightweight estimation
23
SM L
Hours?Days?
Weeks?
S M L
T-shirt sizing SLA – service level agreement
Example: SLA is 12 days• Can we do this item within 12 days?
• If yes: just pull it in.• If no: reject it, or break it down, or
estimate/negotiate
24
Option: Higher predictability, on what really matters
2011-03-05
Mattias Skarin 24
Story
Story
Story
Story
Story
Story
Story
Story
Story
Story
Story
Story Story
Story
Story
Story
Story
Story
Time
Throughput / Velocity
”High”
”Medium”
”Low”
Predictability
We have a large coordinationcost
No estimation,only continuous
delivery
25
Big project effect
2011-03-05
Mattias Skarin 25
26
Illusion: Invested sum != money lost
Mattias Skarin 26
$
Project A Project B
Project Bt + 1
Project At + 1
Product backlog
Project A
Project B
Cost of delay
$ 1000
$ 9000
32
Be careful with scheduling systems
2011-03-05
Mattias Skarin 32
Time is up!Sprint
Debt
Debt
Debt
Time is up!Time is up!
33
Option: Release when ready, frequently
2011-03-05
Mattias Skarin 33
Release train
Is it good? Is it good? Is it good?
A
35
IN SPRINT
2011-03-05
Mattias Skarin 35
36
What does your sprint burndown look like?
2011-03-05
Mattias Skarin 36
A B
37
Option: Try out WIP limits
2011-03-05
Mattias Skarin 37
To do In Work Done
orem ipsum dolor sit amet, co nse
ctetur
[3]
orem ipsum dolor sit amet, co nse
ctetur
orem ipsum dolor sit amet, co nse
ctetur
Sun
Rob
Jane + Bob
Sprint burndown
38
Option: Daily standup: Flow over activity
2011-03-05
Mattias Skarin 38
Backlog Dev Done
orem ipsum dolor sit amet, co nse
ctetur
orem ipsum dolor sit amet, co nse
cteturorem ipsum dolor sit amet, co nse
ctetur
orem ipsum dolor sit amet, co nse
ctetur
orem ipsum dolor sit amet, co nse
ctetur
UAT Deploy5 3 2 3
orem ipsum dolor sit amet, co nse
ctetur
orem ipsum dolor
sit amet, co nse ctetur
orem ipsum dolor sit amet, co nse
ctetur
Team
• 1. [Point at story]• 2. Anything blocking our flow?• 3. Act
39
TEAMWORK
2011-03-05
Mattias Skarin 39
40
Kanban allows both specialists & generalists
Henrik Kniberg
40
Backlog Design
orem ipsum dolor sit amet, co nse
ctetur
Fold Tape
orem ipsum dolor sit amet, co nse
ctetur
orem ipsum dolor sit amet, co nse
ctetur
orem ipsum dolor sit amet, co nse
ctetur
orem ipsum dolor sit amet, co nse
ctetur
orem ipsum dolor sit amet, co nse
ctetur
Trim Draw
3 2 2 1 4 3
orem ipsum dolor sit amet, co nse
cteturorem ipsum dolor sit amet, co nse
ctetur
41
Option: Start using existing roles
2011-03-05
Mattias Skarin 41
Analyze Design Code Done!Req
Architect
Project manager
Manager
Business Analyst
Product owner
Scrum
Scrum Master
Kanban
42
Option: Expand team concept
Mattias Skarin
42
Concept To Do
orem ipsum dolor sit amet, co nse
ctetur
In Dev Test
orem ipsum dolor sit amet, co nse
ctetur
orem ipsum dolor sit amet, co nse
ctetur
orem ipsum dolor sit amet, co nse
ctetur
orem ipsum dolor sit amet, co nse
ctetur
orem ipsum dolor sit amet, co nse
ctetur
Done Deploy3 2 2 1 4 3
orem ipsum dolor sit amet, co nse
cteturorem ipsum dolor sit amet, co nse
ctetur
I now see what’s coming!
We can nowdemo what is blocking
flow
Scrum Team
Sysadmin
Customerfacing
We can track ourideas!
Sprint After sprintBefore sprint
43
RETROSPECTIVES
Options to
2011-03-05
Mattias Skarin 43
44
How many residents live here?
2011-03-05
Mattias Skarin 44
45
..and how many live here?
2011-03-05
Mattias Skarin 45
46
It is important to understand the problem
2011-03-05
Mattias Skarin 46
47
Option: Visualize the problem
2011-03-05
Mattias Skarin 47
Team A
Team B
Add training• Stop half finished work
48
Option: Quantify the problem
2011-03-05
Mattias Skarin 48
0
5
10
15
20
25
30
35
40
45
50
Where could production issues have been caught?
49
Lookback: The Kanban Formula
2011-03-05
Mattias Skarin 49
?
50
Every tool needs...
Mattias Skarin 50
Direction
A purpose
Are you using the tool or is it using you?
52
Expand your toolkit!www.crisp.se/utbildning
Mattias Skarin
Kanban Training for managers June 2-3
David Anderson
Second Generation Lean- Learn the economics
May 12-13
Don Reinertsen
Kanban starting points on the web:http://www.crisp.se/kanban
http://www.limitedwipsociety.com
Leading Lean Software DevelopmentMay 19-20
Mary & Tom Poppendieck