Greggle

Greggle · Ways of thinking · Theory of Constraints

A way of thinking · best for a Project or a Problem

Theory of Constraints

Find the one place the whole flow narrows, squeeze it before you spend on it, make everything else serve it, then follow it to wherever it moves next.

Origin

Eliyahu Goldratt, 1984

Best for

a Project, a Problem

Takes

An hour to find it, weeks to serve it

Needs

A flow, and the queues along it

Where it came from

Eliyahu Goldratt was an Israeli physicist who wrote his management theory as a novel. The Goal, published in 1984, follows a plant manager with three months to save his factory, who learns from an old physics teacher that a system’s output is limited by its one narrowest point, and that improving anything else is wasted effort. The book sold millions of copies to people who would never have read a textbook, which was the idea.

The method is the five focusing steps. Identify the constraint. Exploit it: get everything out of it with what is already there. Subordinate everything else to it, so it never waits and never drowns. Elevate it: only now, spend money on more capacity. Then go back to step one, because the constraint has moved. Goldratt spent the rest of his life applying the same idea to projects, in Critical Chain in 1997, and to supply chains.

Greggle’s description of it points out something the other thirteen methods can’t claim: the Theory of Constraints is the only one whose own definition tells you to recurse, and a tool where every step is a board of its own is shaped exactly for that.

Why it works

Effort spread evenly across a process improves nothing that matters, because every step except one has slack, whether it admits it or not. Effort at the one narrow point improves everything downstream of it. This is unintuitive, which is why it is worth a whole method: an hour lost at the constraint is lost to the whole system, and an hour saved anywhere else is usually nothing.

Queues are the evidence. Work piling up in front of a step and idle hands after it is what a constraint looks like. A step that merely feels busy is not it. And the constraint is a fact about the flow, not a vote: if two places look equally narrow, trace the flow again until one of them isn’t.

When to reach for it, and when not to

Reach for it when you are busy and nothing gets finished, when work visibly piles up in one place while people further along wait, or when a project is late and adding effort hasn’t helped. A Problem of throughput, or a Project whose flow has a narrow point.

It is the wrong tool for a problem with a single cause that isn’t about flow; that is 5 Whys. And it needs a system: a set of steps that work passes through. A goal without a flow has no constraint to find. Greggle suggests it on a Project and on a Problem.

How to run it

With a pen, on one sheet of paper.

  1. Describe the system: what it exists to get through, the stages the work passes through in order, and the number that goes up when more gets through.
  2. Name the places the flow might narrow. For each, look for the evidence: what piles up in front of it, and who or what sits idle after it. Commit to one. A wrong constraint worked properly teaches you more than a right one never committed to.
  3. Exploit it. List the moves that recover capacity the constraint already has, without spending anything: stop it doing work that isn’t its job, stop feeding it broken input, stop letting it sit idle at handovers.
  4. Subordinate everything else. Decide what changes away from the constraint so that it never waits and never drowns, and say whose numbers get worse on purpose. If nobody’s do, nothing has been subordinated. Tell them yourself.
  5. Only if squeezing wasn’t enough, elevate: spend on more capacity at the constraint specifically. An empty elevate step is a result, not a gap.
  6. Ask where the constraint stands now. If it has moved, name the step it moved to, note which rules from this round must not become policy, and start again from the top on the new one.

There is a one-page card with these steps and a blank grid to fill in, made to print on A4. Or the PDF.

On a Greggle board

Pick Theory of Constraints on a Project or Problem board and Greggle proposes six steps: the system, the candidates with two to start, exploit, subordinate, elevate, and whether the constraint has moved. When it has, open the step it moved to and apply the framework again.

the top boarda step with steps inside opens when clicked
The band's set never gets finished, at the top: six steps from the system to whether the constraint has moved, with the candidates examined inside step 2
inside 2 — Find the constraint
Inside 2 — Find the constraint: the board one level down
inside 3 — Exploit: squeeze it first
Inside 3 — Exploit: squeeze it first: the board one level down
inside 4 — Subordinate everything else
Inside 4 — Subordinate everything else: the board one level down
inside 5 — Elevate, if squeezing was not enough
Inside 5 — Elevate, if squeezing was not enough: the board one level down
a real board · the band’s set, the six focusing steps · click a step to open it
1The system and its goalWhat it exists to get through. How the work flows, start to end. How you would measure what gets through.
2Find the constraintTwo to six candidates. Each: the signs of queueing, and a verdict: the constraint, a contributor, or examined and cleared.
3Exploit: squeeze it firstTwo to eight moves, each recovering capacity the constraint already has. Free, or it belongs in step 5.
4Subordinate everything elseWhat changes away from the constraint. Whose numbers get worse. Agreed with them, not yet raised, or raised and resisted.
5Elevate, if squeezing was not enoughInvestment at the constraint specifically. Honestly empty if step 3 was enough.
6Has the constraint moved?Moved, still here, or too early to tell. Where it lives now. What from this round must not become policy.

Nothing is added until you have looked at it. Open any step and it becomes a board of its own. Steps that cannot sensibly be cut smaller get marked as actions, and every action collects in one flat list.

What the check looks for

One button reads the whole branch back. On this method it reports, among other things:

  • Several candidates are each named as the constraint. The method insists there is one.
  • A candidate is named the constraint on no evidence of queueing, and the whole system is about to be bent around a suspicion.
  • Investment is listed and the squeezing step is empty, which is spending money before using what you already have.
  • The constraint is being squeezed and nothing elsewhere changes to serve it, or nothing says whose numbers get worse.

A worked example

a Problem · the band’s set never gets finished
The systemIt exists to get songs from chosen to performable. Flow: pick a song, each person learns their part at home, rehearse it together on Thursdays, run it clean twice, it’s in the set. Measure: songs in the set.
CandidatesLearning parts at home: nothing piles up in front of it and it finishes early. Cleared. Thursday rehearsal: six songs learned by everyone and waiting, and the two songs that reach it get through in a week. Queue in front, nothing waiting after. The constraint. The singer’s lyrics: slows two songs, but songs without lyrics still wait for Thursday. A contributor.
ExploitStart at five, not twenty past, which recovers twenty minutes a week. Free. Only rehearse songs everyone has learned, instead of teaching the drummer his part in the room. Free. Record every run so next week doesn’t start from scratch. Free. Stop rehearsing songs already clean. Free.
SubordinateThe guitarists stop learning new songs ahead and drill the queued ones instead, so Thursday never gets a song only half the band knows. Whose numbers get worse: theirs, they like learning new songs. Raised, and resisted, then agreed when the queue was pointed at.
ElevateEmpty, for now. If four free moves don’t clear the queue by half term, a second practice on Sundays, which costs everyone’s Sunday.
Has it moved?Too early to tell. Check at half term. If it moves to lyrics, apply this again to the singer’s step. Rule not to keep: "no new songs" was made to serve Thursday, and if Thursday clears it becomes the next constraint itself.

The instinct was to practise more at home. Home practice was never the constraint, so more of it would have lengthened the queue in front of Thursday and finished nothing.

Where it falls down

People find a constraint and then try to fix three things at once, or name three constraints and spread the effort across all of them, which is the same failure. One at a time, or it isn’t the method.

Subordination is where it quietly fails in practice. Somebody’s local efficiency has to get worse on purpose, and they will resist, reasonably, unless they hear why from you. A constraint exploited while the rest of the system carries on at its own pace is exploited on paper. And the rules made to serve one constraint, left standing after it moves, become the next constraint themselves.

Pairs well with

  • 5 Whys. When the fifth why is "because there is never enough time", this is the method that says where the time goes.
  • Working Backwards. A late project is a flow. Find where it narrows before adding milestones.
  • Force Field Analysis. Subordination means asking people to run below their best. The restraints on that are people, and this maps them.

Further reading

  • Eliyahu M. Goldratt and Jeff Cox, The Goal, 1984. A novel, and still the best introduction.
  • Eliyahu M. Goldratt, Critical Chain, 1997, for the same idea applied to projects.

Find where it narrows. Serve that, and nothing else.

This opens the app with the kind already chosen. Give the thing a name, press Start, and Theory of Constraints is proposed on the new board for you to look over before anything is added. Free, no account, works offline.

Open Greggle with Theory of Constraints