Dav
id J
. An
de
rso
nLe
an K
anb
an B
ene
lux
Oct
ob
er 2
011
KanbanWhen is it not appropriate?
Understanding Options for Improvement
Economically balancecapability against demand
Goals for using Kanban
Available options
Risk Management is an Enabling Capability…
Tools For Risk Management…
Most processgeeks & IT managers are operating over here
Kanban is encouraging collaborative
conversations with other stakeholders to open up options
for improvement over here
Foundations of theKanban Method
My motivation for adopting
kanban systems was to
prevent muri, control mura
and encourage an evolutionary approach to change
Overburdening
Variability in Flow
Appropriateness Question #1
Does your process suffer fromoverburdening orvariability in flow?
What causes unevenness?1. Non-instant availability of specialist skills or
collaborators2. Information fails to arrive before it is
needed3. Hidden/Implicit classes of service that
cause work to be interrupted to process other work
4. Variety in work (complexity & size)5. Changing priorities related to variety in
risks associated with work (e.g. cost of delay)
6. Capacity constrained specialist skilled workers or other resources (e.g. test environments)
Are any of these present in your work environment?
Kanban may be appropriate for you!
Kanban is unnecessary where demand never exceeds capability and flow is
smooth and never interrupted!
If conditions of overburdening or unevenness in flow exist or
are likely to then use of a kanban system may be an
appropriate choice
In developing the
Kanban Method, a change
management approach that uses kanban systems to provoke change,
we are enabling the
emergence of Lean software
development in organizations
The Kanban approach to change is based on 3 principles
1. Start with what you do now
2. Agree to pursue incremental, evolutionary change
3. Initially, respect current processes, roles, responsibilities & job titles
adopt the 5 core practices that are observed
to be present in successful Kanban implementations
Then…
5 Core Practices for Successful Kanban Adoption
1. Visualize
2. Limit Work-in-Progress
3. Manage Flow
4. Make Process Policies Explicit
5. Improve Collaboratively(using models & scientific method)
Dep
th
Shallow
Deep
It’s a question of shallow or deep!
Shallow implementations tend to produce fewer,
less dramatic results
Doing Kanban is not a question of right or wrong …
Dep
th
Shallow
Deep
all 5 core practices are adopted they form the seed conditions for Kanban
as a complex adaptive system that enables a Lean(er)
way of working to emerge
When…
Kanban & the Cynefin Framework
Observation shows
mura & muri are
present respond with
a kanban system
Process is defined
No feedback loop
required
Implemented in a
single transition
Core practices of
Kanban reveal
problems
respond with a kaizen
event
Scale may require
multiple dependent
kanban systems
Use of risk profiling
and classes of service
Process improves
incrementallyFeedback loop required
Use of existing models
Highly predictable
improvement outcomes
Use policies to
create a container
within the kanban
system design to
control complex
emergent behavior
Change kanban
system design
(policies) to catalyze
(or probe) for desired
emergent outcomes
Use visualization &
metrics to reflect on
outcomes, new
models emerge,
complexity is reduced
Complex adaptive
systems -
independent agents
following simple rules
Feedback loops
Simple rules change
Kanban -
Simple rules made
visual & explicit
Feedback
Kaizen events –
adapt the rules
Systems (such as software
development systems)
exist in all 3
domains
simultaneously
Kanban is designed
to work in all 3
domains
simultaneously
Kanban is unlikely
to be useful in the
Chaotic domain or
in presence of
disorder
Kanban & Corporate Culture
Is your new CTO a revolutionary?
Not every senior leader is a revolutionary
But many feel the need to shake things up and leave their mark
Carly Fiorina
Your boss may lack the
patience to wait for an
incremental approach to
improvement to take effect
Kanban & the Spectrum of Work
Kanban’s Roots
Kanban’s Roots
Some say Kanban’sdecoupled cadences (no time-boxed iterations) and single-piece flow
should make it a natural fit for this space!
Kanban’s Roots
As decoupled cadences and single-piece flow
have little benefit in this space, it stands to reason
Kanban is not useful here!
Kanban’s Roots
As decoupled cadences and single-piece flow
have little benefit in this space, it stands to reason
Kanban is not useful here!
Some say Kanban’sdecoupled cadences (no time-boxed iterations) and single-piece flow
should make it a natural fit for this space!
To think this way is to look
simplistically at Kanban as a
process implementation for
transactional single-piece
work. To treat it as a point
solution to a specific problem
(within the Simple domain)
Kanban’s Roots
As decoupled cadences and single-piece flow
have little benefit in this space, it stands to reason
Kanban is not useful here!
Some say Kanban’sdecoupled cadences (no time-boxed iterations) and single-piece flow
should make it a natural fit for this space!
It misses the point that
kanban systems do not
stand alone as process
solutions. A kanban system
is something that is overlaid
on an existing process
The metric most useful
changes at different ends of
this spectrum
Ideally move more
work this way
Make batch size
smaller
A nice mix of work
from which we’ve
been able to learn
a lot about kanban
system design
Leading to emergent designs with classes of service and capacity allocation
5 4 43 2 2 = 20 total
...
Change Req
[12]
Sev 1 Defect (Expedite)
[2]
Sev 2 – 5 Defect
[6]
Allocation
Total = 20Input
QueueDev
Ready In Prog DoneBuildReady Test
ReleaseReadyDoneIn Prog
DevelopmentAnalysis
Simple & complicated
domain application of
kanban systems. Some doubts as to the value of
WIP limits & pull systems
Application of Kanban Method across Simple,
Complicated and Complex domains
Natural territory for Kanban
Lots of enthusiasm!
Mechanics of decoupled cadences &
single-piece flow are seductive
But maybe not ideal territory
for Kanban
Conclusion
KanbanFor broad application as a process overlay to
control “mura” and eliminate “muri” in the
simple/complicated domain
For broad application as a process overlay
and catalyst of process improvement in the
simple, complicated & complex domains
Most useful where demand can be treated as
a pool of options and can be shaped using
risk management, marketing strategy and
strategic planning
KanbanDomain need for single-piece flow or
decoupling of planning, lead time, and
delivery;
Or, application to short-order transactional
work with small batch size and high frequency
delivery
are
Red Herrings!
Kanban works for Major Projects!
Kanban is for evolutionaries
Kanban maybe just what I need!
I don’t have time for this! Kick ass, take
names & get it done!
Carly Fiorina
Thank you!
http://www.kanbaninaction.com/
About…David Anderson is a thought leader in managing effective software teams. He leads a consulting firm dedicated to improving economic performance of knowledge worker businesses – improving agility, reducing cycle times, improving productivity and efficiency in technology development.
He has 25+ years experience in the software industry starting with computer games in the early 1980’s. He has led software teams delivering superior productivity and quality using innovative agile methods. He developed MSF for CMMI Process Improvement for Microsoft. He is a co-author of the SEI Technical Note, CMMI and Agile: Why not embrace both!
David is the author of 2 books, Agile Management for Software Engineering –Applying the Theory of Constraints for Business Results, and Kanban – Successful Evolutionary Change for your Technology Business.
David is a founder of the Lean Software & Systems Consortium, a not for profit dedicated to promoting greater professionalism and better economic outcomes in our industry. Email… [email protected]