kanban highlights
TRANSCRIPT
Kanban HighlightsKanban Highlights
Yuval Yeret – Kanban LeadAgilesparks
http://linkd.in/kanbanisrael
2009-08-29
orem ipsum dolor sit amet, nse ctetur adi pis cing elit nisl
2009-09-01
orem ipsum dolor sit amet, co nse ctetur adi pis cing elit nisl
2009-09-02
orem ipsum dolor sit amet, nse
ctetur adi pis elit nisl
Analysis Development Acceptance ProdNext
Definition of Done:• Customer accepted• Ready for production
Ongoing Done
Definition of Done:• Code clean & checked in on trunk• Integrated & regression tested• Running on UAT environment
Ongoing DoneOngoing Done
Definition of Done:• Goal is clear• First tasks defined• Story split (if necessary)
2 3 3 2
Feature / story
= completed
= blocked
= who is doing this right now
2009-08-20 2009-09-30
(description)
• Panicfeatures(should be swarmed and kept moving. Interrupt other work and break WIP limits as necessary)
• Priority features• Hard deadline features
(only if deadline is at risk)• Oldest features
2009-09-03
ipsum dolor sit amet, co nse ctetur adi pis cing elit nisl
2009-09-02
orem ipsum dolor sit amet, co nse
2009-08-27
orem ipsum dolor sit amet, ctetur
adi pis cing elit nisl
2009-08-27
orem ipsum dolor sit amet, adi pis cing elit nisl
2009-08-20
orem olor sit amet, co nse ctetur adi pis cing elit nisl
2009-08-30
orem ipsum dolor sit amet, co adi pis cing elit nisl
2009-09-08
2009-08-20
orem ipsum dolor sit amet, co nse
ctetur adi pis cing elit nisl
2009-08-25
2009-08-22
orem ipsum dolor sit amet, co
2009-08-25
orem ipsum dolor sit ctetur adi pis cing elit nisl
Task / defectHard deadline
(if applicable)Date when added to board
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
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
orem ipsum dolor sit amet, co nse ctetur
orem ipsum dolor sit amet, co nse ctetur
(description)
(description)
(description)Why
(description)
Who is analyzing / testing right now
= priority
= panic
What to pull first
xxxx kjd dj d xxx
Kanban kick-start exampleHenrik Kniberg www.crisp.se/kanban/example
version 1.22009-11-16
(description)
orem ipsum dolor sit amet, co nse ctetur
2009-08-26
orem adi pis cing elit nisl
orem ipsum dolor sit amet, co nse ctetur
=task =defect
SupplierBuyer
Kanban @ Toyota
Henrik Kniberg 6
ReceiveConsume Detach Ship Allocate Manufacture
Taiichi OhnoFather of the
Toyota Production System
The tool used to operate the [Toyota Production] system is
kanban.
Adapted from Kiro Harada’s slide
“People with different skills have to work together to deliver product
features. Don’t build features that nobody needs right now. Don’t write
more specs than you can code. Don’t write more code than you can test. Don’t test more code than you can
deploy”.
Corey Ladas
Why pull? Why kanban?
9
How is it different than a taskboard?
• taskboard provides visibility to where a task is in the workflow
• Storyboard/Kanban Provides visibility to where a story is in the workflow
• This raises the focus on flowing stories
• Storyboard != Kanban board. Need WIP Limits to become kanban
10
”One day in Kanban land”
Henrik Kniberg 13
http://blog.crisp.se/henrikkniberg/tags/kanban/
NextDev
Done
Backlog 32
In production :o)Ongoing
Scenario 1 – one piece flow
Henrik Kniberg
B
C
A
D
E
F
G
H I
J LKM
NextDev
Done
Backlog 32
In production :o)Ongoing
Scenario 1 – one piece flow
Henrik Kniberg
BC
A
D
E
F
G
H I
J LKM
NextDev
Done
Backlog 32
In production :o)Ongoing
Scenario 1 – one piece flow
Henrik Kniberg
BC
A
D
E
F
G
H I
J LKM
NextDev
Done
Backlog 32
In production :o)Ongoing
Scenario 1 – one piece flow
Henrik Kniberg
B
C A
D
E
F
G
H I
J LKM
NextDev
Done
Backlog 32
In production :o)Ongoing
Scenario 1 – one piece flow.
Henrik Kniberg
B
C A
D
E
F
G
H I
J LKM
NextDev
Done
Backlog 32
In production :o)Ongoing
Scenario 2 – Deployment problem
Henrik Kniberg
B
C
A
D
E
F
G
H I
J LKM
PO
NextDev
Done
Backlog 32
In production :o)Ongoing
Scenario 2 – Deployment problem
Henrik Kniberg
BC
A
D
E
F
G
H I
J LKM
PO
NextDev
Done
Backlog 32
In production :o)Ongoing
Scenario 2 – Deployment problem
Henrik Kniberg
B
C A
D
E
F
G
H I
J LKM
PO
NextDev
Done
Backlog 32
In production :o)Ongoing
Scenario 2 – Deployment problem
Henrik Kniberg
B
C A
D
E
F
G
H I
J LKM
PO
NextDev
Done
Backlog 32
In production :o)Ongoing
Scenario 2 – Deployment problem
Henrik Kniberg
B
C A
D
F
G
H I
J LKM
?!
E
PO
NextDev
Done
Backlog 32
In production :o)Ongoing
Scenario 2 – Deployment problem
Henrik Kniberg
B
C
A
D
EF
G
H I
J LKM
?!PO
NextDev
Done
Backlog 32
In production :o)Ongoing
Scenario 2 – Deployment problem
Henrik Kniberg
B
C
A
D
EF
G
H I
J LKM
PO
NextDev
Done
Backlog 32
In production :o)Ongoing
Scenario 2 – Deployment problem
Henrik Kniberg
B
A
D
EF
G
H I
J LKM
C
PO
NextDev
Done
Backlog 32
In production :o)Ongoing
Scenario 2 – Deployment problem
Henrik Kniberg
B
AD
EF
G
H I
J LKM
C
PO
The Kanban Change Machine
Perfo
rman
ce
Time
Revolution (Scrum)
Evolution
(Kanban)
(kanban the tool)
The Kanban change machine
Designed by David Andersonhttp://plixi.com/p/61319629
Kanban approach to change
• First - adopt the foundational principles ...
–Start with what you do now–Agree to pursue incremental, evolutionary change
–Respect the current process, roles, responsibilities & titles
http://agilemanagement.net/index.php/Blog/the_principles_of_the_kanban_method/
Kanban – managing the end to end flow
Henrik Kniberg
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
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
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
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• Explicit policies (definition of Done, WIP limits, etc)
• Improve Collaboratively (using models & the scientific method)
Pioneered byDavid Andersonin 2004
Start with what you do now
• Kanban doesn’t ask you to change your process, especially not up front
• You EVOLVE your current process
• There is no– Kanban software development process– Kanban Project Management Method
AGREE to pursue incremental, evolutionary change
• Use in circumstances that warrant a gentle, evolutionary approach to improvement
• For example:– Big change recently failed due to resistance– Politics make it risky to run a big change– Need to gain trust in the Lean/Agile direction
• Warning: Without this the Kanban method will have a hard time.
• If a revolution is REALLY* expected, don’t use the Kanban method. You CAN use a kanban pull system though.
– Sometimes executives say they want a revolution, but either think otherwise when understand the implications, or are blind to the resistance levels within
Respect the current process, roles, responsibilities and job titles
• Eliminate initial fear– Gains broader support for the Kanban
initiative
• Roles might evolve in the future– If/When it makes sense– By then, the organization connects the
change to a real pain, and have trust in the Kanban system
Kaizen Continuous Improvement
• Core kanban - WIP Limit– encourages “Stop the Line” mentality.– fix the problem, don’t hide it by working on
something else or creating “inventory”.
• Recommended Agile practices to add:– Daily Stand-ups
• Deal with problems in Real time.
– Retrospectives• See the bigger picture –
deal with systemic problems.• Inspect and adapt –
continuously improve.
Thinking Tools
• Lean Thinking – – Deliver Fast – to improve time to market
and reduce waste
• Goldratt Theory of Constraints – – Bottleneck Thinking
• Queuing Theory– Deal with variability
Pop Quiz
Full story at http://yuvalyeret.com/2010/08/03/finding-the-right-dev-to-test-ratio-when-working-in-kanban/
A lot of
WIP in
Test
Empty
Test Done
Empty downstrea
m (Bubble)
Dev Done
almost Full
How to deal with a test bottleneck
How can I help
current stories?
Help us with
Blocker
Fix open defects on our Stories
Help us automate tests for this story
WIP Limit!Can’t start new DEV
work!
How to deal with a test bottleneck
How can I help you be more
efficient?
Help us do ATDD so you can develop based on our
test expectations,
and also offload some
automation effort from us
Automate
Setups and Test Data
Improve Dev Done quality! – less retesting
for us
Half of our work is not core test work. Maybe you can take some of it, or
help us reduce waste there
Come pair with us, you’ll
probably see things from our perspective and
have some ideas how to
help!
Creating more Blue Light - TOC
The Cumulative Flow Diagram
• Introduced in Lean Product Development by Don Reinertsen and David Anderson
• Visualize where the Features/Stories are in the workflow across time
TODO Work in
Process (WIP)
Done
What can teams learn from Cumulative Flow?
Work in
Process (WIP)
Average Cycle Time Real Done
Burnup
Total Scope Dev Burnup
Done Burnup
Work in Process
• High Work-in-process leads to longest lead times• Low work-in-process greatly reduces lead times• Results in more effective and safer projects
What we learn here
Despite agile iterations, still cliff at the end
Big gap between Dev and QA
How much work is queued vs QA
WIP?No visibility
We want to iterate in a sustainable pace all the way to DONE DONE, not just to Done
Release Tracking using CFDtotal scope trend - assuming
freeze from today
Trend of “Done”
Needed done rate to meet timeline/scope goal
Note scope target is also from a specific lane (where all the
scope for this timeline waits.
Future scope is in earlier lanes)
So what do you do?
• Assume SOME variability• Visualize Variability• Control Variability VIA
–Relatively Small and Similarly sized Work
–Make work Ready–Swarming / Collective Ownership–Reduce Rework/ Failure Load