JP Patil is Director of Strategic Initiatives at Digite, where he focuses on trying to understand how people work and how to help them get things done faster and with higher quality.

There has been a lot of talk recently about the Lean approach (henceforth shortened as “Lean”) and how it can be used to transform software development like it transformed manufacturing. However, most of the talk is about the benefits of Lean and not how to actually make your team Lean. Kanban is a way to get Lean.

Kanban was created as part of the Toyota Production System to help Toyota become Lean in the 1940s. It has been used over the years to revolutionize manufacturing and distribution in many industries. Over time Kanban has been modified so that it can be applied to almost anything via offshoots like the Kanban Method, Team Kanban, Kanban Software Dev, and Personal Kanban. Most share the common characteristics we are going to talk about and therefore I will refer to them collectively as “Kanban.”

So how does Kanban make you Lean? Here’s how it works:

  1. Work is visualized
  2. Work-in-progress (WIP) is limited
  3. Changes are incremented
  4. Feedback loops are implemented (which to me comes down to measurement of and acting on data)

Let’s go through each of these four aspects before we get to how Kanban enables the Lean method.

A picture is worth a thousand words

Scientists say that we get more than 80 percent of information we gather about a situation visually. Moreover, the human eye can process visual patterns much faster in a picture than in text because your brain needs to process and decode letters and words before you can actually understand what you are reading.

If that is the case, then why do most project management tools use e-mail or news streams to deliver information?

Think about the tools you use to manage projects – -spreadsheets, word documents, task management software, etc. Aside from some dashboards, often you get your information updates either in a barrage of e-mails, a stream of text or through a Facebook-like news feed.

Kanban is almost the complete opposite.

Kanban board

Above: Kanban board

Image Credit: JP Patil

From a quick glance we can see the following: What phases work is in, who is working on what, what work is blocked, where are bottlenecks, who has free time, etc.

If you notice from the Kanban board, work has been visually mapped into its various steps. This helps you focus on the things that actually deliver value to your customers. You are able to quickly ientify which phases of work are critical to success and which are flexible. It helps to visualize and focus the business on what matters to delivering value and to remove things that don’t.

Stop starting and start finishing!

People are bad at multitasking. Numerous studies have shown the more people task switch, the less effective they are at completing work. Additionally, the more people multitask, the more likely they are to make errors in what they are doing. This is the exact opposite of what many people think and as a result multitasking is viewed as a valuable talent and is championed when it shouldn’t be.

Here is an experiment for you to do:

  1. Time yourself counting from 1 to 26.
  2. Time yourself saying the alphabet a to z.
  3. Add up the times.
  4. Now time yourself counting from 1 to 26 while alternating saying the alphabet, so 1, a, 2, b, 3, c, etc.
  5. Were you faster at saying each sequence individually or when you alternated?

Kanban helps reduce task switching by limiting work-in-progress (WIP). By limiting the amount of work that can be in any phase of the value stream, before any new item can be introduced in that work step, there must be capacity. If there is no open space, work downstream must be completed to create open capacity. Work is pulled through the system by available capacity, not pushed. You need to finish what you are doing before you can start something new.

Kanban also promotes one-piece-flow and Minimum Marketable Features (“MMF”). What this means is that you break work into its smallest components and work on each component individually. Each MMF ideally moves independently through work phases rather than a large batch item. This allows work to move through the system more quickly but also at a steady state. Moreover, it also allows you to deal with unplanned work while maintaining consistent flow because you have greater flexibility. Think of it this way: It’s easier to rearrange a lot of pebbles in different combinations to fill up space in a jar rather than large rocks.

You say you want a revolution?

We all know change is hard. First you need to know what to change and then you actually need to take the steps to make the change happen. It’s hard to get yourself to change, but it’s even harder for a team to change.

Kanban helps you improve slowly. Kanban is not a prescriptive method of doing work. Kanban is about taking what you are doing now but improving on it through continuous incremental change. So if you already have a process in place that you like to follow, visually map it out and keep doing work. Put Kanban on top of your existing process.

Pretty quickly you will start to see where work is tending to group up. Put WIP limits in earlier work phases and see what happens. Flow will likely improve and you will start getting more done. New bottlenecks will start to appear, and by creating/removing phases of work and by adjusting the WIP limits, you can start improving.

This small incremental approach to change is why people call Kanban evolutionary rather than revolutionary. The team evolves to something better with everyone contributing to and being a part of the change. Revolution in an organization is often dictated from the top down or from outside in. When this happens teams are less likely to buy into the change, resent being told what to do, and will revolt. Skip the revolt and evolve.

Why Estimate? Predict!

If you can’t measure it, you can’t fix it. Internally at Digite, we have found this to be true. When we switched from a hybrid agile-waterfall development strategy to Kanban, we learned we were missing out on a lot of important data. Once we moved to Kanban and focused on the right data, we reduced our cycle time by over 300 percent.

Through the use of a software Kanban tool you can capture and measure lots of data. In fact, all these data points are captured automatically. As cards are moved through work phases, data relating to how work is flowing and being done is captured through the movement of the card itself. Information like days to complete a task, lead-time, wait time, rework time, and throughput time are all captured without needing manual entry.

What can you do with this data? Let’s say your sales team tells you a feature needs to be added for a critical customer and wants to know when they can tell the customer to expect the new release. Instead of guesstimating that it will take your team around 15 days to complete, you can look at your data and say for similar features it has taken us on average 21 days to complete. In fact you might be able to say that with 95 percent certainty you will complete the feature in 24 days. Your team and the customer now all have a reasonable expectation of when the feature can be released. You can stop guesstimating on when you will ship and become data driven.

Go Lean

So bringing it all back: How does this make you Lean?

For those unfamiliar with Lean, it’s manufacturing philosophy that also originated from Toyota. Lean tells you to focus on preserving value and the use of resources for anything other than driving value to the end customer is wasteful. But Lean does not mean simply eliminating waste. It also means to strive for maximum value and to continuously reflect and improve.

There are five pillars to achieving Lean:

  1. Deliver Value
  2. Map the Value Stream
  3. Continuous Flow
  4. Pull Work
  5. Continuous Improvement

When using Kanban, you are implementing Lean. Value stream mapping, continuous flow, and pulling work instead of pushing work all happen just by doing Kanban itself so you are more than halfway there already.

Continuous improvement comes from the combination of data analysis, the implementation of feedback loops, and incremental change. Data and analytics provide insight into how you are performing and what needs to change. Feedback loops provide real-time information on how you are doing and gives you the opportunity to adjust as necessary to meet your goals. Finally, through incremental change, scientific experimentation becomes easier and the negative or positive effect of any one change is more visible. This allows for fast failure or success.

Delivering value is addressed in several ways. First, WIP limits require that work be fully completed to create capacity. This forces you to ship and deliver. Second, as waste and blockages are made apparent and reduced through visualization of the value stream and continuous improvement, more of your time can be spent on things that bring value to the customer. Third, using MMFs work is completed in smaller batches, which means quicker delivery and faster time to market. This leaves more time to iterate and less chance of scope creep.

Who can use Kanban?

I am sure some of you are thinking, “Kanban sounds great for software development or manufacturing but it wont work for me.”  However, Kanban is used in many situations.

Let’s talk sandwiches. When you get up to the counter at a Subway, someone asks you what you would like and lays out the bread and meat for your order. Your sandwich and you do not move forward until the next sandwich artist has the ability to put on your toppings. Once your toppings are put on you might have to wait for dressing or to pay. You have just been part of a Kanban system. The sandwich was the visual cue (and in this case also the actual work product) moving through various phases of work while being pulled from downstream capacity.

People use Kanban for all sorts of things, like managing their law practices, magazine publishing, video game development, book translation, construction project management and television show production just to name a few. Internally we use Kanban not just for our development activities but also for human resources, finance, sales and professional services. Jim Benson has also taken Kanban and created a personal version to help people in their individual lives aptly called Personal Kanban. Everyone can use Kanban.

My favorite example of a non-software use of Kanban is a father using it to manage his kids chores and homework. Using a white board, he created a simple Kanban system.  The phases of work were simply “To Do,” “Doing,” and “Done.” When his kids move an item of work to the “Done” phase, they are awarded a certain number of points based on what was completed. The kids can cash in the points for various rewards. It’s a great way to motivate kids, keep track of what needs to get done and what is actually getting done.
