Karl Scotland – Using Agile to Deliver Value
Archive for June, 2009
The Fifth Primary Practice of Kanban
Jun 30th
I recently wrote what I considered to be the four primary practices of a Kanban System for Software Development:
- Map the Value Stream
- Visualise the Value Stream
- Limit the Work in Progress
- Establish a Cadence
During subsequent discussions on the aspect of Continuous Improvement in a Kanban System, I decided that there was a missing fifth primary practice:
- Reduce the Kanban Tokens
I originally named this practice “Eliminate Kanban”, but was persuaded that this was probably overly sensational, and as a result potentially confusing or misleading. Its intent is that once a Kanban System is in place, the team should be constantly looking to improve it by creating an environment where the work flows naturally. There is a quote that I believe comes from Rother and Shook which says “flow where you can, pull where you must”. By striving to reduce the number of kanban tokens in the system, a team will move towards an environment where they are more self organising and the work can flow. This can be achieved by either lowering the WIP limits or by collapsing the number of distinct stages.
How Is Kanban Different From Other Approaches?
Jun 15th
There has been a lot of discussion recently around trying to define what Kanban is. Is it a tool? A process? A philosophy? During a discussion on the kanbandev list, Ron Jeffries led me (probably unintentionally) to an idea for a different way of trying differentiate Kanban from other Agile approaches. Rather than attempt a direct comparison and identification of unique differences, I realised that the various approaches are different only in where they place their emphasis. XP places a lot of emphasis on the technical practices. Scrum places more emphasis on the project management practices. Kanban, places its emphasis on business and value flow practices. As Ron would say, its all the same elephant, but each approach has a different view of it. At the end of the day, its having the most appropriate elephant for any given context that is most important.
Using Kent Beck’s distinction of Primary and Corollary Practices in XP (2nd Edition), I think that Kanban can be differentiated by identifying its Primary and Corollary Practices. As such, these practices may not be unique to Kanban, but are considered the most important. High performance Scrum and XP teams will inevitable use these practices in some form, but I don’t consider them to be clearly described as Primary Practices in those methods.
The Kanban Primary Practices I see (at the moment…) are:
- Map the Value Stream. A Kanban approach looks at the whole stream of work, from where it enters the scope of the team, to where it leaves. Thus typically, a Kanban system will explicitly include the transformation of work from the problem or idea, through to its release. i.e. Concept to Cash (or Consumption), or Incubate to Liquidate.
- Visualise the Work. A Kanban approach will make all the work as visible as possible, across the whole Value Stream. In particular, this includes the visualisation of expanding/contracting, or zooming in and out, of work items to make their value/solution, or other hierarchical relationships visible.
- Limit Work in Progress. A Kanban approach will explicitly limit work in progress. This is distinct from managing work in progress through the use if time-boxes as described by David Anderson. This absolute limiting of work in progress is what makes Kanban a pull system, rather than a very small batch push system.
- Establish a Cadence. A Kanban approach will create a natural rhythm by setting up a cadence which will help the team deliver. This will typically de-couple the input (planning and prioritisation) from the output (release), allowing more freedom than the time-box, but still providing a framework to release regularly, measure performance and continuously improve.
A Kanban team will almost certainly use Corollary Practices which may be considered Primary in another process. For example, a high performance Kanban team will inevitably use technical practices from XP, such as TDD and Continuous Integration. Other Corollary Practices from other methods might be the use of MMFs and User Stories to manage the work items. Equally Use Case Scenarios and Steps could serve the same purpose. Metrics such as Cycle Time, Throughput, Velocity, Cumulative Flow Diagrams and Due Date Performance are further Corollary Practices which could be used alongside the Cadence. The list is probably endless. The above Kanban Primary Practices set the foundation for a team use whatever other techniques help them be successful.
Lean & Kanban Conferences – Looking back and looking forwards
Jun 11th
Its a month now since the Lean & Kanban Conference in Miami and I haven’t had chance to blog about it. There’s probably not much I can add that hasn’t been said elsewhere already. It was an incredible week; stimulating, inspiring, focussed, energising. I learned a lot, and made and met old and new friends. For those who couldn’t make it, the presentations are available for download, and the proceedings book is available to buy. All profits from the proceedings will go towards the formation of the Lean Software and Systems Consortium.
Plans for the equivalent event in London are taking shape nicely. Registration is now open and we have had 40 registrations in the first week so it looks like demand will be high – book early to avoid disappointment! We have a fantastic line-up of speakers confirmed, and the program has now been published. The vision was to create an event which generates discussion and debate with a format that is hopefully a little different from the norm. The mix of presenter talks with interviews is intended to stir up some debate, and the Masterclasses are an opportunity to discuss ideas more interactively with the speakers and fellow attendees – more of a roundtable than a teaching session.
Zurich Lean Agile Scrum Slides
Jun 11th
I have posted my slides for the talk I did at the Zurich Lean Agile Scrum event on my downloads page. Inspired by the quality of some of the “Zen” presentations at the Lean & Kanban Conference in Miami, I created a new deck, and included some more slides on some Lean history. I have added some notes to the slides so I hope they have some use for those that weren’t in the room!
The conference closed with a speakers panel, including Ken Schwaber, when the question of “Is Kanban an alternative to Scrum” was asked! Fortunately Ken and I are still friends after the discussion, and the general consensus was that regardless of what we do and what we call it, the primary focus should be on doing the right thing.






