Building a Kanban board
March 10th 2011
We have been using Scrum in my current project from the beginning of 2010. Our team is swarming pretty effectively on tasks and we decided that next step would be to try out Kanban as we are currently in "production" mode and see the end of our project closing.
I started this process by reading <a href="http://www.amazon.com/Kanban-David-J-Anderson/dp/0984521402">Kanban book by David J. Anderson</a> which I highly recommend. In his book, David suggest that transition to Kanban should be started small and from the area of team's "political control". Board should be designed to fit current process and team should not try to optimize process prematurely. In addition, we knew that in our case input to the Kanban system would be a Scrum backlog. Armed with this information we started to sketch first the version of our board.
<h4>Sketching the version one</h4>
Layout of your Kanban board will depend on your current situation. There isn't one right layout and people doing the work will have the best knowledge. We started by sketching our current process and thinking what <a href="http://www.limitedwipsociety.org/2010/08/01/using-classes-of-service-to-optimize-flow/">classes of services</a> we would be providing. Classes of services are basically priorities that will be assigned to kanbans so that critical work can cut in line. In our case, we decided to build 2-tier board, where "larger" cards represent user stories and "smaller" cards represent tasks. Apparently, the best practice (or at least some practice) seems to be that user stories are limited by swimlanes and their tasks are limited by "vertical WIP". Sounds awful but bear with me.
<img class="blog-image" title="kanban-plan" src="/img/blog/kanban-plan.jpg" alt="kanban-plan"/>
<h4>Get some supplies</h4>
After initial board was sketched I headed to bookstore to get some tape and post-its in different colors. I tried to find very narrow black tape, but there was no such thing available so instead I bought some electricity tape and a box cutter.
<img class="blog-image" title="kanban-material" src="/img/blog/kanban-material.jpg" alt="kanban-material"/>
<h4>Building the version one</h4>
First things first. kanban systems came from Toyota where 5s (<a title="5s" href="http://en.wikipedia.org/wiki/5S_%28methodology%29">Sorting, straightening, shining, standardizing, sustaining</a>) methodology originated. In our case we decided to do something to our "not so shining" whiteboard.
<img class="blog-image" title="kanban-clean" src="/img/blog/kanban-clean.jpg" alt="kanban-clean"/>
Because I did not find any narrow tape I used a box cutter to slice tape to more stripes.
<img class="blog-image" title="kanban-box-cutter" src="/img/blog/kanban-box-cutter.jpg" alt="kanban-box-cutter"/>
This turned out to be a bad choice. Surprisingly, I could not do completely straight slices and almost cut my fingers into half. Next time I will find proper sized tape. Anyhow, our board started to build up. Different colored tape turned out to be a good choice. Below you can see the magical metamorphosis.
<img class="blog-image" title="kanban-board" src="/img/blog/kanban-board.jpg" alt="kanban-board"/></a>
And so was first version completed.
<h4>So how does this board work?</h4>
This Kanban board is designed for a four person team, who has been working with Scrum. Work will be pulled into system from product backlog that is handled by a product owner. The team will then develop features after which they are verified by a product owner or someone from business. After verification, the team is responsible for production deployment. Currently, we favor smaller user stories and layout is designed that in mind.
Click on image below to see larger description how our first version works.
<a href="/img/blog/kanban-full1.jpg"><img class="blog-image" title="kanban-full" src="/img/blog/kanban-full1-300x125.jpg" alt="kanban-full"/></a>
This is my first attempt to do a Kanban board and there will surely be something to fix. First thing that we will be checking is our WIP limits. Cannot wait to try how this works in practice...