Kanban represents a unique way of catalyzing the application of Lean product development principles to software development, maintenance and operations. Being a method for driving change Kanban does not prescribe specific roles, practices or ceremonies but instead offers a series of principles to optimize value and flow in your software delivery system. As such, Kanban’s focus on context and adaptability has made it increasingly popular for teams working in contexts where traditional Agile methods are not an easy fit and mature Agile teams looking for ways to further optimize their development process.
When first introduced to these concepts many teams are however left with the questions: “How do we get started”? “Are there common behaviors or strategies that can help us take the plunge”? This is natural and people familiar with the Dreyfus model of skill acquisition will recognize that novices need rules, plans and even practices.
Therefore this mini-book offers an easy to follow 10 step guide to taking the initial plunge and start using Lean principles to optimizing value and flow in your system. Each step consists of a section explaining “why” followed by examples of specific tools, practices and rules that have helped other teams better understand and optimize their system. The author's hope is that this will make it easier for teams to get started and quickly understand the importance of value and flow by experiencing it first hand.
Table of Contents
Foreword, James Sutton
- When should I consider working with Kanban?
- What is Kanban?
- How do we get started with Kanban?
- Where can Kanban be used?
- Kanban Myths
Step 1: Visualize your workflow
- Understanding your software delivery system
- Visualizing your system
Step 2: Limit Work in Progress (WIP)
- Understanding WIP
- Visualizing WIP Limits
- Finding the right WIP limits
Step 3: Set Up Quality Assurance Policies and Make Them Explicit
- Understanding quality
- Visualizing policies
Step 4: Adjust Cadences
- Understanding Cadence
- Finding the right cadences
Step 5: Measure Flow
- Understanding Metrics
- What to measure?
- Cumulative flow diagrams (CFD)
- Reading the CFD
- Cycle time
- Defect rate
- Blocked Items
Step 6: Prioritize
- Cost of Delay (COD)
- Visualizing Priority
Step 7: Identify Classes of Service
- Types of work
- Define Classes of Service
- Visualizing Classes of Service
Step 8: Manage Flow
- Decision filters
- Optimize flow not utilization
- Relieve bottlenecks
- Introduce buffers
- Release planning
Step 9: Establish Service Level Agreements (SLA)
- Establishing the right Service Level Agreements
Step 10: Focus on Continuous Improvement
Good luck on your journey