Agile Zone is brought to you in partnership with:

I am a management consultant working with the Theory Of Constraints, Lean, and agile methodologies. I am a certified ScrumMaster, and have also run eXtreme Programming projects. Over the years I have been a software developer, line manager, project manager, editor, analyst and writer. I live in Gothenburg, Sweden. I am married. My wife and I have a son, Tim. Henrik has posted 1 posts at DZone. View Full User Profile

Defining Kanban

06.09.2009
| 32996 views |
  • submit to reddit

There has been a long thread in the kanbandev group at Yahoo about how to define what a kanban system is, and is not. Defining kanban is important because without an unambiguous definition it is difficult to discuss kanban.

A kanban system is a system for process control. Kanban was invented by Taichi Ohno at Toyota more than fifty years ago. There are many types of kanban systems, for production processes, for administrative processes, for software development... All kanban systems have certain characteristics in common.

We in the software community are new to kanban, and it is easy to get a bit too enthusiastic, and unintentionally change the meaning of kanban when we discuss it. It is my opinion that this would be unfortunate. One reason is that we dump a lot of knowledge that has been amassed under more than half a century. When we do that, we have to rediscover what other people have discovered before us. That slows us down, because we loose the ability to build further on the existing knowledge base.

The following Intermediate Objective Map reflects my current understanding of kanban (feel free to laugh if you are from Toyota, Honda, or one of the many other companies that has spent decades building a thorough knowledge of kanban):


 

Note that some things necessary to have a kanban system are external to the kanban system itself. It is also worth noting that you cannot describe a kanban system by describing only the physical system. Kanban is a system with an attitude. This is something that often trips up Western (and many Eastern) companies that try to introduce Lean and kanban.

Here is a somewhat simplified map of a kanban system:


Note that there are two types of kanban tokens in the system:

  • Work-In-Process (WIP) kanban move with work items. A WIP kanban serves as identification and job instruction.
  • Withdrawal kanban move in the opposite direction of the work items in the process. They serve as identification and transfer tags.

If you have used a kanban board for software development, usually a whiteboard with sticky notes, you are familiar with WIP kanban. That's the sticky notes.

Where are the withdrawal kanban? Well, they are there. Withdrawal kanban are the release signals that tell that it is okay to move more work into a process step. On a kanban board, that is the empty space left when you move a WIP kanban. Look at the drawing of a board below. It is a simple kanban system with only one kanban slot at each process step:


 

It is actually pretty neat. As you move sticky notes (WIP kanban) to the right, holes (withdrawal kanban) will move to the left, so you can move more sticky notes to the right.

A topic that is related to how to define kanban, is the scope of kanban. This is also a topic that has been debated for awhile. Armed with a definition of kanban, we can figure out what the scope is. The IO Map below is a generic description of a process. There are only two necessary conditions in the map that are fulfilled by kanban. I have drawn a rectangle around them.

If you look at Lean, or the Toyota Production System, the complete system fulfills all of the conditions in the map, but kanban, which is only a small part of the complete system, fulfills only the conditions in the red rectangle.

That is my opinion on how to define kanban.

References
Published at DZone with permission of its author, Henrik Mårtensson. (source)

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)

Tags:

Comments

Pei Jifeng replied on Wed, 2009/06/10 - 2:48am

It seems not to see the image you posted

Daniel Kaplan replied on Thu, 2009/06/11 - 5:40pm

I'm sure this is very helpful if you already know kanban. But for someone that doesn't know much about it already, this went over my head. If I'm not your demographic, that's fine, I just thought you should know.

Henrik Mårtensson replied on Sat, 2009/06/13 - 2:42am in response to: Daniel Kaplan

Hi Daniel,

You are right, it is not an introductory article. The original was posted at my blog, Kallokain: http://kallokain.blogspot.com/

The purpose of the article is to provide a base for further discussion of what kanban is. There are plenty of kanban definitions on the web, but all the ones I could find had problems.

Some were too general, and included systems that are not really kanban. There is a process scheduling system called Drum-Buffer-Rope, which is distinct from kanban, with different properties. Yet, many kanban definitions, including most of those in the kanbandev discussion group were so general they lumped them together.

Some definitions also lumped kaizen (continuous improvement) with kanban, which I believe is wrong. The relationship between kanban and kaizen is symbiotic, but that does not make kaizen a part of kanban. A (somewhat clumsy) analogy would be heart and lungs, one cannot function without the other, but that does not mean doctors should discuss them and treat them as if they were the same organ. They are part of the same system, but so are a lot of other things.

Another thing I saw was the tendency to add a lot of stuff to kanban, trying to turn the process control system into a methodology. I felt that would muddy the waters, confusing a spark plug with an engine, so to speak. This would make it difficult to use the spark plug in a different engine. :-)

Kanban is originally a part of the Toyota Production System (TPS). TPS ideas have been translated to many different fields of endeavor. A good place for a software developer to start is with Tom and Mary Poppendieck's book:

Lean Software Development

This will get you a feel for the system as a whole. Kanban is just a small part of it.

I recommend the following books for software methodologists and managers who are serious about implementing Lean (or Agile software methodologies):

The Toyota Way by Jeffrey Liker

Lean Cost Management: Accounting for Lean by Establishing Flow by James Huntzinger

Hoshin Kanri for the Lean Enterprise: Developing Competitive Capabilities and Managing Profit with CDROM by Thomas L. Jackson

Study of the Toyota Production System: From an Industrial Engineering Viewpoint (Produce What Is Needed, When It's Needed) by Shigeo Shingo and Andrew P. Dillon (Well, you have to be a bit of a nerd to get through this one, but it will give you insights.)

john green green replied on Tue, 2009/09/15 - 11:41am

very helpful. Thanks!!!
------------
Get a good buy

Property Management replied on Thu, 2009/09/24 - 10:40pm

Lean Software Development still is useful, but the more I work in medium sized businesses, the more that rapid prototyping is the way to go.  You will get you a feel for the system as a whole just like Kanban, but it is worth trying. This does not mean throwing out Project Management discipline, but does mean getting to the end point earlier.  We have used it with the property management chicago site, the  brick paving site as well as many others.

 

Ash Mughal replied on Thu, 2012/01/26 - 2:52am

Many manufacturers have implemented electronic kanban systems.Electronic kanban systems, or E-Kanban systems, help to eliminate common problems such as manual entry errors and lost cards.E-Kanban systems can be integrated into ERP systems. Integrating E-Kanban systems into ERP systems allows for real-time demand signaling across the supply chain and improved visibility. Data pulled from E-Kanban systems can be used to optimize inventory levels by better tracking supplier lead and replenishment times

advanced java

Luka Thomson replied on Thu, 2012/08/16 - 5:15am

Thanks for explaining Kanban in a visual way. I wiill suggest this article to http://www.kanbanuniversity.com/ .

Byron Ryder replied on Thu, 2013/07/25 - 3:26am

There are a lot of definitions for kanban but none of them presents it`s true meaning as you managed to do. The pictures you posted made me understand better the meaning of "kanban" and how it works, I am involved in software development and met this term a lot of times. I am interested about E-Kanban systems and I am sure that the Anchor Wave Internet Solutions specialists met this term before and can provide me with some ideas.

Prets Singh replied on Fri, 2013/11/22 - 1:20am in response to: Pei Jifeng

 The HGF Website contains information pertaining to disorders of growth, growth hormone, and related endocrine or metabolic issues. We hope to update this part of the website at least monthly.www.hghprice.org

Prets Singh replied on Sat, 2013/11/23 - 6:14am in response to: Pei Jifeng

Prada Handbags USA  The market for second hand bags online is vast and you are guaranteed to find something you like.


Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.