Project delivery
Release forecast
Remaining size against pessimistic, expected and optimistic velocity, producing a range of weeks rather than a date, with rows that price scope growth and a smaller team.
What it is
A forecast from a sample should be reported as a range, because the spread between cycles is what determines whether a date is safe. Dividing remaining work by an average velocity produces one clean number and discards the variation that made the average worth calculating.
This sheet runs the arithmetic three times, against the lowest, mean and highest recent velocity, and adds rows that price the two assumptions everybody makes silently. The backlog will not grow, which it will, and the team will stay the same, which it may not. A forecast that names its assumptions can be corrected when they break, while one delivered as a date gets treated as a commitment and then defended.
The numbers are local to one team. Velocity is denominated in units that team invented, anchored to its own reference items, and the moment it is used to compare teams or as a target it stops forecasting anything.
When to use it
- A sponsor wants a date and the honest answer is a range.
- Delivery has completed several cycles and nobody has used the history to project anything.
- A single average is being reported as a commitment.
- The backlog keeps growing and the forecast has never accounted for it.
The columns
- Scenario
- Remaining size
- Velocity
- Cycle length (weeks)
- Cycles remaining
- Weeks remaining
- What this row is for
The template
| Scenario | Remaining size | Velocity | Cycle length (weeks) | Cycles remaining | Weeks remaining | What this row is for |
|---|---|---|---|---|---|---|
| Pessimistic | 240 | 19 | 2 | 12.6 | 25.3 | The date this is unlikely to slip past |
| Expected | 240 | 26 | 2 | 9.2 | 18.5 | The date to plan around |
| Optimistic | 240 | 31 | 2 | 7.7 | 15.5 | Reachable if nothing goes wrong, which is not a date to promise |
| With scope growth at 8 per cent | 259 | 26 | 2 | 10.0 | 19.9 | The expected case with the backlog growing as it has been |
| With the team one person down | 240 | 21 | 2 | 11.4 | 22.9 | The known risk, priced |
Cycles remaining and Weeks remaining are formulas. Change the velocity or the remaining size and every row recalculates.
Where the three velocities come from
Observed cycles, not estimates. Take the last five to eight completed cycles and read the lowest, the mean and the highest straight off them.
The example above comes from cycles of 22, 31, 28, 19 and 30. The lowest is 19, the highest 31, and the mean 26. A single cycle tells you almost nothing. Three or more give a range, and the range is what makes a forecast honest, because the spread determines whether a date is safe.
Report the range, never one number
A sponsor given 18.5 weeks will plan against 18.5 weeks, with no idea that 25 was equally consistent with the evidence. The single average discards the variation that made the average worth calculating.
The useful sentence is that the work finishes in roughly 16 to 25 weeks, most likely around 19, assuming the backlog does not grow and the team stays the same. That is answerable, correctable and does not become a promise.
State the two assumptions on the sheet
Both are usually false and both are recoverable when they are named.
The backlog will not grow. It will. The scope growth row prices that using the rate the backlog has actually grown over recent cycles, which is a number you have rather than a guess. If the backlog has grown eight per cent per quarter, forecasting from today's remaining size alone is optimistic by a knowable amount.
The team will stay the same. Departures, holidays and reassignment all move velocity. The team down one row prices the known risk rather than leaving it as a caveat somebody forgets.
A forecast that names its assumptions can be corrected when they break. One delivered as a date gets treated as a commitment and then defended.
Velocity is local
The numbers here are in units this team invented, anchored to its own reference items. They mean nothing outside it, and comparing them with another team's is comparing two different scales.
The moment velocity is used as a target it stops forecasting. A team measured on it will produce more of it by sizing more generously, by splitting items to inflate the count, or by finishing work to a lower standard, and none of those deliver anything more. Keep this sheet inside the team and report the forecast outward.
Counting items instead
Where a team already splits work until each piece is small, the number of items finished per cycle forecasts about as well as the sum of their sizes. Put item counts in the size and velocity columns and the sheet works unchanged.
That is worth trying if sizing sessions have become a ritual that produces numbers nobody uses. The framework asks for a size and not for a particular way of arriving at one.
Updating it
Once per cycle, after the review. Update the remaining size from the backlog, add the completed cycle to the velocity history, and reread the three scenarios.
The forecast moving is not a failure. A forecast that never moves is either not being updated or is being managed towards a date somebody wants, and both are worse than a range that shifts as evidence arrives.
Questions people ask
- How many cycles before this is meaningful?
- Three at an absolute minimum and five is better. One cycle tells you almost nothing, and a forecast from a single observation is an estimate wearing arithmetic.
- What if the team does not use story points?
- Put item counts in the size and velocity columns and the sheet works unchanged. Where work is already split into similar sized pieces, counting items forecasts about as well as summing sizes.
- The forecast keeps moving. Is that a problem?
- No. A forecast that never moves is either not being updated or is being managed towards a date somebody wants, and both are worse than a range that shifts as evidence arrives.