Kanban Overview

Vít Kotačka, ICS Team Leader
6. 11. 2013
What is Kanban?
Kanban is a method for managing knowledge work with an
emphasis on just-in-time delivery while not overloading the team
members. In this approach, the process, from definition of a task
to its delivery to the customer, is displayed for participants to see
and developers pull work from a queue.
(source Wikipedia)

In software development, we are using a virtual kanban system to
limit (team's) work-in-progress ... to a set capacity and to balance
the demand on the team against the throughput of their delivered
work. By doing this we can achieve a sustainable pace of
development so that all individuals can achieve a work versus
personal life balance.
(source Kanban by David J. Anderson)

2
What Kanban Is Not?
Kanban is not:
a methodology.
a process (for software development).
an agile practise.
a project management tool.
a silver bullet.

3
Benefits of Kanban
It eliminates waste from the process.
Reducing work-in-progress improves quality.
Improved quality improves trust with downstream partners.
Process improvement leads to greater productivity and greater
predictability.
It enables incremental changes
with reduced political risk,
with minimal resistence.

It provides transparency on both the work and the process
through which the work flows.
Individuals are more likely to give of their time and collaborate
when they can see the effect it will have.
(source Kanban by David J. Anderson)

4
Origins of Kanban
Toyota Production System (TPS)
Lean Software Development
Drum-Buffer-Rope (DBR) methodology

(picture source: Wikipedia.org)

5
Five Core Properties
1.
2.
3.
4.
5.

6

Visualize Workflow
Limit Work-in-Progress
Measure and Manage Flow
Make Process Policies Explicit
Use Models to Recognize Improvement Opportunities
Visualize Workflow
Split the work into pieces, write each item on a card, and put the
card on the wall.
Use named columns to illustrate where each item is in the
workflow.
(source Lean from the Trenches by Henrik Kniberg)

7
Limit Work-in-Progress
Assign explicit limits to how many items may be in progress at
each workflow state.
(source Lean from the Trenches by Henrik Kniberg)

8
Measure and Manage Flow
The flow of work should be measured, so the
continuous, incremental changes to the system can be evaluated.
Cumulative Flow Diagram is very offen used for visualization.

9
Make Process Policies Explicit
There should be explicit definition and understanding of the
(project) policies, so that issues can be rationaly and objectively
discussed, mitigated and improved.

Policies can be about:
Definition of Done (DoD)
Work-in-progress (WIP)
Issues addressing and escalation
Responsibility during process states

10
Use Models to Recognize Improvement Opportunities
By modeling the workflow of a software development lifecycle as
a value stream and then creating a tracking and visualization
system to track state changes of emerging work as it „flowed“
through the system, I could see bottlenecks. The ability to identify
a bottleneck is the first step in the underlying model for the Theory
of Constraints.
(source Kanban by David J. Anderson)

Common models are:
Theory of Constraints (the study of bottlenecks)
Deming System of Profound Knowledge (a study of variation)
Lean economic model (concept of „waste“)
(source Wikipedia)

11
Resources
Kanban by David J. Anderson

Lean from the Trenches by Henrik Kniberg

12

Kanban Overview

  • 1.
    Kanban Overview Vít Kotačka,ICS Team Leader 6. 11. 2013
  • 2.
    What is Kanban? Kanbanis a method for managing knowledge work with an emphasis on just-in-time delivery while not overloading the team members. In this approach, the process, from definition of a task to its delivery to the customer, is displayed for participants to see and developers pull work from a queue. (source Wikipedia) In software development, we are using a virtual kanban system to limit (team's) work-in-progress ... to a set capacity and to balance the demand on the team against the throughput of their delivered work. By doing this we can achieve a sustainable pace of development so that all individuals can achieve a work versus personal life balance. (source Kanban by David J. Anderson) 2
  • 3.
    What Kanban IsNot? Kanban is not: a methodology. a process (for software development). an agile practise. a project management tool. a silver bullet. 3
  • 4.
    Benefits of Kanban Iteliminates waste from the process. Reducing work-in-progress improves quality. Improved quality improves trust with downstream partners. Process improvement leads to greater productivity and greater predictability. It enables incremental changes with reduced political risk, with minimal resistence. It provides transparency on both the work and the process through which the work flows. Individuals are more likely to give of their time and collaborate when they can see the effect it will have. (source Kanban by David J. Anderson) 4
  • 5.
    Origins of Kanban ToyotaProduction System (TPS) Lean Software Development Drum-Buffer-Rope (DBR) methodology (picture source: Wikipedia.org) 5
  • 6.
    Five Core Properties 1. 2. 3. 4. 5. 6 VisualizeWorkflow Limit Work-in-Progress Measure and Manage Flow Make Process Policies Explicit Use Models to Recognize Improvement Opportunities
  • 7.
    Visualize Workflow Split thework into pieces, write each item on a card, and put the card on the wall. Use named columns to illustrate where each item is in the workflow. (source Lean from the Trenches by Henrik Kniberg) 7
  • 8.
    Limit Work-in-Progress Assign explicitlimits to how many items may be in progress at each workflow state. (source Lean from the Trenches by Henrik Kniberg) 8
  • 9.
    Measure and ManageFlow The flow of work should be measured, so the continuous, incremental changes to the system can be evaluated. Cumulative Flow Diagram is very offen used for visualization. 9
  • 10.
    Make Process PoliciesExplicit There should be explicit definition and understanding of the (project) policies, so that issues can be rationaly and objectively discussed, mitigated and improved. Policies can be about: Definition of Done (DoD) Work-in-progress (WIP) Issues addressing and escalation Responsibility during process states 10
  • 11.
    Use Models toRecognize Improvement Opportunities By modeling the workflow of a software development lifecycle as a value stream and then creating a tracking and visualization system to track state changes of emerging work as it „flowed“ through the system, I could see bottlenecks. The ability to identify a bottleneck is the first step in the underlying model for the Theory of Constraints. (source Kanban by David J. Anderson) Common models are: Theory of Constraints (the study of bottlenecks) Deming System of Profound Knowledge (a study of variation) Lean economic model (concept of „waste“) (source Wikipedia) 11
  • 12.
    Resources Kanban by DavidJ. Anderson Lean from the Trenches by Henrik Kniberg 12