Optimize Sprint Planning | Capacity & Goal Setting
Run efficient sprint planning in under 2 hours. Capacity calculation, sprint goal definition, story selection, and task breakdown using GitScrum analytics.
16 min read
Sprint planning sets the trajectory for the entire sprint. Poorly planned sprints lead to constant re-planning, missed commitments, and team frustration. Effective sprint planning is a skill that improves with deliberate practice. GitScrum provides the structure and data to make planning sessions focused, data-driven, and consistently productive.
Pre-Planning Preparation
Backlog Readiness Check
BEFORE PLANNING MEETING:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β READY FOR PLANNING CHECKLIST β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β PRODUCT OWNER RESPONSIBILITIES (1-2 days before): β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β [ ] Top 15-20 items refined and prioritized ββ
β β [ ] Acceptance criteria clear for top items ββ
β β [ ] Dependencies identified and flagged ββ
β β [ ] Questions from refinement answered ββ
β β [ ] Sprint goal draft prepared ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β DEFINITION OF READY: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β Story is "Ready" when: ββ
β β ββ
β β β Clear user story format or task description ββ
β β β Acceptance criteria defined ββ
β β β Story pointed (from refinement) ββ
β β β No unresolved questions ββ
β β β Dependencies identified ββ
β β β Design/mockups available if needed ββ
β β ββ
β β NOT READY = Should not be discussed in planning ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β GITSCRUM BACKLOG STATE: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β Backlog View: ββ
β β ββ
β β Priority β Title β Pts β Status ββ
β ββββββββββββΌββββββββββββββββββββββββΌββββββΌβββββββββββββββββ
β β 1 β User auth flow β 8 β β Ready ββ
β β 2 β Payment integration β 13 β β Ready ββ
β β 3 β Email notifications β 5 β β Ready ββ
β β 4 β Dashboard widgets β 8 β β Ready ββ
β β 5 β Report export β 5 β β Ready ββ
β β 6 β API versioning β 13 β β Needs AC ββ
β β 7 β Mobile responsive β ? β β Not pointed ββ
β β ββ
β β β Items 1-5 can be planned. Items 6-7 need refinement. ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Capacity Calculation
TEAM CAPACITY FOR SPRINT:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β DETERMINING AVAILABLE CAPACITY β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β BASE CAPACITY (10-day sprint, 5-person team): β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β ββ
β β Member β Available Days β Focus % β Effective Days ββ
β ββββββββββββββΌβββββββββββββββββΌββββββββββΌβββββββββββββββββββ
β β Anna β 10 β 80% β 8.0 ββ
β β Mike β 8 (2 PTO) β 80% β 6.4 ββ
β β Chen β 10 β 70%* β 7.0 ββ
β β Sarah β 10 β 80% β 8.0 ββ
β β Luis β 9 (1 training) β 80% β 7.2 ββ
β ββββββββββββββΌβββββββββββββββββΌββββββββββΌβββββββββββββββββββ
β β TOTAL β β β 36.6 days ββ
β β ββ
β β *Chen has on-call rotation this sprint ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β FOCUS FACTOR ADJUSTMENTS: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β Standard: 80% ββ
β β (meetings, reviews, context switching) ββ
β β ββ
β β Reduce for: ββ
β β βββ On-call duty: -10% ββ
β β βββ Interview hosting: -5% per interview ββ
β β βββ Major company event: -10-20% ββ
β β βββ New team member onboarding others: -10% ββ
β β βββ Being onboarded: 50% first sprint, 70% second ββ
β β ββ
β β Increase for: ββ
β β βββ Focused sprint (no demos, fewer meetings): +5% ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β HISTORICAL VELOCITY: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β GitScrum Analytics - Last 6 Sprints: ββ
β β ββ
β β Sprint 19: 42 pts (similar capacity) ββ
β β Sprint 20: 38 pts (1 person sick) ββ
β β Sprint 21: 45 pts (full team, focused) ββ
β β Sprint 22: 35 pts (holiday week) ββ
β β Sprint 23: 40 pts (similar capacity) ββ
β β Sprint 24: 44 pts (similar capacity) ββ
β β ββ
β β Average (full capacity): 42 pts ββ
β β This sprint adjusted: ~38 pts (reduced capacity) ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Planning Meeting Structure
Efficient Agenda
SPRINT PLANNING MEETING:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β 2-HOUR PLANNING FOR 2-WEEK SPRINT β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β PART 1: WHAT (45 min) β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β 0:00 - 0:10 Sprint Goal ββ
β β PO proposes, team refines ββ
β β ββ
β β 0:10 - 0:15 Capacity Check ββ
β β Review availability, calculate capacity ββ
β β ββ
β β 0:15 - 0:45 Story Selection ββ
β β Review top items, confirm understanding ββ
β β Pull items until capacity reached ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β BREAK (5 min) β
β β
β PART 2: HOW (60 min) β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β 0:50 - 1:40 Task Breakdown ββ
β β For each story: identify tasks ββ
β β Assign initial owners ββ
β β Identify dependencies ββ
β β ββ
β β 1:40 - 1:50 Dependency Review ββ
β β Check for blockers ββ
β β Confirm external dependencies ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β PART 3: COMMIT (10 min) β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β 1:50 - 2:00 Final Review ββ
β β Team confirms commitment ββ
β β Any final concerns? ββ
β β Sprint officially started ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β TIMEBOX STRICTLY: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β If not refined β Don't discuss in planning ββ
β β If debates on how β Spike or offline discussion ββ
β β If can't decide β PO makes call, move on ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Sprint Goal Setting
DEFINING SPRINT GOAL:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β OUTCOME-FOCUSED GOALS β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β GOOD SPRINT GOALS: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β β "Users can complete checkout with credit card" ββ
β β β Clear outcome, testable, valuable ββ
β β ββ
β β β "API performance improved to <200ms response time" ββ
β β β Measurable, specific target ββ
β β ββ
β β β "Mobile app ready for internal beta testing" ββ
β β β Clear milestone, stakeholders understand ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β POOR SPRINT GOALS: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β β "Complete PROJ-123 through PROJ-145" ββ
β β β Just a ticket list, no outcome ββ
β β ββ
β β β "Work on authentication improvements" ββ
β β β Vague, no success criteria ββ
β β ββ
β β β "Finish everything in the sprint" ββ
β β β Not meaningful ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β GOAL STRUCTURE: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β Template: "[User/System] can [do what] [value/metric]" ββ
β β ββ
β β Sprint 25 Goal: ββ
β β "New users can sign up, verify email, and complete ββ
β β their first project creation within 5 minutes" ββ
β β ββ
β β Supporting items: ββ
β β βββ User registration flow (8 pts) ββ
β β βββ Email verification (5 pts) ββ
β β βββ Project creation wizard (8 pts) ββ
β β βββ Onboarding tooltips (3 pts) ββ
β β βββ Welcome email template (2 pts) ββ
β β ββ
β β Stretch (if capacity allows): ββ
β β βββ Progress indicator (3 pts) ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Story Selection and Estimation
Confirming Estimates
ESTIMATION IN PLANNING:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β HANDLING ESTIMATES EFFICIENTLY β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β ESTIMATES SHOULD COME FROM REFINEMENT: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β Planning is for SELECTING items, not estimating them. ββ
β β ββ
β β If item isn't estimated: ββ
β β βββ Quick sanity check (1 min max) ββ
β β βββ Team agrees? Use the estimate ββ
β β βββ Disagreement? Send back to refinement ββ
β β βββ Critical? PO decides if we take the risk ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β RE-ESTIMATION TRIGGERS: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β Reconsider estimates if: ββ
β β ββ
β β βββ New information since refinement ββ
β β βββ Different team member will implement ββ
β β βββ Dependencies changed ββ
β β βββ Significant time passed (>2 weeks since pointing) ββ
β β ββ
β β Process: ββ
β β "Does anyone think this 8 is wrong given what we ββ
β β now know? No? Let's proceed." ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β PULLING ITEMS INTO SPRINT: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β GitScrum Sprint View: ββ
β β ββ
β β Sprint 25 Capacity: 40 points ββ
β β ββ
β β Committed: ββ
β β βββββββββββββββββββββββββββββββββββββββββββββββββββββββ ββ
β β β β User registration flow β 8 pts β β 8 total β ββ
β β β β Email verification β 5 pts β β 13 total β ββ
β β β β Project creation wizard β 8 pts β β 21 total β ββ
β β β β Onboarding tooltips β 3 pts β β 24 total β ββ
β β β β Welcome email template β 2 pts β β 26 total β ββ
β β β β Bug: Login timeout β 3 pts β β 29 total β ββ
β β β β Tech debt: Auth cleanup β 5 pts β β 34 total β ββ
β β β β Dashboard widget fix β 3 pts β β 37 total β ββ
β β βββββββββββββββββββββββββββββββββββββββββββββββββββββββ ββ
β β ββ
β β Stretch (if complete early): ββ
β β βββββββββββββββββββββββββββββββββββββββββββββββββββββββ ββ
β β β β Progress indicator β 3 pts β β ββ
β β β β Settings redesign β 5 pts β β ββ
β β βββββββββββββββββββββββββββββββββββββββββββββββββββββββ ββ
β β ββ
β β Buffer: 3 pts (37/40 = 92.5% capacity) ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Task Breakdown
Decomposing Stories
TASK BREAKDOWN PROCESS:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β FROM STORIES TO ACTIONABLE TASKS β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β WHY BREAK DOWN IN PLANNING: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β β Reveals hidden complexity ββ
β β β Enables parallel work ββ
β β β Creates daily progress visibility ββ
β β β Identifies missing skills/dependencies ββ
β β β Improves estimate accuracy ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β BREAKDOWN EXAMPLE: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β Story: User registration flow (8 pts) ββ
β β ββ
β β Tasks: ββ
β β βββ Create registration form component (2h) ββ
β β βββ Add form validation (2h) ββ
β β βββ Create user API endpoint (3h) ββ
β β βββ Add password hashing (1h) ββ
β β βββ Create email confirmation trigger (2h) ββ
β β βββ Write unit tests (3h) ββ
β β βββ Write integration tests (2h) ββ
β β βββ Update API documentation (1h) ββ
β β βββ Code review + fixes (2h) ββ
β β ββ
β β Total: ~18h (β3 days of focused work) ββ
β β ββ
β β Dependencies: ββ
β β βββ Design mockup (available β) ββ
β β βββ Email service setup (Chen to complete Day 1) ββ
β β ββ
β β Owner: Anna (Mike to assist with email integration) ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β TASK GRANULARITY: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β Ideal task size: 2-8 hours ββ
β β ββ
β β Too big (>1 day): ββ
β β βββ "Implement registration" β Break down more ββ
β β ββ
β β Too small (<1 hour): ββ
β β βββ "Add button" β Combine with related work ββ
β β ββ
β β Just right: ββ
β β βββ "Create form with validation" (half day) ββ
β β βββ "Add API endpoint with tests" (half day) ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Dependency Mapping
IDENTIFYING DEPENDENCIES:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β PLANNING AROUND DEPENDENCIES β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β DEPENDENCY TYPES: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β INTERNAL (within sprint): ββ
β β βββ Task A blocks Task B ββ
β β βββ Story 1 needed before Story 2 ββ
β β βββ Team member availability ββ
β β ββ
β β EXTERNAL (outside team): ββ
β β βββ API from another team ββ
β β βββ Design review approval ββ
β β βββ Infrastructure provisioning ββ
β β βββ Third-party service access ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β DEPENDENCY VISUALIZATION: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β ββ
β β Day 1-2 Day 3-4 Day 5-6 Day 7-8 ββ
β β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β ββ
β β [Email setup]βββ ββ
β β β ββ
β β [Reg form]ββββββΌββ>[API endpoint]ββ>[Integration]ββ>Doneββ
β β β ββ
β β [Design review]β ββ
β β ββ
β β β Dependency: Email setup must complete before ββ
β β confirmation trigger can be implemented. ββ
β β ββ
β β Mitigation: Chen starts email setup Day 1. ββ
β β Fallback: Mock email service for testing if delayed. ββ
β β ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β GITSCRUM DEPENDENCY TRACKING: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β Link tasks with "blocked by" relationship: ββ
β β ββ
β β Task: Email confirmation trigger ββ
β β Blocked by: Email service setup β ββ
β β ββ
β β External dependency: ββ
β β Task: Payment integration ββ
β β Blocked by: Stripe account approval (External) ββ
β β Expected: Day 3 ββ
β β Fallback: Use test keys, switch to prod keys later ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Common Pitfalls and Solutions
Avoiding Planning Anti-Patterns
SPRINT PLANNING PROBLEMS:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β WHAT GOES WRONG AND HOW TO FIX IT β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β PROBLEM: Planning takes 4+ hours β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β Symptoms: ββ
β β - Discussing unclear stories ββ
β β - Re-estimating everything ββ
β β - Debating implementation details ββ
β β ββ
β β Solution: ββ
β β - Better refinement sessions ββ
β β - Enforce "Ready" definition ββ
β β - Defer technical debates to after planning ββ
β β - Strict timeboxing ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β PROBLEM: Over-commitment β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β Symptoms: ββ
β β - "We can squeeze in one more story" ββ
β β - Ignoring velocity data ββ
β β - Underestimating interruptions ββ
β β ββ
β β Solution: ββ
β β - Commit to 80-90% of capacity ββ
β β - Use stretch goals for extra capacity ββ
β β - Trust historical velocity ββ
β β - Include buffer for unknowns ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β PROBLEM: Uneven workload distribution β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β Symptoms: ββ
β β - One person overloaded ββ
β β - Skills bottleneck ββ
β β - Work not parallelizable ββ
β β ββ
β β Solution: ββ
β β - Review workload during planning ββ
β β - Pair on critical paths ββ
β β - Cross-train on bottleneck skills ββ
β β - Sequence work to enable parallelism ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β PROBLEM: Missing dependencies discovered mid-sprint β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β Symptoms: ββ
β β - "We didn't know we needed X" ββ
β β - External teams surprised by requests ββ
β β - Blocked waiting on prerequisites ββ
β β ββ
β β Solution: ββ
β β - Explicit dependency identification in planning ββ
β β - Confirm external dependencies before committing ββ
β β - Build in slack for dependency delays ββ
β β - Define fallback plans ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Post-Planning Actions
Sprint Kickoff
AFTER PLANNING MEETING:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β SPRINT LAUNCH ACTIVITIES β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β IMMEDIATELY AFTER: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β [ ] Sprint goal documented and visible ββ
β β [ ] All committed items in sprint backlog ββ
β β [ ] Tasks created for first stories ββ
β β [ ] Initial assignments made ββ
β β [ ] Dependencies flagged in GitScrum ββ
β β [ ] Sprint start date set ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β DAY 1 OF SPRINT: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β [ ] Team starts first tasks ββ
β β [ ] Dependency work initiated ββ
β β [ ] External teams notified of needs ββ
β β [ ] First standup includes sprint goal reminder ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β COMMUNICATION: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β Share with stakeholders: ββ
β β ββ
β β "Sprint 25 Started π ββ
β β ββ
β β Goal: New users can complete registration and first ββ
β β project creation within 5 minutes. ββ
β β ββ
β β Key deliverables: ββ
β β - User registration flow ββ
β β - Email verification ββ
β β - Project creation wizard ββ
β β ββ
β β Demo: [Date]" ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Best Practices
Do's
EFFECTIVE SPRINT PLANNING:
β REFINE BEFORE PLANNING
Items should be ready, not discussed in planning
β USE HISTORICAL DATA
Trust velocity over optimism
β COMMIT CONSERVATIVELY
80-90% capacity, use stretch goals
β TIMEBOX STRICTLY
2 hours max for 2-week sprint
β BREAK DOWN STORIES
Tasks reveal hidden work
β IDENTIFY DEPENDENCIES EARLY
Flag blockers, confirm external needs
Don'ts
PLANNING ANTI-PATTERNS:
β PLANNING WITHOUT REFINEMENT
Leads to 4-hour meetings
β 100% CAPACITY COMMITMENT
No room for surprises
β IGNORING VELOCITY
"This sprint will be different"
β VAGUE SPRINT GOALS
"Complete the tickets"
β SKIPPING TASK BREAKDOWN
Hidden complexity surprises you mid-sprint