How_to_use_this_template

๐Ÿ“– How to use this template

A Kanban board that pulls work from Backlog to Done through columns with WIP limits, with a Blocked column for anything waiting on someone else and four swimlanes for the classes of service a team actually runs. Each root task is one card. Its subtasks are the acceptance criteria that decide when it may leave In Review.

The sample is a six-person product team on a billing app: 21 cards across the four lanes, three already Done so Cycle Time has numbers, one expedite in flight, two cards parked in Blocked with a written reason.

  1. Duplicate this project into your own organization (dropdown next to the project name, then Duplicate)
  2. Switch to Board view, group it by Class of Service, and turn on Task bundle from the board icon so each card keeps its acceptance criteria inside it. The columns are the statuses; the swimlanes are the classes of service. Delete the sample cards and add your own, one root task per piece of work
  3. Set Class of Service on every new card, or it falls outside the four lanes. Fill Size and Request Source when a card enters Ready. A card with no size is not ready
  4. Set Started the day a card enters In Progress and Finished the day it reaches Done. Cycle Time calculates itself
  5. The moment a card waits on someone outside the team, move it to Blocked, set Blocked Since, and write the reason and the owner into Blocked Reason. A blocked card with no reason is just a hidden card

The fields

Field What it holds
Class of Service Expedite, Fixed date, Standard or Intangible. Group the board by it to get one swimlane per class
Size XS to XL. Relative effort, not hours. Anything XL gets split before it enters Ready
Request Source Where the card came from: Customer, Internal, Bug report, Tech debt, Compliance. Filter on it to see who the board is really serving
Started The day the card entered In Progress
Finished The day the card reached Done
Cycle Time Finished minus Started, shown in days. Formula. The one number that tells you whether the WIP limits are working
Blocked Since The day the card entered Blocked. Sort by it to find the oldest wait
Blocked Reason What it waits on, who owns the wait, and when it was last chased

Status is the column

Backlog โ†’ Ready โ†’ In Progress ยท WIP 3 โ†’ In Review ยท WIP 2 โ†’ Done

Plus two side exits: Blocked and Won't do.

The WIP limit lives in the column name on purpose: it is a team rule, not something the tool enforces. When In Progress holds three cards and a fourth is ready, nobody starts it. Someone finishes or unblocks something first. That is the whole discipline, and it is what makes the cycle time drop.

Column policies

A card may move right only when the column it leaves is done with it:

Leaving Only when
Backlog โ†’ Ready It has a Size, a Request Source, and at least one acceptance-criteria subtask
Ready โ†’ In Progress In Progress is under its WIP limit, and the person pulling it sets Started to today
In Progress โ†’ In Review Every acceptance-criteria subtask is checked and a reviewer is assigned
In Review โ†’ Done The reviewer approved in a comment and Finished is set
Anything โ†’ Blocked Blocked Since and Blocked Reason are filled, with a named owner for the wait

Swimlanes are the class of service

The Class of Service field is not a team. It is how urgently a card gets pulled. Group Board view by it and each class gets its own swimlane. The four sections hold the same split in List view:

  • Expedite. Max 1 card. Production is down or a customer is blocked. It jumps every queue and the team swarms it. If a second expedite appears, the first one was not an expedite
  • Fixed date. A launch, a contract, an audit. Pull it early enough that it never needs to become an expedite
  • Standard. Everything else, pulled first-in first-out from Ready. Most of the throughput lives here
  • Intangible. Tech debt and tooling. Nothing breaks tomorrow if it waits, which is exactly why one card from this lane stays in progress at all times. Otherwise the lane never moves

Tags are what the card is

Bug, Feature, Customer Request, Tech Debt, External Dependency. A card can carry more than one. Filter on External Dependency to see how much of the board is waiting on a vendor.

Reading it

Switch to Board view: the columns are the statuses, so a glance shows which column is over its limit. Switch the grouping from Class of Service to Assignee for a moment to see who is carrying three cards and who is carrying none.

Switch to Table view and sort by Cycle Time to find the slow cards, then read their comments. The reason is usually a hand-off, not the work itself.

Filter by status Blocked and sort by Blocked Since. The top row is the oldest wait on the board, and it has an owner written in Blocked Reason.

Adapting it

The columns are a starting point. A team with a separate QA step adds a Testing column between In Review and Done. A team that deploys on a schedule adds Ready to Deploy. Keep the WIP limit in the column name, and keep it small: the limit that feels too tight on day one is usually the right one by week three.

If you do not use classes of service, rename the four Class of Service options, and the four sections, to your product areas or your squads. The columns, fields and policies do not care.

The three-and-two WIP limits suit a team of five or six. Halve them for a pair, and resist raising them for a bigger team before you have a month of Cycle Time to argue with.


Project: Kanban Board