Kanban and the DOI

Posted on December 21, 2010 by admin

In 2004 I was involved with a group of recognized professionals in the field of project management who came together to define what agile project management ought to mean. The outcome of those meetings was a statements of values, published in February 2005, given the name Declaration of Interdependence. While I’m not in love with the name and find it rather pompous, I find the content of the Declaration has stood the test of time over 6 years. While the declaration sought to define a value system by which modern 21st Century project managers should live, it’s secondary purpose to galvanize a community around general application of agile project management failed to materialize. Five years on, it is worth reflecting on my contribution to the DoI and how it aligns with the Kanban work that I am best known for since then.

DECLARATION OF INTERDEPENDENCE

We are a community of project leaders that are highly successful at delivering results. To achieve these results:

  • We increase return on investment by making continuous flow of value our focus.
  • We deliver reliable results by engaging customers in frequent interactions and shared ownership.
  • We expect uncertainty and manage for it through iterations, anticipation, and adaptation.
  • We unleash creativity and innovation by recognizing that individuals are the ultimate source of value, and creating an environment where they can make a difference.
  • We boost performance through group accountability for results and shared responsibility for team effectiveness.
  • We improve effectiveness and reliability through situationally specific strategies, processes and practices.

[©2005 David Anderson, Sanjiv Augustine, Christopher Avery, Alistair Cockburn, Mike Cohn, Doug DeCarlo, Donna Fitzgerald, Jim Highsmith, Ole Jepsen, Lowell Lindstrom, Todd Little, Kent McDonald, Pollyanna Pixton, Preston Smith and Robert Wysocki.]

We increase return on investment by making continuous flow of value our focus

As many of my readers are aware kanban systems limit work-in-progress and signal new work to start only when there is capacity to process it. This “pull” mechanism is used to improve the flow of work. So kanban systems are focused on flow. However, the way kanban systems have developed for software development goes well beyond a typical manufacturing implementation, as Don Reinertsen pointed out to me during a visit to my office in 2007. In the Kanban method we use classes of service linked to (opportunity) cost of delay and explicit visualization of handling policies to improve the return on investment made in operating the software development activity. By visualizing the workflow, limiting WIP, managing flow, measuring lead times, and optimizing risk and value delivery with classes of service based on the economics of delay, Kanban explicitly delivers on the first statement of the DoI. It is no surprise that it is this first of the six statements that are so heavily associated with my contribution.

We deliver reliable results by engaging customers in frequent interactions and shared ownership.

Kanban engages customers through visualization, through interaction and escalation when items are blocked, through the regular cadence and collaboration of input queue replenishment meetings and through the regular cadence of delivery and the planning of each delivery. Kanban asks customers to take shared ownership of the system and its effectiveness and to throttle their demand to the rate at which the system can deliver.

We expect uncertainty and manage for it through iterations, anticipation, and adaptation.

Kanban embraces uncertainty and it manages for it through provision of classes of service such as “Expedite.” This demonstrates anticipation of demand. It also manages for it through use of quantitative measurement such as statistical process control and definition of target lead times based on statistical observation of capability. This again shows how the system can anticipate an outcome and manage for variability and uncertainty. Kanban is also design to encourage adaptation by using the WIP limit and the social interaction of standup meetings and operations reviews to reflect upon performance, observed capability and effectiveness and allow for process improvements to be suggested based on a scientific approach that uses models of process flow, variation, uncertainty and complexity to facilitate implementation of successful adaptations. Kanban is specifically design to anticipate and adapt as the method is designed using concepts of both Systems Thinking and Complex Adaptive Systems.

However, depending on how you define “iterations”, Kanban implementations often do not use them! Time-boxed increments (often referred to as “iterations” by agile practitioners) are replaced with cadence. The core activities of accepting new work and delivering finished work are usually still performed regularly but each activity has its own cadence. For example, input queue replenishment may happen once per week - a cadence of weekly - while delivery may happen every second week - a cadence of bi-weekly. Cadence is a more sophisticated tool than time-boxed iterations.

“Iteration” meaning “to rework or refine” is supported by Kanban.  However, it is still relatively unusual to see such implementations. If for example, a team follows an explicitly iterative method such as Barry Boehm’s Spiral Model, then it would be possible to wrap a kanban system over that and to limit WIP at each step on each loop of the spiral. There have even been instances of team’s visualizing such a process with a board that resembles a dart board or archery target rather than the familiar columns and rows typically associated with Kanban.

We unleash creativity and innovation by recognizing that individuals are the ultimate source of value, and creating an environment where they can make a difference.

Kanban is specifically designed to enhance the power of the people within the system. By limiting WIP, kanban systems both create slack to allow creativity and innovation room to sprout and flourish, and the act of making process policies explicit provides protection for those working within the system, limiting abuses and attempts to exploit individuals and work around limitations. The explicit policies, often visualized on a board, enable individual team members to make high quality decisions about the economics, risks and intangible expectations of all stakeholders. As a result Kanban enables individuals to be creative about their process, to innovate and adapt to improve customer service and value delivery. It gives them the empowerment to make their own decisions and to optimize the economic outcome to the benefit of customers, business owners, value-stream partners and team members.

We boost performance through group accountability for results and shared responsibility for team effectiveness.

Kanban uses a monthly operations review meeting that involves all team members across an organization, plus senior management, and up- and down-stream stakeholders. At operations review quantitative, objective, statistical data on the performance and capability of the system is reviewed openly by all involved and design changes to the system are proposed and assigned to managers for implementation. Through this operations review process Kanban insures that performance is boosted continuously through the wider group of stakeholders taking shared responsibility for the effectiveness of the system and the team of people operating it.

We improve effectiveness and reliability through situationally specific strategies, processes and practices.

The first emergent property of Kanban is that each process is uniquely tailored to its context. For each system, the value creation network will be different; the risk profile will be different; the team and its skills and capabilities will be different; the nature of demand will be different; and the cost of delay in work items will be different. Every context deserves a uniquely tailored process in order to optimize the economic outcome for all stakeholders. The foundationalPrinciples of the Kanban Method are based on the premise that process definition starts with whatever is happening now and evolves it incrementally through a process of small changes each justified economically and based on a scientific approach to improving performance. Situationally specific strategies, process and practices are core to the Kanban Method.

Conclusions

Not only is it easy to see how the Kanban Method relates to the Declaration of Interdependence and to see how my emerging “agile” work at the time was aligned with it, we could go further and say that Kanban is in fact a full implementation of the Declaration of Interdepedence. It is a manifestation of how 21st Century Project Managers ought to be working. The irony of this may be that Kanban encourages a service-delivery rather than a project-centric approach to work.

Meanwhile, for me personally, I look back on the Declaration of Interdependence as a piece of work that I and the other authors can rightly be proud of, 6 years on. I am also happy that this review of the Kanban Method and how my work evolved in those 6 years shows a high level of consistency and that Kanban demonstrates that it lives the values defined in the Declaration.

I’ve been guilty of not publicizing the Declaration of Interdependence enough. I’m not the only author who fails to make enough use out of it. It rightly is something to be proud of and it deserves a higher profile within the Agile and Lean/Kanban communities.

Comments: