Why use Kanban
description
Transcript of Why use Kanban
![Page 1: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/1.jpg)
WHY KANBAN?Troy TuttleProject Lead Consultant, AdventureTech
1
blog.troytuttle.com
twitter.com/troytuttle
linkedin.com/in/troytuttle
![Page 2: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/2.jpg)
Motivation2
What is my motivation? A practicing “Pragmatic Agilist”
Context is King
Helping software teams find project success by indentifying and avoiding project dysfunction
Family-friendly definitions of successful projects.
![Page 3: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/3.jpg)
Is Kanban the next martial arts fad?
What is Kanban?3
![Page 4: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/4.jpg)
Is Kanban the latest miracle cure?
What is Kanban?4
![Page 6: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/6.jpg)
Kanban is the result of practitioners applying lean principles to software engineering.
Kanban is influenced heavily by existing first-generation Agile methodologies.
Kanban is more like a tool than a methodology.
What is Kanban?6
Some Observations..
![Page 7: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/7.jpg)
What is Kanban?7
It starts with Lean Principles: Pull Continuous Flow Customer Value Waste Elimination Continuous Improvement
Taiichi Ohno
W. Edwards Deming
Founder of Toyota Production Systems
Quality Guru:System of Profound Knowledge
![Page 8: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/8.jpg)
Kanban is translated as: “Visual Card” or “Signal Card”
For our purposes (software), we can think of it as a virtual signal.
Kanban Is8
![Page 9: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/9.jpg)
What is Kanban?
[4]
9
Kanban for Software’s Lean Heritage: 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 (leansoftwareengineering.com)
![Page 10: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/10.jpg)
“Kanban is a transparent, work-limited, pull system.” -- Eric Willeke(KanbanDev Yahoo! Group)
Kanban Is…10
![Page 11: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/11.jpg)
Kanban for Software Principles
[3]
11
Pull value through the Value Stream. Limit work in progress. Make it visible!
![Page 12: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/12.jpg)
Value Stream12
Lean software engineering starts with mapping the value stream.
“Concept to Cash” “From the lips of the customer to a production
system”
![Page 13: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/13.jpg)
Value Stream13
Your value stream could be something like:
Request Analysis Dev Verify Release
![Page 14: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/14.jpg)
Value Stream14
Our first cut…
Backlog Analysis Dev Verify DoneRelease
![Page 15: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/15.jpg)
Value Stream15
Queues are important!
Backlog Analysis Dev Verify DoneReleaseQueue Queue Queue QueueExec Exec Exec Exec
![Page 16: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/16.jpg)
Backlog Analysis Dev Verify DoneReleaseQueue Queue Queue QueueExec Exec Exec Exec
Kanban Pull
[1]
16
flow
![Page 17: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/17.jpg)
Phase-based development (waterfall) transfers the entire batch from state to state.
Existing Agile development transfers small batches from state to state (iterations).
Our goal with Kanban is to transfer one piece at a time (one piece flow), or at least work in that direction.
Consider watering your garden with a bucket versus a hose. [1]
Kanban Pull and Flow17
![Page 18: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/18.jpg)
Limiting Work In Progress
[5]
18
Multitasking Exercise!
A
C
B
1
2
3
I
II
III
![Page 19: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/19.jpg)
Limiting Work In Progress
[1]
19
Performing tasks sequentially yields results sooner.
(Observe service organizations to see this principle in action.)
![Page 20: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/20.jpg)
Limiting Work In Progress20
New work items can only be pulled into a state if there is capacity under the WIP limit.
BacklogAnalysis Dev Verify
DoneRelease
Queue Queue Queue QueueExec Exec Exec Exec
3 2
![Page 21: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/21.jpg)
Visualize!21
Put work items on a white board and make it visible!
Then have the conversation with the customer, “this is what we have in process now, to take on new work, what shall we back out of the system?”
![Page 22: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/22.jpg)
Work Items: MMF22
“A minimal marketable feature is a chunk of functionality that delivers a subset of the customer’s requirements, and that is capable of returning value to the customer when released as an independent entity” -- M Denne & H Cleland-Huang, Software by Numbers
AKA: Epics, Feature Sets, and MMR [6]
![Page 23: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/23.jpg)
Queue
Work Items: MMF23
A two-tiered Kanban board with MMF’s and user stories.
Backlog Analysis Dev Verify DoneReleaseQueue Queue QueueExec Exec Exec Exec
MMFQueue
![Page 24: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/24.jpg)
Work Items: MMF24
For Agile practitioners, MMF’s in Kanban often replace the practice of time-boxed iterations.
time box
User Story 1
User Story 2
MMF
User Story 1
User Story 2
Dev Team->
![Page 25: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/25.jpg)
Example of MMF > User Story > Scenarios:The system should allow company users to
resolve duplicate customer records.So that we can eliminate duplicate processes, as a
data processor, I need to merge two or more duplicate records into one.Before merging records, confirm user has “merge” role
permissions in system.When merging customer records, verify at least one record
contains valid demographic information.After a successful merge, log merge relationship information
to merge log table.
Work Items: MMF25
![Page 26: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/26.jpg)
The Estimation Game26
![Page 27: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/27.jpg)
The Estimation Game: Cycle Time27
Queue
Backlog Analysis Dev Verify DoneReleaseQueue Queue QueueExec Exec Exec Exec
MMFQueue
Cycle time starts Cycle time ends
![Page 28: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/28.jpg)
The Estimation Game28
Kanban + cycle time metrics allow teams to stop playing the estimation game where value is placed on predicting when software will be completed.
Instead, teams can project software completion rates from actual data.
The effort that formerly went into improving prediction practices can now go to improving actual software delivery.
![Page 29: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/29.jpg)
Metrics29
Kanban teams need just a few metrics and tools to be effective: Cycle time Lead time Cumulative Flow Diagrams
![Page 30: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/30.jpg)
Lead Time30
Queue
Backlog Analysis Dev Verify DoneReleaseQueue Queue QueueExec Exec Exec Exec
MMFQueue
Cycle time starts Cycle time ends
![Page 31: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/31.jpg)
Cumulative Flow Diagram
[3]
31
![Page 32: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/32.jpg)
Additional Considerations32
Focus on system, not individual performance. Kanban as a change management tool – evolution
not revolution. Achieve predictability by not asking developers to
predict! Know your true WIP!
![Page 33: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/33.jpg)
Personal Software Manifesto?33
metric-based planning
story elaboration just-in-time
value delivered via continuous flow
estimation-based planning
story elaboration through up front planning
value delivered in small batches
While there is value in the items on the right, I value the items on the left more.
![Page 34: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/34.jpg)
Summary34
Want to try Kanban?Map your value stream and establish a pull system Limit work in processMake it visible for your team and customer
![Page 35: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/35.jpg)
Thank you!35
Troy TuttleProject Lead Consultant, AdventureTech
[email protected]@gmail.com
blog.troytuttle.com
twitter.com/troytuttle
linkedin.com/in/troytuttle
![Page 36: Why use Kanban](https://reader037.fdocuments.us/reader037/viewer/2022103102/5695cf851a28ab9b028e7036/html5/thumbnails/36.jpg)
References36
(1) Karl Scotland – http://availagility.wordpress.com and KanbanDev Yahoo! Group.
(2) Eric Willeke - http://manicprogrammer.com/cs/blogs/willeke/default.aspx and KanbanDev Yahoo! group
(3) David Peter Joyce - http://leanandkanban.wordpress.com and “Pulling Value Lean and Kanban”
(4) Corey Ladas - Scrumban book, www.leansoftwareengineering.com and KanbanDev Yahoo! group.
(5) Jon Cook – Critical Chain yahoo list through Clarke Ching - www.clarkeching.com
(6) David Anderson – www.agilemanagement.net
(7) Kenji Hiranabe - http://www.infoq.com/articles/agile-kanban-boards