VL-10

Recommended Planning Range Card — Per Team Per Sprint

Velocity

Default severity: medium
PrioritizationEstimationOutputRiskEffort

What it detects

Generates the recommended planning range card for the next sprint based on the velocity baseline. This is an output rule (always runs, no finding) — it produces the planning guidance that should be shared with the team before sprint planning. Shows min, max, optimal (median), and the recommended planning band for each dimension. OUTPUT (no finding, always generated):

Detection formula

FOR each_team T: FOR each_dimension D: planning_card(T, D) = { recommend_min: baseline(D).plan_low, // do not commit below this recommend_optimal: baseline(D).plan_optimal, // aim for this recommend_max: baseline(D).plan_high, // do not commit above this absolute_min: baseline(D).min, // historical floor absolute_max: baseline(D).max, // historical ceiling last_sprint: completed(D, last_sprint), // reference point trend: slope(D) > 0 ? \'increasing\' : slope(D) \< 0 ? \'declining\' : \'stable\' } present as: \'For next sprint: commit between X and Y SP (optimal: Z SP)\' **Info** Jira velocity baseline (output artifact, no Jira read required beyond VL-01) Velocity **VL-11** **Commitment Accuracy — Committed vs Completed Ratio** Measures how accurately each team commits to what they actually complete, per dimension. The commitment accuracy rate is the primary measure of sprint planning quality — it reveals both over-planning (low completion rate) and under-planning (unexpectedly high completion, typically from unplanned work). Tracked as a trend across all N baseline sprints. FOR each_sprint S AND each_dimension D: accuracy(D, S) = completed(D, S) / committed(D, S) // 1.0 = perfect; >1.0 = delivered more than committed (unplanned work); \<1.0 = under-delivered avg_accuracy(D) = AVG(accuracy(D), baseline_sprints) IF avg_accuracy(D) \< config.vl.min_commitment_accuracy // default: 0.75 THEN FLAG chronic_under_delivery (over-planning) IF avg_accuracy(D) > config.vl.max_commitment_accuracy // default: 1.20 THEN FLAG chronic_over_delivery (under-planning + unplanned work) IF linear_regression(\[accuracy(D,S)\]).slope \< 0 THEN FLAG accuracy_declining Report: accuracy per sprint per dimension as time series; target zone highlighted

Examples in practice

  • A team shows generates the recommended planning range card for the next sprint based on the velocity baseline while min commitment accuracy is set to 0.75.
  • Example signal: Generates the recommended planning range card for the next sprint based on the velocity baseline.

Suggested response

Plan to historical capacity—avoid repeated over or under-commitment and unstable velocity.

Coaching playbook

Symptom

Generates the recommended planning range card for the next sprint based on the velocity baseline. This is an output rule (always runs, no finding) — it produces the planning guidance that should be shared with the team before sprint planning. Shows min, max, optimal (median), and the recommended planning band for each dimension. OUTPUT (no finding, always generated):

Why it matters

When "Recommended Planning Range Card — Per Team Per Sprint" keeps appearing, the team is signalling a repeatable process gap. Left unexamined, the pattern hides where work really stalls and makes improvement metrics harder to trust.

What you can achieve

Plan to historical capacity—avoid repeated over or under-commitment and unstable velocity.

Facilitation questions

  • What system change would stop "Recommended Planning Range Card — Per Team Per Sprint" from firing again?
  • What do the cited issues have in common — same root cause or same workaround?
  • Who owns the two-week experiment and how will we verify on the next import?

Run this rule against your own tracker data with Flow Analyzer.

Product tourSign in
VL-10: Recommended Planning Range Card — Per Team Per Sprint — FlowAnalyzer