PR-03
Monthly Planning Advisory
Planning Recommendations
Default severity: medium
PrioritizationEstimationOutputBusiness Value
What it detects
Generates monthly delivery capacity advisory for operational planning and stakeholder communication. Aggregates sprint-level baselines into monthly equivalents. Accounts for the number of sprints per month (configurable).
Detection formula
sprints_per_month = config.pr.sprints_per_month // default: 2 (2-week sprints) FOR each_dimension D: monthly_floor = baseline(D).plan_low * sprints_per_month monthly_target = baseline(D).plan_optimal * sprints_per_month monthly_ceiling = baseline(D).plan_high * sprints_per_month FORMAT: \'Monthly delivery advisory: expect 12–20 features and 48–80 SP delivered per month (target: 16 features / 64 SP). Use for roadmap communication and capacity planning.\' **Info** velocity_baseline × sprints_per_month Planning Recommendations **PR-04** **Quarterly Planning Advisory (PI Level)** Generates quarterly / PI-level planning advisory for programme increment planning. Provides expected delivery ranges in all three dimensions across the PI horizon, adjusted for planned team capacity changes, holidays, and IP sprint if configured. This is the primary input for PI commitment sizing. pi_weeks = config.planning.pi_duration_weeks // default: 12 weeks (6 × 2-week sprints) ip_sprints = config.planning.ip_sprints_per_pi // default: 1 (IP/hardening sprint excluded from velocity) delivery_sprints = FLOOR(pi_weeks / config.sprint.duration_weeks) - ip_sprints FOR each_dimension D: pi_floor = baseline(D).plan_low * delivery_sprints pi_target = baseline(D).plan_optimal * delivery_sprints pi_ceiling = baseline(D).plan_high * delivery_sprints // Adjust for known capacity reductions (holidays, team changes): capacity_factor = config.pr.pi_capacity_factor // default: 0.85 (15% reduction for PI overhead) pi_adjusted_target = pi_target * capacity_factor FORMAT: \'PI planning advisory (10 delivery sprints): commit 240–400 SP (target: 320 SP adjusted for PI overhead). Do not accept more than 400 SP into PI scope.\' **Info** velocity_baseline × delivery_sprints × capacity_factor Planning Recommendations **PR-05** **Backlog Refinement Depth Advisory** Advises the Product Owner on how many items should be refined and ready (DoR-compliant) at any point in time to support the next N sprints without last-minute scrambling. Based on throughput and typical refinement-to-sprint lag. sprints_to_buffer = config.pr.refinement_buffer_sprints // default: 2 (keep 2 sprints ready ahead) FOR each_dimension D: required_ready_items(D) = baseline(D).plan_ceiling * sprints_to_buffer current_ready = COUNT(issues WHERE status IN config.workflow.preparation_stages AND dor_score >= config.dod.stages\[\'Ready\'\].threshold) IF current_ready \< required_ready_items(issue_count) THEN FLAG refinement_backlog_thin FORMAT: \'Refinement advisory: keep at least 16–20 items in Ready state at all times (currently: X items ready). Prioritise refinement sessions to replenish.\'Examples in practice
- A team shows generates monthly delivery capacity advisory for operational planning and stakeholder communication while sprints per month is set to 2 (2-week sprints).
- Example signal: Generates monthly delivery capacity advisory for operational planning and stakeholder communication.
Suggested response
Use the advisory outputs to tune refinement, WIP, and planning cadence with data.
Coaching playbook
Symptom
Generates monthly delivery capacity advisory for operational planning and stakeholder communication. Aggregates sprint-level baselines into monthly equivalents. Accounts for the number of sprints per month (configurable).
Why it matters
When "Monthly Planning Advisory" 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
Use the advisory outputs to tune refinement, WIP, and planning cadence with data.
Facilitation questions
- What system change would stop "Monthly Planning Advisory" 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.