Kanban 101Improving Economic OutcomesThrough Evolutionary Change
What is Kanban?Kanban is a method to:enable evolutionary change …help implement and scale Agile …establish a culture of ongoing improvement.
Roots of Kanban: LeanMuda, Muri, MuraWaste, Unreasonableness, UnevennessGoals of LeanImprove Quality, Eliminate Waste, Reduce Time, Reduce Total Costs
System of Profound KnowledgeHow to achieve evolutionary change, implement and scale Agile, establish a culture of ongoing improvement?Understand the systemOperate with variabilityUnderstand how to act on the systemUnderstand human psychologyPDSAPlan, Do, Study, AdjustBut the cycles have to be very fast
Roots of Kanban: Opposite of PushPush Systems: Plan-DrivenGantt ChartStart as soon as possibleCommitted Finish DatesDrives delaying and value destroying behavior
How Push Creates Value Destroying BehaviorStart date is planned up frontFinish date is planned up frontBut we don’t know exactly what we need to build and how long it will take to build it(how long will it take to test and fix the problems you find on a piece of code we haven’t clearly defined?)So we estimate at the 99% likelihood for each task – which is typically double the likely duration.Because we are focused on the Finish Date we operate with the 50% duration in mind and deliver late 50% of the time anyway.So we add more pad to our estimates.Ensures late delivery or excessive padding in estimates (usually both)
Roots of Kanban: PullKanban: a card that represents a unit of workFlow work in single units or small batchesPace the work by limiting WIPUse signaling to trigger pullThe number of kanban equals capacityNew work can start only when a space is availableA space becomes available when previous work is completeLevel of mix and quantity to spread risk and optimize portfolio
Types of PullMaintaining the system at the pace of the bottleneck (Herbie) – breaks down when a failure occurs before the bottleneckDBRCapWIPConWIPKanbanDBR with protective WIP limit before the bottleneck – for when a failure occurs before the bottleneckIn a stochastic process, the bottleneck moves – ConWIP provides protective WIP limit across the system – doesn’t highlight current bottleneckSupports a stochastic process - highlights current bottleneck
Kanban BoardAnalyze(3)Develop(5)Ready(5)Accept(3)Ready for ReleaseReady for AcceptReady for DevDevAnalyzeFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureColumns for each Work TypeFeatureFeatureFeatureFeatureUrgentAcceptance Tests Green
Manual Testing Okay
PO Acceptance
Doco Complete
Design Complete
Test Case Examples Done
UIX Input Ready
Code Complete
Source Checked In
Unit Tests Green
Build SucceedsCriteria
Kanban BoardAnalyze(3)Develop(5)Ready(5)Accept(3)Ready for ReleaseReady for AcceptReady for DevDevAnalyzeFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureWIP Limits –Maximum number of kanban in each columnFeatureFeatureFeatureFeatureUrgentAcceptance Tests Green
Manual Testing Okay
PO Acceptance
Doco Complete
Design Complete
Test Case Examples Done
UIX Input Ready
Code Complete
Source Checked In
Unit Tests Green
Build SucceedsCriteria
Kanban BoardAnalyze(3)Develop(5)Ready(5)Accept(3)Ready for ReleaseReady for AcceptReady for DevDevAnalyzeFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureSplit Work Types between doing and doneFeatureUrgentAcceptance Tests Green
Manual Testing Okay
PO Acceptance
Doco Complete
Design Complete

Kanban 101

  • 1.
    Kanban 101Improving EconomicOutcomesThrough Evolutionary Change
  • 2.
    What is Kanban?Kanbanis a method to:enable evolutionary change …help implement and scale Agile …establish a culture of ongoing improvement.
  • 3.
    Roots of Kanban:LeanMuda, Muri, MuraWaste, Unreasonableness, UnevennessGoals of LeanImprove Quality, Eliminate Waste, Reduce Time, Reduce Total Costs
  • 4.
    System of ProfoundKnowledgeHow to achieve evolutionary change, implement and scale Agile, establish a culture of ongoing improvement?Understand the systemOperate with variabilityUnderstand how to act on the systemUnderstand human psychologyPDSAPlan, Do, Study, AdjustBut the cycles have to be very fast
  • 5.
    Roots of Kanban:Opposite of PushPush Systems: Plan-DrivenGantt ChartStart as soon as possibleCommitted Finish DatesDrives delaying and value destroying behavior
  • 6.
    How Push CreatesValue Destroying BehaviorStart date is planned up frontFinish date is planned up frontBut we don’t know exactly what we need to build and how long it will take to build it(how long will it take to test and fix the problems you find on a piece of code we haven’t clearly defined?)So we estimate at the 99% likelihood for each task – which is typically double the likely duration.Because we are focused on the Finish Date we operate with the 50% duration in mind and deliver late 50% of the time anyway.So we add more pad to our estimates.Ensures late delivery or excessive padding in estimates (usually both)
  • 7.
    Roots of Kanban:PullKanban: a card that represents a unit of workFlow work in single units or small batchesPace the work by limiting WIPUse signaling to trigger pullThe number of kanban equals capacityNew work can start only when a space is availableA space becomes available when previous work is completeLevel of mix and quantity to spread risk and optimize portfolio
  • 8.
    Types of PullMaintainingthe system at the pace of the bottleneck (Herbie) – breaks down when a failure occurs before the bottleneckDBRCapWIPConWIPKanbanDBR with protective WIP limit before the bottleneck – for when a failure occurs before the bottleneckIn a stochastic process, the bottleneck moves – ConWIP provides protective WIP limit across the system – doesn’t highlight current bottleneckSupports a stochastic process - highlights current bottleneck
  • 9.
    Kanban BoardAnalyze(3)Develop(5)Ready(5)Accept(3)Ready forReleaseReady for AcceptReady for DevDevAnalyzeFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureColumns for each Work TypeFeatureFeatureFeatureFeatureUrgentAcceptance Tests Green
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
    Kanban BoardAnalyze(3)Develop(5)Ready(5)Accept(3)Ready forReleaseReady for AcceptReady for DevDevAnalyzeFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureWIP Limits –Maximum number of kanban in each columnFeatureFeatureFeatureFeatureUrgentAcceptance Tests Green
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
    Kanban BoardAnalyze(3)Develop(5)Ready(5)Accept(3)Ready forReleaseReady for AcceptReady for DevDevAnalyzeFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureFeatureSplit Work Types between doing and doneFeatureUrgentAcceptance Tests Green
  • 32.
  • 33.
  • 34.
  • 35.

Editor's Notes

  • #21 A physical whiteboard or corkboard although electronic boards can also be usedKanbans indicate where in the process a piece of work isThe board is typically organized into columns, each one of which represents a stage in the process or a work buffer or queueOptional rows indicating the allocation of capacity to classes of serviceEach kanban should have sufficient information, such as the name and ID of the work item and due date (if any), to enable project-management decisions by the team without the direction of a managerThe goal is to visually communicate enough information to make the process self-organizing and self-expediting at the team level. The board is directly updated by team members throughout the day as the work proceedsHigh-level blocking issues are discussed during daily stand-up meetings – the board provides status.
  • #25 Limiting work in progress reduces average lead timeImproves the quality of the work produced and thereby increasesoverall productivity of your teamReducing lead time also increases your ability to deliver valuable functionality frequentlywhich helps to build trust with your stakeholdersEvery team is different, you will have different WIP limits that you'll need to set and then evolve yourself based on empirical results from experimentation