Kanban - A Crash Course

Preview:

DESCRIPTION

This talk was delivered internally to the Neo crew to help level up our use of Kanban on our projects.

Citation preview

KanbanA Crash CourseSeptember 25, 2014

Increasing speed and quality, simultaneously.

Backgrounda lightning history of quality control.

W. E. Deming“In God we trust. All others must bring data.”

Taichi Ohno“People who can't understand numbers are useless… However, people who only look at the numbers are the worst of all.”

Eli Goldratt“The entire bottleneck concept is not geared to decrease operating expense, it’s focused on increasing throughput.”

Getting startedin five easy steps.

1. Visualize the Workflow

• Map your current process as-is.

• Columns represent process steps for value-added work.

• Include every step from idea to end consumer.

Pro-tip:

The board is not permanent. Iterate the board configuration periodically, as a team, to find the optimal configuration for your process. Use retros for this.

2. Apply WIP Limits

• Only allow a limited amount of work to be in each column.

• Work does not move into the next column until a space opens up.

• The effect is a “pull system” where the end consumer gradually pulls work through like a vacuum.

Pro-tip:

Despite overwhelming scientific evidence to the contrary, people still think if they multitask they will get more done, more quickly. It is simply not true.

3. Make Policies Explicit• Some work items have higher “cost-of-delay”. Allow them to take

the “carpool” lane, using explicit service classes.

• Most items will be a “Standard” (FIFO) class of service. Others might be “Expedite” or “Fixed Date”.

• Separate classes of service will smooth flow overall. In business, predictability can be worth more than speed.

Pro-tip:

Reserve some capacity for unexpected work, perhaps with an 80/20 distribution. This will allow for more urgent work to move faster through the system, without affecting the flow of standard items.

4. Measure and Mange Cycle Time

• The metric for speed is Cycle Time or Throughput. They are mathematically equivalent.

• Cycle time = the average work time from idea to consumption.

• Throughput = the number of items completed per time period.

A Cumulative Flow Diagram (CFD) is the best visualization for this, but it takes some getting used to. You can also use a Control Chart, but it is best to have both.

Pro-tip:

5. Optimize with Science!

• Think carefully before you modify the board.

• Make changes to the board based on a stated expected outcome.

• Measure whether it actually improves performance, and change it back if it doesn’t work.

Pro-tip:

Consistent violations of WIP limits at the same column indicate a communication or coordination breakdown. Half-done work is probably being stalled or blocked, prompting the premature pull of new work.

The Science of KanbanBecause, well… math.

WIP Limits Increase Speed• Knowledge workflows, like networks, are subject to the same

constraints as any flow-based systems.

• In systems with variable arrival and processing rates, queues tend to form between process steps.

• Queue size increases exponentially with linear increases in capacity.

WIP Limits Increase Speed

• As capacity increases, systems risk catastrophic collapse (think traffic jams).

• WIP limits place an upper bound on the capacity of the system to prevent exponential growth of queues.

What About Velocity?Worse than useless

Velocity

• Velocity obscures the most important source of waste: queues.

• Most of the waste in knowledge workflows comes from items waiting in queues between processing steps.

• The relative difficulty of engineering tasks has an insignificant impact on the overall throughput of the system.

Estimates• Planning poker encourages “group think”. Statistics beats human

intuition every time.

• Uncalibrated gut-feeling estimates are worse than useless. They are dangerous.

• You can predict with 95% confidence that an item will be completed within two standard deviations of the mean cycle time.

ReviewFive easy steps

Review1. Visualize the workflow.

2. Apply WIP constraints.

3. Make policies explicit.

4. Measure and manage flow.

5. Improve the board configuration iteratively.

Thank you!