Goal: Demonstrate the difference between push ("batch") and pull ("lean") approaches to assembly lines.

Time: ~30 minutes.



  • Get ~50 sheets of white paper and a couple of pieces of yellow paper.
  • Set up four people at stations in a line, with a work area in front of each. The area between stations is the input/output area. A’s output area is B’s input area.
  • Teach the folders how to make an origami bird or a paper airplane. Arrange it so the first folder has a trivial job, the second folder has a fairly easy job, the third folder has to do the most work, and the last person has another trivial job (e.g., toss the airplane toward a target).
  • Explain that we’ll be using two different sets of work rules.
  • Start the line with the “push” rules, let the system run a while, and then stop them. Switch to the “pull” rules, let it run again, stop everybody, and debrief.

Push Rules ("Batch")

Each person uses the same rules:

  • If your work area is empty, take an item from your input area and work on it.
  • When you finish an item, put it in your output area.

Once a significant amount of work has piled in front of the third station, have the first station start to work on a yellow piece of paper and stop the system.

Pull Rules ("Lean")

Each person uses the same rules:

  • If your output area is empty and your work area is empty, take an item from your input area and work on it.
  • When you finish an item, put it in your output area.

Once a few items have come through, put a yellow piece of paper in and stop the system.


What happened?
Bring out these points:

  • There were piles of inventory in the push system, no piles in the pull system.
  • Most everybody (except the person at the end) stayed busy in the push system; people were waiting around in the pull system.
  • The bottleneck person was equally busy in both cases.
  • The system output was at the same rate in both cases.
  • The yellow paper was way back in the push system.


  • What is everyone’s productivity?
  • What is the system’s productivity?
  • Are they different?
  • How long from when a piece of paper starts until it pops out the other end?

What is waste in the two systems? The push system has wasted inventory and time wasted in work that’s not needed.

How can we improve?

How does this relate to software?

  • Whether everybody is busy or not says nothing about the productivity of the system as a whole.
  • Optimizing one part doesn’t optimize the system.

Could we get the system into balance…and keep it there?

How does each system respond to “shocks”?

What if…?

  • ...we switched to making a different object (e.g., birds instead of planes)?
  • we used a batch size greater than one? (Will responsiveness improve?)
  • we had specialized developers?


  • Lean flow suggests a pull system, not a push system.
  • Constraints are exposed by people waiting (not by inventory piling up).
  • It’s not balance or batch size that determines whether the system is push or pull – it’s whether you’re driven by your input or your output.

Toyoda was inspired by three things in setting up lean systems:

  • knitting machines that stop automatically when there’s a problem
  • Henry Ford’s assembly line
  • American supermarkets where people push their cart around.

Rules Summary

[William C. Wake, 2004. This writeup was for the Scrum Gathering in Denver, October, 2004. I developed this exercise based on reading about lean manufacturing, but it turned out others have beaten me to the punch; see http://www.mba.wfu.edu/dsjie/Tips/billington.htm for an example. Added a picture of the rules, 9-11-2005.]

Copyright 1994-2010, William C. Wake - William.Wake@acm.org