Kanban & Accelerated Achievement of High Levels of Organizational Maturity David J. Anderson Lean Software & Systems 2010 Atlanta, April 2010 Twitter: @agilemanager dja@agilemanagement.net
Premise
Adoption of kanban systems in technology development organizations is leading to accelerated emergence of high maturity behaviors
As a result organizations are managing risk better and delivering improved performance
This emergence of high maturity behaviors is occurring significantly faster than documented literature from the past 4 decades
It appears that Kanban with its focus on transparency of process, visualization of workflow, use of quantitative management techniques and formal models for recognizing improvement opportunities is driving this phenomenon
Introduction to Organizational Maturity
What does high maturity mean?
High maturity refers to a high level of organizational maturity
What does maturity mean in this context?
Maturity implies an expected form or type of behavior
If we have a 3 year old toddler we might expect certain behaviors. If we had an 18 year old boy, we'd expect another set of behaviors. A 37 year old woman yet another
We typically complain when the actual behavior of an individual doesn't match the expectation of behavior. given the actual maturity
For example, a 37 year old girlfriend who behaves like a 3 year old toddler is a strong indication that you need to find a new girlfriend
Maturity implies an expected set of behaviors but it also implies an expected capability at decision making and ability to assess risk.
For this reason 18 year old boys pay more for their car insurance than 55 year old women. At 18 we expect poor judgment, poor ability to assess risk and poor ability to make (good) decisions
However, this doesn't automatically assume that higher maturity is always best. There may be times when we prefer the illjudged energy and enthusiasm of an 18 year old boy to the predictable and boring suggestions from a 55 year old woman
Organizational maturity implies an organizational capability to make informed decisions, to act with good judgment and to manage risk
The SEI defines high maturity as CMMI ML4 & ML5 Continuous Improvement CAR OID Predictability QPM OPP
The implication is that an organization that exhibits the behaviors described in levels 4 & 5 of the model will make better decisions, manage risk better and should produce a better economic outcome for its stakeholders
Why is organizational maturity desirable?
Senior execs tell me
David, what we need is to be more predictable! We need to bring projects in within a small variation of plan - perhaps 10% to 15%. Our customers expect us to be predictable but we can t deliver.
We need to be faster to market. Our leads times need to be shorter. Our competitors are out-maneuver us with innovations brought to market earlier. We have great vision but we can't execute on our plans.
We need to do all this and at the same time we need to get a handle on our costs. Our competitors have a lower cost structure and their margins are wider. Economic times are hard. Finance is hard to get. We simply have to do more with less.
Summarizing the business goals Predictability and reliability Better time-to-market Controlled costs
Meanwhile, there needs to be much more visibility in to what's going on. Often I can't see the true state of the project and the team hide the detail from me until it's too late.
In addition, we need to be a lot more objective about our decision making. More data driven. There simply isn't any reliable data coming out of our software projects. I can't manage if I'm flying blind.
Summarizing the management goals Visibility Objectivity
Combining Business and Management Goals Predictability and reliability Better time-to-market Controlled costs Visibility Objectivity
The goals describe An organization operating at the equivalent of CMMI Level 4 maturity
The CMMI model is still relevant
The existing CMMI maturity model is broadly correct I've seen teams improve their organizational maturity and generally they follow a pattern that looks similar to the SEI's model.
During the early stages of agile adoption in an enterprise CMMI process areas emerge naturally Project Planning Measurement & Analysis Verification (automated) Validation (automated) Project Monitoring & Control Process Definition Requirements Development Requirements Management Configuration Management Product Integration Technical Solution
Good agile teams are capable of achieving CMMI level 3 However, some gaps exist for complete coverage. Typically Decision Analysis & Resolution Integrated Project Management Training Program Issue & Risk Management Supplier Agreement Management
CMMI has 23 years development behind it and is broadly correct There is no need to reinvent a model for organizational maturity. There is one that is "good enough" that we can look to for guidance.
The existing CMMI model defines high maturity and gives an understanding of how to achieve our business and management goals
Very few Agile teams (I know of no documented case studies) have shown an ability to mature through levels 2 and 3 and achieve high maturity levels 4 or 5.
The only documented cases of Agile + High Maturity are with teams/organizations that started out as highly mature and chose to adopt Agile methods e.g. Accenture India, Systematic Denmark
Kanban & Accelerated High Maturity
SEI and academic literature generally describes a cycle of several years to achieve high levels of organizational maturity. 2 to 5 years being typical
However, teams using Kanban have been observed to develop high maturity behaviors within a few short months: typically 3 to 9 months
Adoption of behaviors does not imply these organizations would pass a SCAMPI Appraisal for CMMI ML 4 or 5
but it does show that the organization is likely to exhibit better judgment, better risk management and better economic outcomes
There are now numerous examples of teams using Kanban that have shown high maturity behavior, namely, Microsoft, Corbis, Phidelis, BBC Worldwide, BNP Parisbas, SEP, Financial Times, others? McKesson?
Is this just a correlation or might there be a causation between adoption of Kanban and emergent high maturity behavior?
Kanban sets an expectation of High Maturity Root cause analysis on defects stop the line CAR Kaizen events OID CFDs, SLAs, SPC QPM
Kanban uses a quantitative, objective operations review to facilitate reflection and stimulate kaizen events
Kanban uses a standup meeting focused on impediments (assignable cause variations) and flow to facilitate reflection and stimulate kaizen events
Walk the board, right to left, highlighting impediments & defects only
Kanban was introduced at Corbis in December 2006. By March 2007 spectral analysis of lead time was in use to analyze performance and diagnose possible kaizen opportunities. This is an example of QPM, CAR and OID emerging Lead Time Distribution MARCH 2007 2.5 2 1.5 1 0.5 0 1 6 11 16 21 26 31 36 41 46 51 56 61 66 71 76 81 86 91 96 101 106 # CRs Days 3.5 Lead Time Distribution APRIL 2007 3 CRs & Bugs 2.5 2 1.5 1 0.5 0 1 8 15 22 29 36 43 50 57 64 Majority of CRs range 30 -> 55 Outliers 71 78 Days 85 92 99 106 113 120 127 134 141 148
Lead time against SLA target and due date performance can be used to facilitate OPP across several teams
Quantitative data was used for OPP at Microsoft in 2005 to detect the opportunity to improve throughput Productivity per Resource 23 25 5 12 20 15 10 5 0 Change Requests Dev Mar-04 May-04 Jul-04 Sep-04 Nov-04 Jan-05 Mar-05 May-05 Jul-05 Sep-05 Quarters Nov-05 Dev Test
balancing the line (heijunka), shifting resources from testing to development smoothed flow and increased throughput PTC Expedite Change Requests PM Kanban 9 cards (4 WIP 5 Queue) Kanban 8 cards Local Mgr User Acceptance Test Product Managers Backlog
Spontaneous Quality Circles started forming at Corbis a CMMI ML 5 behavior
Kaizen events became commonplace at Corbis MARCH 2007 UAT state added Prompted by test who were experiencing slack time Expanded kanban limit on Build Ready state, added Test Ready state Introduced to smooth flow post release due to environment outage transaction cost
APRIL 2007 Dev Ready buffer eliminated Development was not the bottleneck
Waste bin & waste report created In response to poor requirements resulting in work blocked and later removed without completion APRIL 2007
SEPT 2007 Kaikaku scale change Business analysis merged with systems analysis Job titles and responsibilities merged to one role Upstream process removed 11 days of lead time waste recovered
Another significant spontaneous quality circle kaizen event 3 day freeze on test environment was a transaction cost on release that caused a bottleneck at build state. This was reduced to 24 hours after a 3 person quality circle formed to investigate the policies behind the freeze. Result was improved smooth flow resulting in higher throughput and shorter lead time
Quantitative data was used at Corbis* Device Management Ike II Cumulative Flow Features 240 220 200 180 160 140 120 100 80 60 40 20 0 Typical S-curve 10-Feb 17-Feb 24-Feb 2-Mar 9-Mar 16-Mar 23-Mar 30-Mar Time Inventory Started Designed Coded Complete * CFD shown is example from an earlier project at Motorola.
and simulation of flow provided QPM on major project initiatives run using Kanban Device Management Ike II Cumulative Flow Features 240 220 200 180 160 140 120 100 80 60 40 20 0 20% 60% Slope in middle 3.5x - 5x slope at ends 5x 20% 10-Feb 17-Feb 24-Feb 2-Mar 9-Mar 16-Mar 23-Mar 30-Mar Time Inventory Started Designed Coded Complete
Simulated feature completion tracked against actual Device Management Ike II Cumulative Flow Features 240 220 200 180 160 140 120 100 80 60 40 20 0 Track delta between planned and actual each day 10-Feb 17-Feb 24-Feb 2-Mar 9-Mar 16-Mar 23-Mar 30-Mar Time Inventory Started Designed Coded Complete
Teams at organizations such as Financial Times, BNP Parisbas and BBC Worldwide have been using quantitative data such as statistical process control charts
Some have produced up to 2 years of data showing measurable improvements, improved predictability, improved quality, a focus on causal analysis and resolution, and viral spread of Kanban across the organization demonstrating organizational innovation and deployment
BBC Worldwide Bug Rates
BBC Worldwide Days Blocked
BBC Worldwide Blockers
Control Charts supported natively in Silver Catalyst
And now also in LeanKit
Process ideas were seen to spread virally at Corbis (evidence of OID)
First Scrumban project
Adopted the use of hierarchical board using swim lanes
Another major project with two-tiered kanban requirements
observed the benefit of swim lane technique and adopted it oo
And the technique spread to a vendor fixing defects in a stabilization phase
as quickly adopted the swim lane technique observed as a useful practice with other teams
Conclusions
These stories show that high maturity behaviors have been appearing with teams adopting Kanban
within a few months of starting a process improvement initiative and cultural shift towards kaizen
There are too many of these examples for us to dismiss it as random or influenced by any single individual. It's a recognizable trend in the Lean/Kanban community
The speed of adoption of these high maturity behaviors suggests that with the right leadership and with a method that provides transparency of process and a broad understanding of the process dynamics
It seems that a process framework like Kanban that emphasizes
transparency of process, visualization, explicit process policies, use of formal models to recognize and implement improvements, and uses a quantitative, organization level retrospective
catalyzes this accelerated emergence of high maturity behaviors
More work is now needed to document high maturity behavior in our community and provide more data points and more case studies
From this I hope it will be possible to identify the cause and effect that is driving this empirically observed move to high maturity
The long term implication is that kanban systems added to existing software development lifecycle and project management methods will improve the performance of technology organizations
This improved performance will address the concerns raised by senior leaders, ultimately leading to higher levels of satisfaction with our industry and our profession
Thank you! dja@djandersonassociates.com http://www.channelkanban.com/
http://www.limitedwipsociety.org Yahoo! Groups: kanbandev http://www.kanban101.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 dja@djandersonassociates.com