Here we are on day 2 of the Lean & Kanban conference… the focus shifts today from Lean to Kanban. David Anderson is giving the opening keynote… David Laribee from VersionOne is giving the closing talk. There are lots of great speakers in between and I cannot wait to hear what they have to say. Hopefully I’ll be able to keep up with these summaries… David Laribee is promising a bunch of techno-talk… so we’ll see how well I am able to keep up ;-)
David Anderson (Opening Keynote) Kanban-Applying Principles and Evolving Process Solutions
David starts his keynote by highlighting a problem with the Lean and Kanban community. We are trying to take a bunch of Japanese words and figure out how to apply manufacturing processes to software processes. David is encouraging us to stop trying to find the software equivalents to manufacturing and focus on the consistent application of principles. As a community we need to judge people by how well they apply principles of lean… not practices of lean.
David shared a few quick set of principles that are worth sharing here:
First he introduces five principles that managers can use to ensure their success as a manager: Focus on quality, reduce work in progress, balance demand against throughput, prioritize, and reduce variability to improve the process
Later in the talk David introduced an agile decision filter… ask yourself as you make decisions if you are applying these criteria: Are we making progress with imperfect information, are we encouraging a high trust culture, and are we treating work in progress as a liability rather than an asset?
His final list was a lean decision filter to help us make decision around applying lean practices: Value trumps flow, flow trumps waste elimination, eliminate waste to improve efficiency. As you are deciding what to do on a day to day basis, evaluate your decisions against these lean priorities.
David shared many of his thoughts on how to structure a Lean/Kanban organization. He has come to the conclusion that visual control are insufficient for managers and software based controls don’t create the right culture of accountability. His recommendation was to use both… interestng. David’s teams met daily to review the Kanban data and then broke into smaller daily standups if necessary. He held a monthly ops review, rather than the traditional agile retrospective, to ensure accountability and look for opportunities to improve.
David’s talk emphasized that Lean and Agile adoption needs to be values based and underpinned by cultural change. Practices are going to be influenced by very situationally specific needs of each team. Management decisions and policies need to support the unique properties of the organizational culture and selected in such a way that we influence the organizational culture in the direction we need it to go.
There were lots of examples in this talk based on David’s extensive experience with his current clients… his time at Sprint… and his time at Corbis. This is another one of those talks that you need to go find on InfoQ. There were lots of great, specific information about Kanban tools and techniques are extensive guidance on how David thinks some of these principles should be applied. Way… way… too much to include in this summary.
Karl Scotland: Kanban, Flow, and Cadence
Karl Scotland started his talk by explaining some of the language and basic principles behind Kanban. Kanban is a Japanese word that means visual cards and showed some pictures of Kanban systems from industry and software. He explains that Kanban is a way to improve productivity my limiting the amount of work in progress AND limiting the amount of work in queue.
It is pretty counter intuitive to think that if we put less work in the system we actually get more output from the system. This is based on Little’s law that states cycle time is equal to the number of items in progress divided by the completion rate. To decrease cycle time… our ability to deliver… you either have to reduce the number of items in queue or increase the completion rate.
What I appreciated about Karl’s talk was the specificity with which he described how his team implemented the process. He talked about the specifics of the features and drew some parallels to the INVEST model of story creation and how we can take larger features and epics and break them into something that could be put on a Kanban card and digested by the team.
Finally… I really liked how Karl was very explicit about buffers and limits and how a team would prioritize for finishing work rather than starting new work. One of the most common objections to lean/kanban is the fact that some people will be idle if there is a bottleneck in the system. Karl addressed this by talking about the kinds of things that folks can work on while they are waiting. They can basically work on anything that does not create work for a downstream process.
What does this mean? Well… they can do spikes, minor refactoring, or training. If they can find a feature that does not create downstream work, that could be done to. My personal opinion is that this one point is the most counter-intuitive part of the whole lean/kanban movement. Getting past this really gets to the ideas of continuous improvement, systems thinking, eliminating waste, and the entire lean value system.
Like I said… there was quite a bit of very specific guidance during the talk… but these were my key takeaways.
Rob Hathaway: Not Just Fun and Games Building the Mousebreaker Web Site
Today is proving to be much more tactical than what we heard yesterday. I guess that makes sense… Lean focuses more on principles and philosophies… Kanban is a specific practice within that overall framework.
Rob started his talk by stating that sustainable change is created by living the principles of lean and choosing practices that support the principles. He introduced several core principles that we have heard in most of the other talks: deliver value, prioritization, work in progress limits, and quality… and several practices that can be applied: minimum deliverables, releasing on demand, establishing visibility around MMFs, and the importance conducting reviews and retrospectives.
Rob encouraged us to focus on using smallest simplest process first…add more when and why the team or system needs it.
It has been interesting to see some of the different perspectives on what it takes to to effectively implement Kanban. Rob focused on the importance of collaborating with the business, the challenges with iterative delivery and the perceived need for certainty, and getting the executives involved early.
Like most of the speakers so far… Rob talked a lot about the specifics of his implementation and some of the challenges they faced along the way.