As time goes by, I learn a lot about articulating my ideas. I’ve recently updated how I communicate the core principles of the Kanban Method. [This post edited and updated September 2014].
The Kanban Method defines my approach to incremental, evolutionary change for technology development/operations organizations. It uses a work-in-progress limited pull system as the core mechanism to expose system operation (or process) problems and stimulate collaboration to improve the system. One example of such a pull system, is a kanban system, and it is after this popular form of WIP limited pull system that the method is named.
In my book, Kanban - Successful Evolutionary Change for your Technology Business, I identified what I called the "5 core properties" that I’d observed to be present in each successful implementation of Kanban.
Since the book was published we've expanded this list and they are now known as the Principles and General Practices of Kanban.
Principles of the Kanban Method ...
Start with what you do now
Agree to pursue incremental, evolutionary change
Respect the current process, roles, responsibilities & titles
Encourage acts of leadership at all levels in your organization
General Practices of the Kanban Method ...
1. Visualize (the work, workflow and business risks)
2. Limit WIP
3. Manage Flow
4. Make Process Explicit
5. Implement Feedback Looops
6. Improve Collaboratively, Evolve Experimentally (using models & the scientific method)
Let’s examine these elements one-by-one
Start with what you do now
The Kanban Method does not ask you to change your process. It is based on the concept that you evolve your current process. There is no sweeping, engineered change to a new process definition or style of working. There is no such thing as the Kanban Software Development Process or the Kanban Project Management Method.
Agree to pursue incremental, evolutionary change
The organization (or team) must agree that their current circumstances warrant a gentle, evolutionary approach to improvement. Perhaps a sweeping engineered change has recently failed due to resistance from team members, or perhaps the politics of the organization make it too risky for managers to propose and implement sweeping changes? Without agreement that a slow, gentle, evolutionary, incremental approach is the right way forward then there won’t be the right environment or management support for a Kanban initiative.
Respect the current process, roles, responsibilities and job titles
It is likely that, what the organization currently does, has some elements that work acceptably and are worth preserving. We must also seek to drive out fear in order to facilitate future change. By agreeing to respect current roles, responsibilities and job titles we eliminate initial fears. This should enable us to gain broader support for our Kanban initiative. Perhaps presenting Kanban against an alternative more sweeping approach that would lead to changes in titles, roles, responsibilities and perhaps the wholesale removal of certain positions will help individuals to realize the benefits.
Encourage acts of leadership at all levels in the your organization
Without leadership to catalyze change things will not improve. Information about where improvements are possible can appear at any level in an organization and most often at the individual contributor level. If changes are to be made quickly and effectively individuals who believe improvement is possible must feel empowered to enact it. A culture of safety, must exist, to take action without fear of retribution providing changes can be defended based on logical explanation using models and data.
Visualize (the work, the workflow and the business risks)
As a general rule, seek to make that which is invisible, visible. Once invisible work, workflows, and business risks can be seen, it is possible to manage them better and to do so collaboratively and with consensus. Understand how to define and capture requests for work. Visualize each request with a card on a kanban board. Visualize the sequence of knowledge discovery activities performed from when the request is first received until it is completed and ready for delivery to the customer. We call this sequence of knowledge discovery activities, the workflow. Capture significant business risks associated with a piece of work such as cost of delay, importance of the requesting customer, confidence in the definition of the requirements, likelihood of requirements changing or the request being obviated before it is delivered, and visualize those perhaps using color of the tickets, or decorators on the ticket such as shapes, tags or icons.
Limiting WIP implies that we implement a pull system on part or all of the workflow. The pull system can be a kanban system, a CONWIP system, a DBR system, or some other variant. Specifically with Kanban we are typically using a kanban system, though other pull systems do appear in some real world examples. The choice of pull system isn't important, the critical elements are that work-in-progress at each state in the workflow is limited and that new work in “pulled” into the new information discovery activity when there is available capacity within the local WIP limit.
The flow of work items through each state in the workflow should be monitored and reported - often referred to as Measuring Flow. By flow we mean movement. We are interested in the speed of movement and the smoothness of that movement. Ideally we want fast smooth flow. Fast smooth flow means our system is both creating value quickly, which is minimizing risk and avoiding (opportunity) cost of delay, and is also doing so in a predictable fashion.
Make Policies Explicit
Until the rules for how we perform a creative knowledge work activity such as software development or IT services, are made explicit it is often hard or impossible to hold a discussion about improving it. Without an explicit understanding of how things work and how work is actually done, any discussion of problems tends to be emotional, anecdotal and subjective. With an explicit understanding it is possible to move to a more rational, empirical, objective discussion of issues. This is more likely to facilitate consensus around improvement suggestions.
Implement Feedback Loops
An evolutionary process cannot work without feedback loops. When implemented at a service delivery level in organizations, Kanban, uses four specific practices for feedback: the standup meeting; the service delivery review; the operations review; and the risk review. The purpose of feedback loops is to be able to compare expected outcomes with actual outcomes and make adjustments. Specifically, we want to make process and policy adjustments as a result of the feedback and understanding the current outcomes in comparison with our expectations or desires.
Improve Collaboratively, Evolve Experimentally (using models/scientific method)
It is the WIP limit that ultimately stimulates conversations about process problems. Things which impede flow, or introduce perturbations that mean flow is inconsistent or ragged, often result in a challenge to the WIP limit. The team has the option to break the limit, ignore the problem and carry on, or to face up to the issue, discuss it and suggest a change.
When teams have a shared understanding of theories about work, workflow, process, and risk, they are more likely to be able to build a shared comprehension of a problem and suggest improvement actions which can be agreed by consensus. In my book, I suggested three models which are useful: The Theory of Constraints (the study of bottlenecks); The Theory of Profound Knowledge (a study of variation and how it affects processes); and the Lean Economic Model (based on the concepts of “waste” (or muda, muri and mura)). Other models are possible such as Real Option Theory.
The use of models allows a team to make a prediction about the affect of a change (or intervention). After the change is implemented the outcome can be observed by measuring the flow and examining the data. The outcome can be compared to the prediction expected from the model and the change can be assessed as an improvement, or not. This process of evaluating an empirical observation with a model, suggesting an intervention and predicting the outcome based on the model, then observing what really happens and comparing with the prediction, is use of the scientific method in its fundamental sense. This scientific approach, is I believe, more likely to lead to learning at both the individual and organizational level. Hence the use of the scientific approach in Kanban will lead directly to the emergence of learning organizations.
Complex Environments and Adaptive Capability
The Principles and General Practices of the Kanban Method are designed to lay the foundation for an adaptive capability with an organization. Adaptive capability is how organizations cope with and respond to complex environments. Adapative capability is required for resilience in complex environments. The improvements to workflow processes represent emergent behavior. The outcome cannot be predicted far in advance or several steps in advance. The future processes of the organization emerge rather than are designed.