Kkanbanwall

Why Kanban works · chapter 1 of 5 · 3 min

The board you already have

Nearly every team has a board. This chapter looks at the one most of them run, adds a single number to it, and finds out how long the work really takes.

  1. Overview
  2. 1
  3. 2
  4. 3
  5. 4
  6. 5

The problem with the boards nearly everybody has

Three columns and a wall of stickies. It took an afternoon to set up, everyone can see it, and it is a real improvement on a spreadsheet.

To do

4
search: filter dialog
infra: nightly backups
mobile: widget notes
perf: cold start

Doing

7
sync: retry queue
editor: paste formatting
api: rate limit 500
infra: load test
docs: getting started
history: show author
cli: remove on move

Done

2
auth: rotate tokens
sync: reject symlinks

And it is also where most boards stop, which is where most of the benefit is left behind. Look at Doing: seven things. Not seven things being worked on; seven things started. Nothing on the board limits how many cards can be there, so Doing holds whatever people decided to start. Most of those cards are not being worked on right now: they are waiting for someone. That is a queue.

Keep hold of that word. Everything that follows is about what a queue costs and what it takes to get rid of one, starting with the same board, grown up.

Adding a more structured process

Teams that stay with a board soon grow it past three columns, and this is the shape it usually takes: the wall this site ships, with a team of eight developers on it. "Doing" becomes a few steps, because being written and waiting for somebody to look at it are different places to be:

  1. Implement is where the work happens. Inside it, Locked is a column for a card that cannot move (waiting on another team, a decision, a broken environment), so it stops passing for work in progress.
  2. Review is where every pull request is reviewed by somebody else on the team.
  3. Validate is a manual test of each task, by a person, before it ships. Not every team does it, and we recommend it: now that AI writes so much of the code, somebody checking that what was built makes sense from a user's point of view is worth more than ever.
  4. Deploy is there to see what has been finished.

Backlog

before the clock
Next up
search: filter dialog
perf: cold start
+9

Implement

16 in progress
Open
sync: retry queue
editor: paste formatting
api: rate limit 500
+9
Locked
sync: stuck on vault
Done
docs: getting started
+2

Review

4 in progress
Open
cli: remove on move
editor: crash on empty
+1
Done
perf: slow listing

Validate

3 in progress
Open
search: filter tests
+1
Done· CI owns it
mobile: incoming empty

Deploy

this week · 10 shipped 🎉
Merged
auth: rotate tokens
Releases
v2.4 · 6 cards

It looks like a healthy board. Everybody has something to do, cards move every day, and anybody walking past can see where each piece of work is. Most teams stop here.

The number nobody looks at

Now put one more number on every card: how many days since somebody started it. Almost no board shows it. The tools show where a card is, not how long it has been there, and nobody remembers when each thing was started, so nobody knows. It is the most important number on the wall.

Backlog

before the clock
Next up
search: filter dialog
perf: cold start
+9

Implement

16 in progress
Open
sync: retry queue 3
editor: paste formatting 6
api: rate limit 500 9
+9
Locked
sync: stuck on vault 11
Done
docs: getting started 8
+2

Review

4 in progress
Open
cli: remove on move 10
editor: crash on empty 12
+1
Done
perf: slow listing 11

Validate

3 in progress
Open
search: filter tests 12
+1
Done· CI owns it
mobile: incoming empty 12

Deploy

this week · 10 shipped 🎉
Merged
auth: rotate tokens 6
Releases
v2.4 · 6 cards

The oldest cards say 12. That is the first surprise for nearly every team that turns the counters on: did you know your work stays open that long? And it is not the odd card. Measure it over months and this is what the board comes to:

The board
No limits
Finished a week
10.0
In progress
24.1
Cycle time
12.1 days
Constraint
Implement

From the moment somebody starts a change to the moment it is done takes 12 days on average, for about four days of actual work. That number is the team's cycle time, and it is the one a customer feels: how long they wait after hearing "we are on it".

Nobody here is lazy. While a developer waits for an answer or a review on one card, they start the next one, and from then on they switch between the two. Each card is only being worked on half of the time, so four days of work stretch over eight, and the time spent waiting for review and validation comes on top. Eight developers, 24 cards in progress: the team is not slow, its work is waiting.

Little's Law is John D. C. Little's (1961). The theory of constraints and drum-buffer-rope are Eliyahu M. Goldratt's, from The Goal. The walk with the dog is David J. Anderson's. Flow efficiency is from Modig and Åhlström's This Is Lean. The simulations are ours, and the arithmetic is theirs.

0562