Professional Documents
Culture Documents
Demystifying Kanban: by Al Shalloway
Demystifying Kanban: by Al Shalloway
Demystifying Kanban
by Al Shalloway
Demystifying Kanban
A Net Objectives Essential White Paper
Net Objectives Press, a division of Net Objectives
1037 NE 65th Street Suite #362
Seattle, WA 98115-6655
404-593-8375
Notice of Rights
No part of this publication may be reproduced, or stored in a retrieval system or transmitted in any form or by any
means, electronic, mechanical, photocopying, recording, or otherwise without the written consent of Net Objectives,
Inc.
Notice of Liabilities
The information in this book is distributed on an “As Is” basis without warranty. While every precaution has been taken
in the preparation of this book, neither the authors nor Net Objectives shall have any liability to any person or entity
with respect to any loss or damage caused or alleged to be caused directly or indirectly by the instructions contained in
this book or by the computer or hardware products described in it.
10 9 8 7 6 5 4 3 2
Printed in the United States of America
Demystifying Kanban | 1
This article was first printed in Cutter IT Jour- These Agile methods require cross-functional
nal, March 2011, Vol. 24, No. 3, pp. 12-17. teams whose members focus only on their team’s
work. A cross-functional team is one that contains
most or all of the resources needed to perform the
Ask the question “What is Kanban for software activities required to deliver product: analysis,
development?” and you are likely to get many dif- design, coding, and testing. If you can afford it,
ferent answers. It is a powerful, new method that cross-functional teams are indeed powerful; in
addresses challenges previous methods have not. fact, you may gain as much value merely from em-
It is a transition management system. It is a more ploying cross-functional teams as you would from
effective method for teams to deliver business using an Agile method.1,2 The reality, however, is
value incrementally. It is a way to create visibility that many organizations cannot afford wide-scale
for executives to improve product portfolio man- deployment of exclusive cross-functional teams.
agement. It is all of those things and more. It is This is an impediment to scaling these methods to
like that Saturday Night Live spoof in which Gilda the enterprise.
Radner and Dan Aykroyd argue over whether New
Shimmer is a floor wax or a dessert topping; they Another impediment is that team-based Agile
finally decide it’s both! methods do not effectively address one of the
most common problems in development: more
In this article, I describe Kanban as a systems ap- things being pushed onto teams than they can
proach to software development that affects many handle. Team-based approaches start at the
different types of behaviors. I also mention a few wrong end, attempting to insulate or protect the
of the common misconceptions people have about team from intrusions. This fails to address overall
Kanban in order to help clarify what Kanban is capacity, has the side effect of isolating teams from
and is not. management, and actually works against scaling.3
The better approach is to provide visibility to
ITERATIVE AGILE those generating work — executives and manage-
Agile software development has been embraced ment — so they can see the impact of overloading
by many in the software industry. First-generation teams. They need to see this both at an individual
Agile methods, such as Scrum and XP, took an in-
cremental approach based on well-defined, time- Alan Shalloway is the founder
boxed iterations (which Scrum calls “sprints”). and CEO of Net Objectives. With
The team commits to building a certain number of over 40 years’ experience, Mr.
product features they feel they can reasonably ac- Shalloway is an industry thought
complish within that increment. At the end, they leader in Lean, Kanban, Scrum, and
see how they performed so that they can refine design patterns. He helps compa-
their commitments for the next time-box. nies transition to lean and Agile
methods enterprise-wide and teaches courses in these
The advantages of an incremental approach in- areas. Mr. Shalloway has developed training and coaching
clude: methods for Lean-Agile that have helped his clients
achieve long-term, sustainable productivity gains. He is
•• Promoting an understanding of the need for the primary author of Design Patterns Explained: A New
prioritization Perspective on Object- Oriented Design, Lean-Agile
•• Requiring the team to finish the work they Pocket Guide for Scrum Teams, and Lean-Agile Software
have started Development: Achieving Enterprise Agility and is
•• Protecting the team from interruptions and currently writing Essential Skills for the Agile Developer.
distractions Mr. Shalloway is a popular speaker at prestigious
•• Defining regular intervals for the business to conferences worldwide and a cofounder and board
adjust priorities in order to ensure the team member of the Lean Software and Systems Consortium.
Mr. Shalloway has a master’s degree in computer science
is working on the right things
from MIT and a master’s degree in mathematics from
•• Defining regular intervals both to Emory University. He can be reached at alshall@
demonstrate what has been built and to gain netobjectives.com.
user feedback while it is still useful
team level and, more importantly, for the entire lowers quality, and harms capacity. Getting to a
value stream.4 Creating agility at scale requires an sustainable load requires focusing on how many
approach that handles the entire value stream. things a person is working on at any one time: too
few results in ineffective loading of the team; too
ABOUT KANBAN many results in additional work caused by delays.
Based on lean principles and the theory of con- Time-boxing does help with this because the team
straints, Kanban is a second-generation Agile ap- limits the amount of work they will allow into
proach that addresses the entire value stream and the iteration. The problem has been made small
overcomes the challenges inherent in team-based enough for the team to handle — however, it is not
Agile approaches such as Scrum and XP. The mo- helpful to anyone else. Everyone else must adjust
tivations behind Kanban include:5 work and priorities to accommodate the team.
•• Controlling the rate of transition. First- Kanban has a different focus. It is based on a com-
generation methods often require traumatic mitment to optimizing the flow of work across the
change to the people and structures in the entire value stream: the work that is done from
organization. when an idea is initiated until it is consumed by
•• Allocating specialized skill sets, domain the customer (internal or external). This broader
knowledge, or knowledge of legacy perspective enables a business-driven approach.
code effectively across the organization. Kanban’s methods provide for team management
Dedicated and relatively static teams, while within the context of the broader value stream. It
desirable, are usually not practical in this requires participants across the value stream to
regard. understand the lean tenet of avoiding too much
work in progress (WIP) and the techniques for
•• Enabling participation of management doing that. Kanban assumes that improvements
and leadership. Scrum often marginalizes are desired beyond just individual team perfor-
management. mance. What is Kanban’s method for avoiding too
•• Providing teams with guiding principles, much WIP? It takes the following approach:6
especially the principles of lean and the 1. Make all work visible.
theory of constraints. 2. Have management and the team agree on
•• Providing a better way to learn how to a set of goals. This involves those upstream
improve. End-of-iteration retrospectives are of the team, the team itself, and those
too narrow and too late to be valuable over the downstream.
long haul. 3. Define where the Kanban method will be
•• Enabling teams to work on the right- applied. For example, Kanban addresses the
sized chunks. With time-boxing, work team’s work from the point at which they
gets squeezed into a predefined period and consider items on their backlog until they
unrelated bits of work get grouped into one deliver that work to customer support.
sprint. 4. Create a board that reflects the team’s flow
of work.
In this section, I will describe how Kanban acts as: 5. Educate the team on the principles of flow
•• A Lean-Agile team method and pull.
•• A transition management system
•• A means of learning MISCONCEPTION: KANBAN IS SCRUM
•• An aid to product portfolio management WITHOUT ITERATIONS
6. Start managing the work with pull methods •• Kanban does not require time-boxing and
and set WIP limits that maximize flow therefore decouples these event points
through the system. by allowing them to happen at different
7. Define explicit policies that control the flow times. However, most Kanban teams
of work and continuously improve them. have found it useful to update and review
Here is one more issue to consider under the topic Kanban backlogs at regular intervals. This is
of team management: managing the various points called the “cadence” of the team. Be clear,
of interface with the business. There are at least however, that this is not the same as a time-
four: box.
This approach to improvement requires high-qual- on but then grow stale as changes produce less
ity conversations between the various stakehold- dramatic results. What to do? You could tell teams
ers, developers, and leaders. They need to remem- just to keep at it, to limit the number of changes in
ber what has been agreed to (the current basis), each sprint, or to learn how to run retrospectives
know the facts about what is happening (the more effectively. But these don’t attack the real
current situation), and be clear about what will problem: focusing too much on the local team and
change (the new basis). Kanban requires both the not the larger value stream.
work itself and how the work is done to be clear
The problem is that learning at set stages is not
to everyone. This means using explicit process
nearly as valuable as learning continuously. De-
policies to define the basis of work. Improvement
velopers are an interesting lot. One of their bigger
happens by:
strengths is their passion. Yet it is just this passion
•• Identifying problem areas by measuring that often prevents them from stepping back and
queues on the Kanban board seeing if there are better ways to do things (hence
•• Developing a new or revised policy or the prescribed Scrum retrospective). Through the
changing the current WIP limit use of the Kanban board, which makes visible the
•• Seeing what the effect these steps have on consequences of the team’s decisions, Kanban pro-
smoothing out queues vides a way to learn continuously. Team members
no longer need to “step back” to learn.
Kanban focuses the team’s energies on improv-
ing those areas in the value stream that are truly The use of explicit policies in Kanban helps people
constraining other work (and thus, harming flow validate their understanding about what to do.
through the value stream). It helps avoid wasting And it enables both teams and management to see
time on activities that do not really help flow. By cause and effect whenever they make a change;
having a before, during, and after action method thus small adjustments lead to quick results.8
of making small changes, the team learns what
works and what doesn’t.
One of the most chronic and severe problems
Here is an example. Say there is a bottleneck in facing software development today is that teams
getting things tested. With Kanban, the queue of are overloaded with work.
work in front of the testing team reaches a limit
so it cannot receive any more work. Developers
are restricted from doing more coding. This is
good, because coding more in this situation would Kanban as an Aid to Product Portfolio
be counterproductive — it would just increase Management
the time between coding and testing even more.
One of the most chronic and severe problems fac-
Looking at the queues, it becomes obvious that
ing software development today is that teams are
the team needs to determine how to get testing
overloaded with work. Working on multiple things
more in step with coding. Perhaps the team will
obviously delays the delivery of any one particular
decide to do coding and testing together;7 perhaps
item, but what is not as obvious is that the delays
they will get more testers or off-load other work
between the different work steps (e.g., writing a
from the testers so they can concentrate on test-
story and coding it, or coding a story and testing
ing. Kanban does not specify the solution, but it
it) can actually increase the amount of work to be
does identify the problem and the result needed to
done. This is because work often has to be redone
solve it (i.e., reducing the queues).
(as in the case of requirements) or what was in the
Kanban’s learning method is therefore integrated
into its management method. This is both its pow-
er and why it is sometimes not fully appreciated. While it is true that Kanban requires a certain
In team-based Agile methods, much of the learn- understanding of lean principles, it doesn’t
ing occurs at the end-of-iteration retrospectives. require organizations to learn prescribed
These retrospectives produce useful results early practices and roles to get started.
short-term memory of the developers has to be the other product managers. They demanded that
relearned in order to complete the task (as in the the first product manager explain why expedit-
case of debugging).9 ing his work at the expense of others’ was a good
decision for all involved. By creating visibility into
Managers become frustrated when jammed de-
the team’s process, Kanban clarified the impact of
velopment teams fall behind and actually demand
adding “just one more thing” to the team’s load.
that they do more — creating even bigger jams. To
All the product managers could see the impact of
break this cycle, it is not sufficient to simply im-
what, and how much, the team was being asked to
prove a team; you must help management under-
do. In this way, Kanban helps organizations avoid
stand the impact of their demands. Through the
the local optimizations that team-focused meth-
Kanban board, Kanban offers explicit tools that
ods tend to inadvertently encourage.
provide visibility and help management make ap-
propriate decisions about tasks based on business
value. The result is that teams are less overworked SOME COMMON MISCONCEPTIONS ABOUT
and more focused on the right things. KANBAN
Let me close with a few comments about some
In Kanban’s flow model, in which team members
other Kanban misconceptions:
just pull things off the backlog whenever they are
ready, new items coming in can be worked on very •• Kanban has been successful because it is
quickly. Unfortunately, time-boxed methods re- being done by early adopters. Actually,
quire teams to wait until the beginning of the next Kanban is being used by several different
iteration to take on something new or unexpected, camps. First, there are the early adopters,
things that are all too common: Severity 1 errors, who have created and refined it. They created
demands from an irate client, an executive’s “good Kanban software development to benefit the
idea,” and so on. Scrum lacks an explicit way to other two camps, the first of which are those
handle these situations. While it would like to pro- who found other Agile methods difficult to
tect the team from such interruptions, in reality apply. The second are those who were late
the team gets pressured to add in the extra work, adopters to Scrum because Scrum required
but they have no way to demonstrate the impacts too much change to adopt. In addition, the
of this to management. success of Kanban has led many organizations
new to Agile to adopt it directly.
In his book Kanban: Successful Evolutionary
Change for Your Technology Business, David J. •• It is better to start with Scrum and then
Anderson offers a great example of how visibility move to Kanban. This idea originated with
can help managers make good decisions. In the ex- the Scrum community, and I have always
ample, a team agreed that product managers could considered it a bit self-serving. While it is true
ask the team to work on an urgent item even if it that Kanban requires a certain understanding
caused them to exceed their WIP limit. However, of lean principles, it doesn’t require
they would not be asked to work on more than organizations to learn prescribed practices
one urgent item at any one time. Their history of and roles to get started. Many teams do start
managing via WIP limits had demonstrated that with Scrum and then move to Kanban, but
going beyond them would slow the team down, typically only because they were not aware of
but they also recognized that at times an urgent Kanban at the beginning.
situation demands that. •• Kanban is mostly good for support. Many
Sure enough, the day arrived when a manager practitioners started using Kanban in support
played the “expedite” card. Interestingly enough, environments where it didn’t make sense
David did not challenge it. If it made business to batch up small pieces of work to create
sense to get something out the door at the expense sprints. However, other teams working on
of everything else, so be it — that was what the new projects with more sizeable features have
team needed to do, and it was a product manager’s found Kanban works equally well regardless
decision. But someone else should challenge the of feature size. In the same way that Kanban
decision, and someone did. That “someone” was provides a choice of using iterations or not, it