Kanban: What Is It?

A kanban system is a mechanism for controlling work for a project. The origin of kanban is the Toyota Production System. Very simply, there is a queue of work items, which go through a number of stages of work until it's done. When work is completed in a stage, it goes into a downstream queue for the next stage. When someone needs new work to do, they pull it from their upstream queue. For example:

To Do -> Step 1 -> Step 2 -> Step N -> Done

For a software development project for example:

To Do -> Design -> Implement -> Verify -> Release -> Done

Of course, there are likely a few more steps in your projects.

There is one more important element which really defines a kanban system, and that is the concept of limits. There are two types of limits: Queue limits (work that's ready to start on) and Work in Progress (WIP) limits. For example:

To Do -> Step 1 Queue -> Step 1 WIP -> Step 2 Queue -> Step 2 WIP -> Step N Queue -> Step N WIP -> Done

For a software development project for example:

To Do -> Design Queue -> Design WIP -> Implement Queue -> Implement WIP -> Verify Queue -> Verify WIP -> Release Queue -> Release WIP -> Done

Queue limits are designed to avoid premature work. WIP limits are designed to reduce multi-tasking, maximize throughput, and enhance teamwork. Reducing multitasking is beneficial to reduce taskswitching costs and to yield results sooner.

Throughput is also maximized by decreasing WIP. By having less WIP, the team is able to focus more on the larger goals and less on individual tasks, thus encouraging a swarming effect and enhancing teamwork.

Limiting WIP can seem unusual for teams, and there is often a worry that team members will be idle because they have no work to do, but they are unable to pull any new work. Consider the following guidelines:

  1. Can you help progress an existing kanban? Work on that.
  2. Don’t have the right skills? Pull in work from the queue.
  3. Can’t start anything in the queue? Is there any lower priority to start investigating?
  4. There is nothing lower priority? Find other interesting work.

(Summarized from "Kanban, Flow and Cadence" by Karl Scotland: https://availagility.wordpress.com/2008/10/28/kanban-flow-and-cadence/)