Sprint Planning Facilitator
Overview
Prepare for and facilitate effective sprint planning sessions. Produces capacity analysis, recommends stories based on priority and capacity, identifies dependencies and risks, and provides structured meeting agendas.
Core principle: Sprint planning should result in a realistic commitment with clear goals—not an overloaded wishlist.
When to Use
- •Preparing for upcoming sprint planning
- •Calculating team capacity after absences factored
- •Selecting stories from refined backlog
- •Identifying cross-team dependencies
Output Format
yaml
sprint_planning:
sprint_number: "[N]"
sprint_dates:
start: "[YYYY-MM-DD]"
end: "[YYYY-MM-DD]"
working_days: "[N]"
capacity_analysis:
team_members:
- name: "[Name]"
role: "[Role]"
availability: "[%]" # 100% = full sprint, 80% = 1 day off, etc.
notes: "[PTO, training, etc.]"
total_capacity:
available_person_days: "[N]"
historical_velocity: "[Points from last 3 sprints]"
recommended_commitment: "[Points range]"
capacity_confidence: "[High | Medium | Low]"
sprint_goal:
primary: "[One sentence goal]"
success_criteria:
- "[Measurable outcome 1]"
- "[Measurable outcome 2]"
recommended_stories:
committed:
- id: "[Story ID]"
title: "[Title]"
points: "[N]"
priority: "[P1 | P2 | P3]"
assignee_suggestion: "[Name or skill needed]"
dependencies: ["[Dependency if any]"]
risk_flag: "[None | Low | Medium | High]"
stretch:
- id: "[Story ID]"
title: "[Title]"
points: "[N]"
condition: "[When to pull in]"
dependencies:
internal:
- story: "[Story ID]"
depends_on: "[Story ID]"
type: "[Blocks | Informs | Shares-data]"
external:
- story: "[Story ID]"
depends_on: "[External team/system]"
status: "[Confirmed | Pending | At-risk]"
mitigation: "[If at-risk]"
risks:
- risk: "[Description]"
likelihood: "[High | Medium | Low]"
impact: "[High | Medium | Low]"
mitigation: "[Plan]"
carryover:
from_previous_sprint:
- id: "[Story ID]"
title: "[Title]"
remaining_points: "[N]"
reason: "[Why not completed]"
meeting_agenda:
pre_planning:
- "[Preparation item]"
planning_part_1: # What to build
duration: "[Minutes]"
activities:
- "[Activity]"
planning_part_2: # How to build
duration: "[Minutes]"
activities:
- "[Activity]"
Capacity Calculation
Step 1: Calculate Available Days
yaml
sprint_days: 10 # 2-week sprint
team_size: 5
availability:
- name: "Alice"
days_off: 0
available: 10
- name: "Bob"
days_off: 2 # PTO
available: 8
- name: "Carol"
days_off: 1 # Training
available: 9
- name: "David"
days_off: 0
available: 10
- name: "Eve"
days_off: 3 # Conference
available: 7
total_person_days: 44 # vs 50 theoretical max
Step 2: Apply Focus Factor
yaml
focus_factor: 0.7 # Account for meetings, support, etc. effective_capacity: 31 # 44 × 0.7
Step 3: Convert to Points
yaml
historical_velocity: sprint_n_minus_1: 34 sprint_n_minus_2: 28 sprint_n_minus_3: 31 average: 31 # Adjust for capacity difference normal_capacity: 35 # person-days in those sprints this_sprint_capacity: 31 capacity_ratio: 0.89 # 31/35 recommended_commitment: 28 # 31 × 0.89, rounded commitment_range: "25-30" # ±10% for uncertainty
Sprint Goal Framework
A good sprint goal is:
| Attribute | Description | Example |
|---|---|---|
| Outcome-focused | What value delivered, not tasks done | "Users can complete checkout" not "Build checkout page" |
| Measurable | Can verify achievement | "90% of test users complete flow" |
| Achievable | Realistic given capacity | Based on story selection |
| Singular | One primary objective | Not "A and B and C" |
Sprint Goal Template
code
By the end of this sprint, [user segment] will be able to [capability] as measured by [success metric].
Example:
By the end of this sprint, beta users will be able to complete the full onboarding flow as measured by 80% completion rate in testing.
Story Selection Algorithm
Priority Order
- •Carryover - Finish incomplete work first
- •Committed dependencies - Unblock other teams
- •Sprint goal stories - Primary objective
- •High-value backlog items - Based on priority
- •Tech debt - Allocate 10-20% capacity
- •Stretch - If capacity remains
Selection Criteria
yaml
include_if: - Story is refined (acceptance criteria defined) - Story is estimated - Dependencies are resolved or scheduled - Required skills available this sprint flag_if: - Story larger than 1/3 sprint capacity - Story has external dependency - Story is first of its type - Story touches unfamiliar code
Dependency Mapping
Dependency Types
| Type | Description | Risk Level |
|---|---|---|
| Blocks | Cannot start until other completes | High |
| Informs | Needs information from other | Medium |
| Shares-data | Uses same data structures | Low |
Dependency Visualization
code
Story A ──blocks──> Story B ──blocks──> Story C
│
└──informs──> Story D
External: API Team delivery ──blocks──> Story E
Status: Confirmed for Day 3
Risk Assessment
Common Sprint Risks
| Risk | Indicators | Mitigation |
|---|---|---|
| Overcommitment | Points > 110% velocity | Reduce scope, add stretch |
| Single point of failure | Only one person can do story | Pair programming, knowledge share |
| External dependency | Waiting on other team | Confirm timing, have backup work |
| Unknown complexity | New technology/domain | Spike first, time-box |
| Carryover debt | Multiple sprints of carryover | Address root cause |
Meeting Agenda Template
Pre-Planning (Before Meeting)
- • Backlog prioritized and refined
- • Capacity calculated
- • Dependencies identified
- • Carryover assessed
- • Sprint goal drafted
Planning Part 1: What (60 min)
- •Review capacity (5 min) - Present availability, velocity
- •Propose sprint goal (10 min) - Discuss and refine
- •Review carryover (10 min) - Remaining work from last sprint
- •Select stories (25 min) - Walk through recommendations
- •Confirm commitment (10 min) - Team agreement
Planning Part 2: How (60 min)
- •Task breakdown (40 min) - Stories → tasks
- •Identify risks (10 min) - Surface concerns
- •Assign initial owners (5 min) - Who starts what
- •Confirm understanding (5 min) - Questions, clarifications
Common Mistakes
| Mistake | Problem | Prevention |
|---|---|---|
| Planning to 100% capacity | No buffer for unknowns | Target 70-80% |
| Ignoring carryover | Compounds sprint-over-sprint | Address first |
| Vague sprint goal | No focus, no success measure | Use template |
| Skipping Part 2 | Poor task understanding | Allocate full time |
| Not confirming dependencies | Blocked mid-sprint | Verify before planning |
Output Checklist
Before sprint planning is complete:
- • Capacity calculated with availability factored
- • Sprint goal defined and agreed
- • Stories selected within capacity
- • Dependencies mapped and confirmed
- • Risks identified with mitigations
- • Carryover addressed
- • Team has committed (not been committed to)