Saturday, April 12, 2014

Improve Your Process Using Kanban

Kananban was developed in the late 1940's by Taiichi Onho at Toyota to improve Toyota's production process. It is important to note, this had nothing to do with software, it was all about managing Process and Work. This post will explore using lean principals and Kanban to manage a team's process.

The Problem

Before we offer a solution it is worthwhile exploring what problem we are trying to solve. Teams and the people who work on them are very busy and over worked. They have too much to do in the normal work week. This causes them to work many additional hours just to keep their heads above water.
Teams are also juggling many things at the same time. Many people are proud of their ability to multitask. Although acceptable in small quantities, multitasking can actually lead to lost productivity 1. It is easy to have so many spinning plates that some are bound to fall and break.
We are faced with so may things to do, we often do not know what to work on next. This causes teams to work on items that may not be that important. Our items get lost in a blizzard of work and we feel lost. This causes a lot of waste.
We are so busy, that we often do not take the time to improve. We feel we are so busy this is not possible. This causes us to get mired down in our same old way of working.
As teams move toward an end goal the progress is also lost in this blizzard. Like a blinding snow storm,there is not transparency into what the team is doing and how it is progressing toward a goal.
It very competitive out there. It is critical for teams to work at peak efficiency. They need to know What is needed and when it is needed. They need to eliminate waste, have a transparent process that helps teams know what is going on and have a way to learn and adapt in a way that does not take lots of time.

The Kanban Solution

Our Diagram below depicts a simple Kanban Board.

We uses a set of Columns that define the workflow of our process. In this example, it is very simple. The workflow moves from left to right.
A set of Cards identify what we need to do. The cards are in priority order, the most important cards are at the top of the list.
It is best to have a card identify an outcome that has value. This is better that a set of tasks. For example Desk ready to ship is better that Order Desk.
 A Constraint identifies the maximum number of cards allowed in a column. In our example, we only allow 3 cards in the doing column.
It is very easy to setup a Kanban board. A good place to start is a whiteboard and post it notes. There is also free software that can easily setup Kanban boards, Please see our Agile Tools for Delivery section for details.

Why Do This

Using Kanban forces us to put some thought into our process. By defining a set of Columns we define our workflow. By adding Constraints to a column we are acknowledging we have limited resources and have agreed to finish what we start before moving on to other things.
A set of Cards identify the things that need to be done and the priority they are needed. All of this is transparent for the whole team to see. This allows the team the see what is going on at all times and adapt where needed.
Regular meetings should be conducted to review the work and adapt to change.
For an working example please see the Process Improvement with Kanban section of our Roadmap to Agile.

Learn More

No comments: