SlideShare a Scribd company logo
Using Kanban Techniques
to Control Incremental
Development
Jeff Patton
AgileProductDesign.com
jpatton@acm.org
Download this presentation at: www.agileproductdesign.com/downloads/patton_kanban.ppt
In this short talk we’ll cover:
1. What is a Kanban System and how
does it apply to software development?
2. How to set up a development team
Kanban System
3. Applying Lean thinking to software
development
2
–看板 Kanban cards limit excess work
in progress
–看板 Kanban literally means
“visual card,” “signboard,” or
“billboard.”
Toyota originally used Kanban
cards to limit the amount of
inventory tied up in “work in
progress” on a manufacturing floor
Not only is excess inventory waste,
time spent producing it is time
that could be expended elsewhere
Kanban cards act as a form of
“currency” representing how WIP
is allowed in a system.
3
Kanban simulation
Let’s simulate a simple process, then see if we can
improve it by adding a Kanban system.
I’ll need 5 volunteers to manufacture the latest in
high-tech aircraft
4
Why use Kanban in
Software Development?
(we’re not building aircraft – or anything tangible really)
5
Time-boxed iterative development has
challenges
Common problems include:
•Short time-boxes give more frequent opportunity to
measure progress and inspect software but force
development items to be smaller
•Smaller development items are often too small to be
valuable and difficult to identify
•Quality of requirements suffers as analysts rush to prepare
for upcoming cycles
•Quality of current development suffers when busy analysts
are unable to inspect software or answer questions during
development
•Quality often suffers as testers race to complete work late
in the development time-box 6
Inside an iteration, effort across roles is
uneven
Development work often continues throughout a cycle
while testing starts late and never seems to get enough time7
Using a Kanban approach
in software drops time-
boxed iterations in favor of
focusing on continuous
flow.
8
How to set up a simple
Kanban system for a
software development
team.
9
1. Define a work process flow
Look at the typical flow for features, stories, or work
packages and describe typical process steps
This simple process flow has the steps:
1.elaboration & acceptance criteria
2.development
3.test
4.deployment
10
2. Lay out a visual Kanban board
Place a goals column on the left, then a waiting queue, the
process steps, and a final “done” column to the right
Place an expedite track above the main
left to right queue
Place “done and waiting” queues
between each work queue
(in this example they’re placed below)
11
3. Decide on limits for items in queue
and work in progress
A good limit is a factor of the number of people in a role that can work
on an item in a given process step. Start with number of people * 1.5
This board uses painters tape to
indicate available “slots” for work in
progress
12
4. Place prioritized goals on the left
column of the board
A good goal describes the outcome we hope to achieve after software
ships. Goals help keep focus on the larger outcome.
Having goals visible:
•promotes focus
•helps us prioritize
•helps us manage feature scope &
requirements
13
5. Start the board by placing stories or
features in queue
Mark on the story or feature card the date it entered the queue. This
begins our measurement of cycle time.
Product owners manage the waiting
queue
14
6. Move features through the process
flow as work is completed
As the story enters the first process step, mark that date on the card.
This is the start date. As it’s finished, mark that date on the card. This
is the finish date. 15
7. Use the dates on the cards to
calculate cycle time
Use average cycle time to set wait times from different points on the
board. Pay attention to flow and bottlenecks: relieving bottlenecks as
quickly as possible.
Cycle time = finish date – start date
The average cycle time from the date
the item enters the board is the wait
time from this point in the queue
16
Display and manage cycle times
Reduce the number of Kanban slots allowed until cycle time remains
unchanged
Reduce the size of development items
•Work in progress is actually the number of items * the average size of items
Identify and act on bottlenecks immediately
•Relieve repeated bottlenecks by changing the number and types of people in
each role and cross training
Disneyland’s
public display of
cycle-times
17
Kanban Boards
18
Kanban Boards
19
Kanban Boards
20
Kanban Boards
21
Kanban Boards
22
Explode large process steps into tasks
to improve visibility
When a feature, user story, or work item is large:
 Takes longer than a couple days to complete
 Requires that multiple people collaborate on its completion
Decompose that step into cards to track independently
Feature to
develop Tasks in queue
Tasks in
progress
Tasks
complete
Feature
complete
23
Kanban Board with Task
Decomposition
24
Use cumulative flow diagrams to
visualize work in progress
www.agilemanagement.net/Articles/Papers/BorConManagingwithCumulat.html
25
Use cumulative flow diagrams to
visualize work in progress
www.agilemanagement.net/Articles/Papers/BorConManagingwithCumulat.html
26
Keep time-boxed product and process
inspection
Keep regular time-boxes in your process as a cue for product
inspection:
•Evaluate the quality of the growing product from a functional,
engineering, and user experience perspective
Evaluate your pace of development:
•Look at the number of development items completed relative to goals
•Look at the average cycle time per development item
•Calculate the ratio of developer days per completed item. Use this
ratio to estimate the completion time for undeveloped items
•Adjust your development plan as necessary
Evaluate and adjust the process you’re using
•Use a process reflection session to identify changes you could make to
improve your product or pace
Ending cycles right: http://www.stickyminds.com/s.asp?F=S14865_COL_2
27
Begin looking at your process using Lean thinking
Cockburn’s Software Engineering in the 21st
Century:
http://alistair.cockburn.us/Software+engineering+in+the+21st+century.ppt
28
Since we’re engaged in “knowledge work” look at
the cycle time of validated decisions, or knowledge
Cockburn’s Software Engineering in the 21st
Century:
http://alistair.cockburn.us/Software+engineering+in+the+21st+century.ppt
29
Often the feedback loop is overlooked – it’s the
invisible backed-up queue
Cockburn’s Software Engineering in the 21st
Century:
http://alistair.cockburn.us/Software+engineering+in+the+21st+century.ppt
30
Setting up a simple Kanban
system starts to focus the team
on the cycle-time of delivered
work and gives a way to detect
and begin to resolve bottlenecks
31
33
• Anderson, Kanban in Action:
http://www.agilemanagement.net/Articles/Weblog/KanbaninAction.ht
ml
• Hiranabe, Kanban Applied to Software Development: from Agile
to Lean: http://www.infoq.com/articles/hiranabe-lean-agile-kanban
• Ladas, Scrumban - Essays on Kanban Systems for Lean
Software Development: http://www.lulu.com/content/3864767
• Ladas, Scrum-ban:
http://leansoftwareengineering.com/ksse/scrum-ban/
• Belshee, Naked Planning, Kanban Simplified:
http://joearnold.com/2008/03/naked-planning-kanban-
simplified/
Kanban References:

More Related Content

What's hot

Introduction to Kanban boards
Introduction to Kanban boardsIntroduction to Kanban boards
Introduction to Kanban boards
ProofHub
 
Vt2014 kanban presentation
Vt2014 kanban presentationVt2014 kanban presentation
Vt2014 kanban presentationplog99
 
Training - Introducing Agile, Lean and Kanban
Training - Introducing Agile, Lean and KanbanTraining - Introducing Agile, Lean and Kanban
Training - Introducing Agile, Lean and Kanban
Sudipta Lahiri
 
Designing your kanban board to map your process
Designing your kanban board to map your processDesigning your kanban board to map your process
Designing your kanban board to map your process
Yu Liang
 
Kanban != Kanban Board
Kanban != Kanban BoardKanban != Kanban Board
Kanban != Kanban BoardSudipta Lahiri
 
An Introduction to kanban
An Introduction to kanbanAn Introduction to kanban
An Introduction to kanban
R M Shahidul Islam Shahed
 
Introduction to Kanban
Introduction to KanbanIntroduction to Kanban
Introduction to Kanban
TO THE NEW | Technology
 
Scrum vs Kanban
Scrum vs KanbanScrum vs Kanban
Scrum vs Kanban
suyogyaman
 
Kanban board 9th may 2017
Kanban board   9th may 2017Kanban board   9th may 2017
Kanban board 9th may 2017
gagann78
 
Kanban For Software Engineering Apr 242
Kanban For Software Engineering Apr 242Kanban For Software Engineering Apr 242
Kanban For Software Engineering Apr 242Ross Lawley
 
Agile Lesson
Agile LessonAgile Lesson
Agile Lesson
Emiliano Grande
 
Managing software projects with Team Foundation Server 2013 in Agile Scrum
Managing software projects with Team Foundation Server 2013 in Agile ScrumManaging software projects with Team Foundation Server 2013 in Agile Scrum
Managing software projects with Team Foundation Server 2013 in Agile Scrum
Hossein Sarshar
 
Implementing Kanban to Improve your Workflow
Implementing Kanban to Improve your WorkflowImplementing Kanban to Improve your Workflow
Implementing Kanban to Improve your Workflow
Jennifer Davis
 
Kanban
Kanban Kanban
Kanban
Stephen Forte
 
Intro to Kanban - AgileDayChile2011 Keynote
Intro to Kanban - AgileDayChile2011 KeynoteIntro to Kanban - AgileDayChile2011 Keynote
Intro to Kanban - AgileDayChile2011 Keynote
ChileAgil
 
Kanban vs Scrum: What's the difference, and which should you use?
Kanban vs Scrum: What's the difference, and which should you use?Kanban vs Scrum: What's the difference, and which should you use?
Kanban vs Scrum: What's the difference, and which should you use?
Arun Kumar
 
Kanban: Thinking Outside The Time Box
Kanban: Thinking Outside The Time BoxKanban: Thinking Outside The Time Box
Kanban: Thinking Outside The Time Box
Norbert Winklareth
 
Kanban Basics for Beginners
Kanban Basics for BeginnersKanban Basics for Beginners
Kanban Basics for Beginners
Zsolt Fabok
 
Kanban - a quick intro.
Kanban - a quick intro.Kanban - a quick intro.
Kanban - a quick intro.
IlPeach
 

What's hot (20)

Introduction to Kanban boards
Introduction to Kanban boardsIntroduction to Kanban boards
Introduction to Kanban boards
 
Vt2014 kanban presentation
Vt2014 kanban presentationVt2014 kanban presentation
Vt2014 kanban presentation
 
Training - Introducing Agile, Lean and Kanban
Training - Introducing Agile, Lean and KanbanTraining - Introducing Agile, Lean and Kanban
Training - Introducing Agile, Lean and Kanban
 
Designing your kanban board to map your process
Designing your kanban board to map your processDesigning your kanban board to map your process
Designing your kanban board to map your process
 
Kanban != Kanban Board
Kanban != Kanban BoardKanban != Kanban Board
Kanban != Kanban Board
 
An Introduction to kanban
An Introduction to kanbanAn Introduction to kanban
An Introduction to kanban
 
Introduction to Kanban
Introduction to KanbanIntroduction to Kanban
Introduction to Kanban
 
Scrum vs Kanban
Scrum vs KanbanScrum vs Kanban
Scrum vs Kanban
 
Kanban board 9th may 2017
Kanban board   9th may 2017Kanban board   9th may 2017
Kanban board 9th may 2017
 
Kanban For Software Engineering Apr 242
Kanban For Software Engineering Apr 242Kanban For Software Engineering Apr 242
Kanban For Software Engineering Apr 242
 
Agile Lesson
Agile LessonAgile Lesson
Agile Lesson
 
Managing software projects with Team Foundation Server 2013 in Agile Scrum
Managing software projects with Team Foundation Server 2013 in Agile ScrumManaging software projects with Team Foundation Server 2013 in Agile Scrum
Managing software projects with Team Foundation Server 2013 in Agile Scrum
 
Implementing Kanban to Improve your Workflow
Implementing Kanban to Improve your WorkflowImplementing Kanban to Improve your Workflow
Implementing Kanban to Improve your Workflow
 
Kanban
Kanban Kanban
Kanban
 
Intro to Kanban - AgileDayChile2011 Keynote
Intro to Kanban - AgileDayChile2011 KeynoteIntro to Kanban - AgileDayChile2011 Keynote
Intro to Kanban - AgileDayChile2011 Keynote
 
Kanban vs Scrum: What's the difference, and which should you use?
Kanban vs Scrum: What's the difference, and which should you use?Kanban vs Scrum: What's the difference, and which should you use?
Kanban vs Scrum: What's the difference, and which should you use?
 
Kanban: Thinking Outside The Time Box
Kanban: Thinking Outside The Time BoxKanban: Thinking Outside The Time Box
Kanban: Thinking Outside The Time Box
 
Scrum vs kanban
Scrum vs kanbanScrum vs kanban
Scrum vs kanban
 
Kanban Basics for Beginners
Kanban Basics for BeginnersKanban Basics for Beginners
Kanban Basics for Beginners
 
Kanban - a quick intro.
Kanban - a quick intro.Kanban - a quick intro.
Kanban - a quick intro.
 

Viewers also liked

Agile Lean Kanban Training 1 hour
Agile Lean Kanban Training 1 hourAgile Lean Kanban Training 1 hour
Agile Lean Kanban Training 1 hour
Ryan Polk
 
Kanban 101 - 1 - Perfection, Waste and Value Stream Mapping
Kanban 101 - 1 - Perfection, Waste and Value Stream MappingKanban 101 - 1 - Perfection, Waste and Value Stream Mapping
Kanban 101 - 1 - Perfection, Waste and Value Stream Mapping
Michael Sahota
 
Scrum and Kanban - Getting the Most from Each
Scrum and Kanban - Getting the Most from EachScrum and Kanban - Getting the Most from Each
Scrum and Kanban - Getting the Most from Each
Michael Sahota
 
Introduction to Kanban for Scrum Teams
Introduction to Kanban for Scrum TeamsIntroduction to Kanban for Scrum Teams
Introduction to Kanban for Scrum Teams
Jonathan Hansen
 
Kanban Board Examples
Kanban Board ExamplesKanban Board Examples
Kanban Board Examples
Shore Labs
 
Personal Kanban 101
Personal Kanban 101Personal Kanban 101
Personal Kanban 101
Jim Benson
 
Kanban 101 - An Introduction to Planning with Little's Law
Kanban 101 - An Introduction to Planning with Little's LawKanban 101 - An Introduction to Planning with Little's Law
Kanban 101 - An Introduction to Planning with Little's Law
Jack Speranza
 
Kanban in 4 easy steps
Kanban in 4 easy steps Kanban in 4 easy steps
Kanban in 4 easy steps
Shore Labs
 

Viewers also liked (8)

Agile Lean Kanban Training 1 hour
Agile Lean Kanban Training 1 hourAgile Lean Kanban Training 1 hour
Agile Lean Kanban Training 1 hour
 
Kanban 101 - 1 - Perfection, Waste and Value Stream Mapping
Kanban 101 - 1 - Perfection, Waste and Value Stream MappingKanban 101 - 1 - Perfection, Waste and Value Stream Mapping
Kanban 101 - 1 - Perfection, Waste and Value Stream Mapping
 
Scrum and Kanban - Getting the Most from Each
Scrum and Kanban - Getting the Most from EachScrum and Kanban - Getting the Most from Each
Scrum and Kanban - Getting the Most from Each
 
Introduction to Kanban for Scrum Teams
Introduction to Kanban for Scrum TeamsIntroduction to Kanban for Scrum Teams
Introduction to Kanban for Scrum Teams
 
Kanban Board Examples
Kanban Board ExamplesKanban Board Examples
Kanban Board Examples
 
Personal Kanban 101
Personal Kanban 101Personal Kanban 101
Personal Kanban 101
 
Kanban 101 - An Introduction to Planning with Little's Law
Kanban 101 - An Introduction to Planning with Little's LawKanban 101 - An Introduction to Planning with Little's Law
Kanban 101 - An Introduction to Planning with Little's Law
 
Kanban in 4 easy steps
Kanban in 4 easy steps Kanban in 4 easy steps
Kanban in 4 easy steps
 

Similar to Patton kanban 1

Kanban_230916
Kanban_230916Kanban_230916
Kanban_230916Ram Kumar
 
Kanban
KanbanKanban
Kanban
bramoe
 
Advanced Web Development in PHP - Understanding Project Development Methodolo...
Advanced Web Development in PHP - Understanding Project Development Methodolo...Advanced Web Development in PHP - Understanding Project Development Methodolo...
Advanced Web Development in PHP - Understanding Project Development Methodolo...
Rasan Samarasinghe
 
Kanban
Kanban Kanban
Kanban
Gautam Kumar
 
Tracking through kanban
Tracking through kanbanTracking through kanban
kanban an integrated jit system
kanban an integrated jit systemkanban an integrated jit system
kanban an integrated jit systemSridhar Siddu
 
Kanban.pptx software engineering scrum ppt
Kanban.pptx software engineering scrum pptKanban.pptx software engineering scrum ppt
Kanban.pptx software engineering scrum ppt
SabaKhalid48
 
Ag02 agile practices - dnc14 handouts
Ag02   agile practices - dnc14 handoutsAg02   agile practices - dnc14 handouts
Ag02 agile practices - dnc14 handoutsDotNetCampus
 
Kanban presentation
Kanban presentationKanban presentation
Kanban presentation
Bijo Joseph
 
LKIN2018: leveraging Lean and Kanban to implement continuous improvement
LKIN2018: leveraging Lean and Kanban to implement continuous improvementLKIN2018: leveraging Lean and Kanban to implement continuous improvement
LKIN2018: leveraging Lean and Kanban to implement continuous improvement
Ravi Tadwalkar
 
Lean Kanban India 2018 | Leveraging Lean and Kanban to implement Continuous ...
Lean Kanban India 2018 |  Leveraging Lean and Kanban to implement Continuous ...Lean Kanban India 2018 |  Leveraging Lean and Kanban to implement Continuous ...
Lean Kanban India 2018 | Leveraging Lean and Kanban to implement Continuous ...
LeanKanbanIndia
 
Agile survival kit
Agile survival kitAgile survival kit
Agile survival kit
Stefano Gallotti
 
Scrumhub scrum-guide-2016
Scrumhub scrum-guide-2016Scrumhub scrum-guide-2016
Scrumhub scrum-guide-2016
Veeresh Yadrami
 
Kanban Methodology
Kanban MethodologyKanban Methodology
Kanban Methodology
Sudhanva Ramesh
 
Archana Joshi Aug 2013 Kanban Spin Pune
Archana Joshi Aug 2013 Kanban Spin Pune Archana Joshi Aug 2013 Kanban Spin Pune
Archana Joshi Aug 2013 Kanban Spin Pune Archana Joshi
 
LEAN - What Does Kaizen Mean.ppt based on lean manufacturing
LEAN - What Does Kaizen Mean.ppt based on lean manufacturingLEAN - What Does Kaizen Mean.ppt based on lean manufacturing
LEAN - What Does Kaizen Mean.ppt based on lean manufacturing
ssuser72b8e8
 
Advanced kanban overview for waterfall & scrum practitioners (16x9 deck)
Advanced kanban overview for waterfall & scrum practitioners  (16x9 deck)Advanced kanban overview for waterfall & scrum practitioners  (16x9 deck)
Advanced kanban overview for waterfall & scrum practitioners (16x9 deck)
Ravi Tadwalkar
 
VSM
VSMVSM
Project Management Tool – Kanban Board
Project Management Tool – Kanban Board Project Management Tool – Kanban Board
Project Management Tool – Kanban Board
SSudhaVelan
 
Cellular manufacturing
Cellular manufacturingCellular manufacturing
Cellular manufacturing
Jitesh Gaurav
 

Similar to Patton kanban 1 (20)

Kanban_230916
Kanban_230916Kanban_230916
Kanban_230916
 
Kanban
KanbanKanban
Kanban
 
Advanced Web Development in PHP - Understanding Project Development Methodolo...
Advanced Web Development in PHP - Understanding Project Development Methodolo...Advanced Web Development in PHP - Understanding Project Development Methodolo...
Advanced Web Development in PHP - Understanding Project Development Methodolo...
 
Kanban
Kanban Kanban
Kanban
 
Tracking through kanban
Tracking through kanbanTracking through kanban
Tracking through kanban
 
kanban an integrated jit system
kanban an integrated jit systemkanban an integrated jit system
kanban an integrated jit system
 
Kanban.pptx software engineering scrum ppt
Kanban.pptx software engineering scrum pptKanban.pptx software engineering scrum ppt
Kanban.pptx software engineering scrum ppt
 
Ag02 agile practices - dnc14 handouts
Ag02   agile practices - dnc14 handoutsAg02   agile practices - dnc14 handouts
Ag02 agile practices - dnc14 handouts
 
Kanban presentation
Kanban presentationKanban presentation
Kanban presentation
 
LKIN2018: leveraging Lean and Kanban to implement continuous improvement
LKIN2018: leveraging Lean and Kanban to implement continuous improvementLKIN2018: leveraging Lean and Kanban to implement continuous improvement
LKIN2018: leveraging Lean and Kanban to implement continuous improvement
 
Lean Kanban India 2018 | Leveraging Lean and Kanban to implement Continuous ...
Lean Kanban India 2018 |  Leveraging Lean and Kanban to implement Continuous ...Lean Kanban India 2018 |  Leveraging Lean and Kanban to implement Continuous ...
Lean Kanban India 2018 | Leveraging Lean and Kanban to implement Continuous ...
 
Agile survival kit
Agile survival kitAgile survival kit
Agile survival kit
 
Scrumhub scrum-guide-2016
Scrumhub scrum-guide-2016Scrumhub scrum-guide-2016
Scrumhub scrum-guide-2016
 
Kanban Methodology
Kanban MethodologyKanban Methodology
Kanban Methodology
 
Archana Joshi Aug 2013 Kanban Spin Pune
Archana Joshi Aug 2013 Kanban Spin Pune Archana Joshi Aug 2013 Kanban Spin Pune
Archana Joshi Aug 2013 Kanban Spin Pune
 
LEAN - What Does Kaizen Mean.ppt based on lean manufacturing
LEAN - What Does Kaizen Mean.ppt based on lean manufacturingLEAN - What Does Kaizen Mean.ppt based on lean manufacturing
LEAN - What Does Kaizen Mean.ppt based on lean manufacturing
 
Advanced kanban overview for waterfall & scrum practitioners (16x9 deck)
Advanced kanban overview for waterfall & scrum practitioners  (16x9 deck)Advanced kanban overview for waterfall & scrum practitioners  (16x9 deck)
Advanced kanban overview for waterfall & scrum practitioners (16x9 deck)
 
VSM
VSMVSM
VSM
 
Project Management Tool – Kanban Board
Project Management Tool – Kanban Board Project Management Tool – Kanban Board
Project Management Tool – Kanban Board
 
Cellular manufacturing
Cellular manufacturingCellular manufacturing
Cellular manufacturing
 

Recently uploaded

CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptxCFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
R&R Consult
 
The Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdfThe Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdf
Pipe Restoration Solutions
 
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdfAKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
SamSarthak3
 
Planning Of Procurement o different goods and services
Planning Of Procurement o different goods and servicesPlanning Of Procurement o different goods and services
Planning Of Procurement o different goods and services
JoytuBarua2
 
COLLEGE BUS MANAGEMENT SYSTEM PROJECT REPORT.pdf
COLLEGE BUS MANAGEMENT SYSTEM PROJECT REPORT.pdfCOLLEGE BUS MANAGEMENT SYSTEM PROJECT REPORT.pdf
COLLEGE BUS MANAGEMENT SYSTEM PROJECT REPORT.pdf
Kamal Acharya
 
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
obonagu
 
WATER CRISIS and its solutions-pptx 1234
WATER CRISIS and its solutions-pptx 1234WATER CRISIS and its solutions-pptx 1234
WATER CRISIS and its solutions-pptx 1234
AafreenAbuthahir2
 
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Dr.Costas Sachpazis
 
Quality defects in TMT Bars, Possible causes and Potential Solutions.
Quality defects in TMT Bars, Possible causes and Potential Solutions.Quality defects in TMT Bars, Possible causes and Potential Solutions.
Quality defects in TMT Bars, Possible causes and Potential Solutions.
PrashantGoswami42
 
Automobile Management System Project Report.pdf
Automobile Management System Project Report.pdfAutomobile Management System Project Report.pdf
Automobile Management System Project Report.pdf
Kamal Acharya
 
HYDROPOWER - Hydroelectric power generation
HYDROPOWER - Hydroelectric power generationHYDROPOWER - Hydroelectric power generation
HYDROPOWER - Hydroelectric power generation
Robbie Edward Sayers
 
Water Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdfWater Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation & Control
 
block diagram and signal flow graph representation
block diagram and signal flow graph representationblock diagram and signal flow graph representation
block diagram and signal flow graph representation
Divya Somashekar
 
J.Yang, ICLR 2024, MLILAB, KAIST AI.pdf
J.Yang,  ICLR 2024, MLILAB, KAIST AI.pdfJ.Yang,  ICLR 2024, MLILAB, KAIST AI.pdf
J.Yang, ICLR 2024, MLILAB, KAIST AI.pdf
MLILAB
 
DESIGN A COTTON SEED SEPARATION MACHINE.docx
DESIGN A COTTON SEED SEPARATION MACHINE.docxDESIGN A COTTON SEED SEPARATION MACHINE.docx
DESIGN A COTTON SEED SEPARATION MACHINE.docx
FluxPrime1
 
Forklift Classes Overview by Intella Parts
Forklift Classes Overview by Intella PartsForklift Classes Overview by Intella Parts
Forklift Classes Overview by Intella Parts
Intella Parts
 
TECHNICAL TRAINING MANUAL GENERAL FAMILIARIZATION COURSE
TECHNICAL TRAINING MANUAL   GENERAL FAMILIARIZATION COURSETECHNICAL TRAINING MANUAL   GENERAL FAMILIARIZATION COURSE
TECHNICAL TRAINING MANUAL GENERAL FAMILIARIZATION COURSE
DuvanRamosGarzon1
 
power quality voltage fluctuation UNIT - I.pptx
power quality voltage fluctuation UNIT - I.pptxpower quality voltage fluctuation UNIT - I.pptx
power quality voltage fluctuation UNIT - I.pptx
ViniHema
 
Immunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary AttacksImmunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary Attacks
gerogepatton
 
LIGA(E)11111111111111111111111111111111111111111.ppt
LIGA(E)11111111111111111111111111111111111111111.pptLIGA(E)11111111111111111111111111111111111111111.ppt
LIGA(E)11111111111111111111111111111111111111111.ppt
ssuser9bd3ba
 

Recently uploaded (20)

CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptxCFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
 
The Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdfThe Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdf
 
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdfAKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
 
Planning Of Procurement o different goods and services
Planning Of Procurement o different goods and servicesPlanning Of Procurement o different goods and services
Planning Of Procurement o different goods and services
 
COLLEGE BUS MANAGEMENT SYSTEM PROJECT REPORT.pdf
COLLEGE BUS MANAGEMENT SYSTEM PROJECT REPORT.pdfCOLLEGE BUS MANAGEMENT SYSTEM PROJECT REPORT.pdf
COLLEGE BUS MANAGEMENT SYSTEM PROJECT REPORT.pdf
 
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
 
WATER CRISIS and its solutions-pptx 1234
WATER CRISIS and its solutions-pptx 1234WATER CRISIS and its solutions-pptx 1234
WATER CRISIS and its solutions-pptx 1234
 
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
 
Quality defects in TMT Bars, Possible causes and Potential Solutions.
Quality defects in TMT Bars, Possible causes and Potential Solutions.Quality defects in TMT Bars, Possible causes and Potential Solutions.
Quality defects in TMT Bars, Possible causes and Potential Solutions.
 
Automobile Management System Project Report.pdf
Automobile Management System Project Report.pdfAutomobile Management System Project Report.pdf
Automobile Management System Project Report.pdf
 
HYDROPOWER - Hydroelectric power generation
HYDROPOWER - Hydroelectric power generationHYDROPOWER - Hydroelectric power generation
HYDROPOWER - Hydroelectric power generation
 
Water Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdfWater Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdf
 
block diagram and signal flow graph representation
block diagram and signal flow graph representationblock diagram and signal flow graph representation
block diagram and signal flow graph representation
 
J.Yang, ICLR 2024, MLILAB, KAIST AI.pdf
J.Yang,  ICLR 2024, MLILAB, KAIST AI.pdfJ.Yang,  ICLR 2024, MLILAB, KAIST AI.pdf
J.Yang, ICLR 2024, MLILAB, KAIST AI.pdf
 
DESIGN A COTTON SEED SEPARATION MACHINE.docx
DESIGN A COTTON SEED SEPARATION MACHINE.docxDESIGN A COTTON SEED SEPARATION MACHINE.docx
DESIGN A COTTON SEED SEPARATION MACHINE.docx
 
Forklift Classes Overview by Intella Parts
Forklift Classes Overview by Intella PartsForklift Classes Overview by Intella Parts
Forklift Classes Overview by Intella Parts
 
TECHNICAL TRAINING MANUAL GENERAL FAMILIARIZATION COURSE
TECHNICAL TRAINING MANUAL   GENERAL FAMILIARIZATION COURSETECHNICAL TRAINING MANUAL   GENERAL FAMILIARIZATION COURSE
TECHNICAL TRAINING MANUAL GENERAL FAMILIARIZATION COURSE
 
power quality voltage fluctuation UNIT - I.pptx
power quality voltage fluctuation UNIT - I.pptxpower quality voltage fluctuation UNIT - I.pptx
power quality voltage fluctuation UNIT - I.pptx
 
Immunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary AttacksImmunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary Attacks
 
LIGA(E)11111111111111111111111111111111111111111.ppt
LIGA(E)11111111111111111111111111111111111111111.pptLIGA(E)11111111111111111111111111111111111111111.ppt
LIGA(E)11111111111111111111111111111111111111111.ppt
 

Patton kanban 1

  • 1. Using Kanban Techniques to Control Incremental Development Jeff Patton AgileProductDesign.com jpatton@acm.org Download this presentation at: www.agileproductdesign.com/downloads/patton_kanban.ppt
  • 2. In this short talk we’ll cover: 1. What is a Kanban System and how does it apply to software development? 2. How to set up a development team Kanban System 3. Applying Lean thinking to software development 2
  • 3. –看板 Kanban cards limit excess work in progress –看板 Kanban literally means “visual card,” “signboard,” or “billboard.” Toyota originally used Kanban cards to limit the amount of inventory tied up in “work in progress” on a manufacturing floor Not only is excess inventory waste, time spent producing it is time that could be expended elsewhere Kanban cards act as a form of “currency” representing how WIP is allowed in a system. 3
  • 4. Kanban simulation Let’s simulate a simple process, then see if we can improve it by adding a Kanban system. I’ll need 5 volunteers to manufacture the latest in high-tech aircraft 4
  • 5. Why use Kanban in Software Development? (we’re not building aircraft – or anything tangible really) 5
  • 6. Time-boxed iterative development has challenges Common problems include: •Short time-boxes give more frequent opportunity to measure progress and inspect software but force development items to be smaller •Smaller development items are often too small to be valuable and difficult to identify •Quality of requirements suffers as analysts rush to prepare for upcoming cycles •Quality of current development suffers when busy analysts are unable to inspect software or answer questions during development •Quality often suffers as testers race to complete work late in the development time-box 6
  • 7. Inside an iteration, effort across roles is uneven Development work often continues throughout a cycle while testing starts late and never seems to get enough time7
  • 8. Using a Kanban approach in software drops time- boxed iterations in favor of focusing on continuous flow. 8
  • 9. How to set up a simple Kanban system for a software development team. 9
  • 10. 1. Define a work process flow Look at the typical flow for features, stories, or work packages and describe typical process steps This simple process flow has the steps: 1.elaboration & acceptance criteria 2.development 3.test 4.deployment 10
  • 11. 2. Lay out a visual Kanban board Place a goals column on the left, then a waiting queue, the process steps, and a final “done” column to the right Place an expedite track above the main left to right queue Place “done and waiting” queues between each work queue (in this example they’re placed below) 11
  • 12. 3. Decide on limits for items in queue and work in progress A good limit is a factor of the number of people in a role that can work on an item in a given process step. Start with number of people * 1.5 This board uses painters tape to indicate available “slots” for work in progress 12
  • 13. 4. Place prioritized goals on the left column of the board A good goal describes the outcome we hope to achieve after software ships. Goals help keep focus on the larger outcome. Having goals visible: •promotes focus •helps us prioritize •helps us manage feature scope & requirements 13
  • 14. 5. Start the board by placing stories or features in queue Mark on the story or feature card the date it entered the queue. This begins our measurement of cycle time. Product owners manage the waiting queue 14
  • 15. 6. Move features through the process flow as work is completed As the story enters the first process step, mark that date on the card. This is the start date. As it’s finished, mark that date on the card. This is the finish date. 15
  • 16. 7. Use the dates on the cards to calculate cycle time Use average cycle time to set wait times from different points on the board. Pay attention to flow and bottlenecks: relieving bottlenecks as quickly as possible. Cycle time = finish date – start date The average cycle time from the date the item enters the board is the wait time from this point in the queue 16
  • 17. Display and manage cycle times Reduce the number of Kanban slots allowed until cycle time remains unchanged Reduce the size of development items •Work in progress is actually the number of items * the average size of items Identify and act on bottlenecks immediately •Relieve repeated bottlenecks by changing the number and types of people in each role and cross training Disneyland’s public display of cycle-times 17
  • 23. Explode large process steps into tasks to improve visibility When a feature, user story, or work item is large:  Takes longer than a couple days to complete  Requires that multiple people collaborate on its completion Decompose that step into cards to track independently Feature to develop Tasks in queue Tasks in progress Tasks complete Feature complete 23
  • 24. Kanban Board with Task Decomposition 24
  • 25. Use cumulative flow diagrams to visualize work in progress www.agilemanagement.net/Articles/Papers/BorConManagingwithCumulat.html 25
  • 26. Use cumulative flow diagrams to visualize work in progress www.agilemanagement.net/Articles/Papers/BorConManagingwithCumulat.html 26
  • 27. Keep time-boxed product and process inspection Keep regular time-boxes in your process as a cue for product inspection: •Evaluate the quality of the growing product from a functional, engineering, and user experience perspective Evaluate your pace of development: •Look at the number of development items completed relative to goals •Look at the average cycle time per development item •Calculate the ratio of developer days per completed item. Use this ratio to estimate the completion time for undeveloped items •Adjust your development plan as necessary Evaluate and adjust the process you’re using •Use a process reflection session to identify changes you could make to improve your product or pace Ending cycles right: http://www.stickyminds.com/s.asp?F=S14865_COL_2 27
  • 28. Begin looking at your process using Lean thinking Cockburn’s Software Engineering in the 21st Century: http://alistair.cockburn.us/Software+engineering+in+the+21st+century.ppt 28
  • 29. Since we’re engaged in “knowledge work” look at the cycle time of validated decisions, or knowledge Cockburn’s Software Engineering in the 21st Century: http://alistair.cockburn.us/Software+engineering+in+the+21st+century.ppt 29
  • 30. Often the feedback loop is overlooked – it’s the invisible backed-up queue Cockburn’s Software Engineering in the 21st Century: http://alistair.cockburn.us/Software+engineering+in+the+21st+century.ppt 30
  • 31. Setting up a simple Kanban system starts to focus the team on the cycle-time of delivered work and gives a way to detect and begin to resolve bottlenecks 31
  • 32. 33 • Anderson, Kanban in Action: http://www.agilemanagement.net/Articles/Weblog/KanbaninAction.ht ml • Hiranabe, Kanban Applied to Software Development: from Agile to Lean: http://www.infoq.com/articles/hiranabe-lean-agile-kanban • Ladas, Scrumban - Essays on Kanban Systems for Lean Software Development: http://www.lulu.com/content/3864767 • Ladas, Scrum-ban: http://leansoftwareengineering.com/ksse/scrum-ban/ • Belshee, Naked Planning, Kanban Simplified: http://joearnold.com/2008/03/naked-planning-kanban- simplified/ Kanban References: