← All posts

Why Delivery Forecast Uses a Distribution, Not One Date

Delivery Forecast shows a better way to answer the ship-date question: simulate from your own throughput history and present a distribution, not a single date. The engineering value is in how it handles uncertainty, scope stability, and verification from observed delivery patterns.

Software teams still get asked for a date. The hard part is not producing a date. The hard part is producing one that reflects how delivery works in practice.

A single forecast date hides uncertainty. It compresses variation into false precision. Teams then build plans, promises, and dependencies around a number that never carried enough information in the first place. A better approach is to model a range of outcomes from your own throughput history and show the probability distribution directly.

Delivery Forecast demonstrates this approach in a compact form. It takes the data you already have, how much work you finish over time, and turns it into a ship-date distribution. For an engineer, the value is not the interface. It is the decision to ground the forecast in observed throughput instead of intuition, target pressure, or a top-down deadline.

Start with throughput, not effort estimates

Forecasting systems often fail at the input layer. They start from estimated hours, story points, or task-level guesses and then compound the error through every later step. Estimates drift. Scope shifts. Work gets split differently across teams and tools. The result looks structured, but the structure rests on weak inputs.

Using throughput history changes the question. Instead of asking, “How long will each item take,” you ask, “Given how work has been finishing, what completion dates fit the observed pattern.” This is simpler and closer to reality.

What you should inspect first:

  • What counts as a completed work item
  • The time window used for historical throughput
  • Whether the work item size is stable enough for throughput to mean anything
  • Whether blocked, abandoned, or reclassified items are mixed into the same stream

This class of system works best when your work definition is consistent. If one sprint closes ten small bug fixes and the next closes two large platform projects, raw item counts become noisy. The forecast is still data-driven, but the data is describing a moving target.

A practical check is to look at the historical series yourself. If throughput swings for clear operational reasons, such as batch closing, end-of-quarter cleanup, or irregular ticket splitting, treat the output as a prompt for investigation, not a planning fact.

Read the distribution, not the headline date

The main engineering choice in Delivery Forecast is in the description itself: a ship-date distribution, not a single date. This matters because delivery is stochastic. Teams do not finish the same amount of work every period. Interruptions happen. Review queues fluctuate. External dependencies land late. Production issues steal capacity.

A distribution preserves this variation. It lets you ask better questions:

  • What date corresponds to a conservative confidence level
  • How wide is the likely delivery window
  • How much schedule risk sits in the tail
  • How sensitive is the forecast to recent throughput changes

If you only extract one date from a probabilistic forecast, you lose the point. The distribution is the artifact. The date is one slice through it.

How you verify the claim:

  • Compare the forecast range with the underlying historical throughput spread
  • Check whether the output widens when throughput history is volatile
  • Check whether the output tightens when the history is stable
  • Re-run the same backlog size with different recent windows and compare the shift

A sound simulator should reflect variance in the source data. Stable throughput should yield a tighter expected finish window. Erratic throughput should widen it. If the output looks equally confident across both cases, the model is hiding uncertainty instead of expressing it.

Inspect the historical window and recency bias

Every forecast needs a view of the past. The problem is deciding which past. Too much history and you average over modes of work that no longer apply. Too little history and you overfit to a recent burst or slowdown.

This is where forecasting systems often go wrong in subtle ways. A team changes process, staffing, or work mix. The model still treats old throughput as equally relevant. Or the opposite happens. A short recent window captures a one-off event and overstates its importance.

Signals worth reading:

  • Sudden throughput shifts after a tooling or process change
  • Seasonal patterns in delivery cadence
  • Recent incidents or support load that pulled work away from roadmap items
  • Backlog grooming changes that altered what counts as one item

You do not need a complex statistical framework to get value here. You need discipline about the comparability of the historical sample. If the history spans different operating regimes, a single forecast blends incompatible data.

One useful verification step is to segment your history mentally before trusting any output. Ask whether the period used to forecast resembles the period in which the remaining work will be done. If your answer is no, the model input needs adjustment before the result becomes useful.

Scope quality matters as much as velocity history

Throughput-based forecasting is often presented as an antidote to bad estimation. It is. But it does not remove the need for scope control. Forecasting the finish date of unstable scope produces a clean chart with unstable meaning.

The core failure mode is simple. The number of remaining items changes while the forecast is being discussed as if it were fixed. Teams then argue about forecast accuracy when the underlying backlog kept moving.

What to inspect in your own process:

  • Whether the remaining work count is stable during the forecast window
  • Whether large items are being split consistently before entering the forecast
  • Whether hidden acceptance work, integration work, or compliance work appears late
  • Whether item creation spikes near milestones

A forecast system is strongest when it separates two sources of uncertainty. One is delivery variability, which throughput history captures. The other is scope volatility, which throughput history does not solve on its own.

For verification, freeze a scope snapshot and compare later outcomes against forecasts generated from that snapshot. Then track scope change separately. This helps you tell the difference between model error and moving-target error.

Watch for false precision in presentation

Many delivery tools produce exact-looking dates, decimal probabilities, or polished charts that suggest more certainty than the inputs support. This is a presentation problem, but it becomes an engineering problem once stakeholders start acting on the implied precision.

A useful forecast should make uncertainty legible. It should show spread. It should support planning at confidence levels appropriate to the decision. It should not invite a reader to treat the median as a commitment.

Common failure modes in this class of system:

  • Presenting one date without the surrounding probability range
  • Mixing incomparable work item types into one throughput stream
  • Ignoring structural changes in the team or process
  • Treating backlog count as fixed when scope is still shifting
  • Reading simulation output as a promise instead of a risk distribution

You can test for false precision with a simple thought exercise. If a small change in historical window or remaining item count produces a meaningful shift in the output, the forecast should communicate sensitivity openly. If it does not, the interface is smoothing over material uncertainty.

What to watch next

The next thing to watch is how teams operationalize the distribution. The useful follow-on is not a prettier chart. It is a planning habit. Pick confidence levels for different decisions. Separate scope change from throughput variation. Revisit the forecast as new completions arrive.

Delivery Forecast demonstrates a sound principle. Forecast from observed throughput. Show a distribution. Let the data express uncertainty instead of hiding it behind a single date.