Sprint Backlog Creation | Right Work, Right Size
Build sprint backlogs with properly refined, estimated, and prioritized work. GitScrum helps teams commit to realistic goals using velocity data and capacity.
7 min read
A sprint backlog that's too ambitious leads to failure and demoralization. One that's too light wastes capacity. Creating effective sprint backlogs means selecting the right amount of the right work, properly prepared and understood by the team.
Sprint Backlog Problems
| Problem | Impact | Solution |
|---|---|---|
| Over-commitment | Missed sprint, demoralization | Use velocity data |
| Unclear work | Mid-sprint confusion | Proper refinement |
| Too large items | Never finish | Break down tasks |
| Hidden dependencies | Blocked work | Dependency mapping |
| No priorities | Wrong work first | Clear ordering |
Backlog Readiness
Definition of Ready
DEFINITION OF READY (DoR)
βββββββββββββββββββββββββ
A task is READY for sprint when:
CLARITY:
- [ ] Description is clear and complete
- [ ] Acceptance criteria defined
- [ ] "Why" is understood (context/value)
- [ ] Questions have been answered
SIZE:
- [ ] Estimated by the team
- [ ] Can complete within sprint
- [ ] Ideally 1-3 days of work
- [ ] Larger items are broken down
DEPENDENCIES:
- [ ] No blocking dependencies
- [ ] External dependencies identified
- [ ] Prerequisites complete or scheduled
RESOURCES:
- [ ] Design/mockups available (if needed)
- [ ] API specs available (if needed)
- [ ] Test data/environments ready
- [ ] Skills exist on team
Ready vs Not Ready
READY VS NOT READY
ββββββββββββββββββ
β READY:
"Implement password reset flow"
- API endpoint documented
- Email template approved
- Acceptance criteria: 5 specific items
- Estimate: 5 points
- No blockers
β NOT READY:
"Build user authentication"
- Too vague - which auth method?
- No API specs
- No acceptance criteria
- No estimate
- Depends on unfinished work
Sprint Planning Process
Capacity Calculation
CAPACITY CALCULATION
ββββββββββββββββββββ
STEP 1: Calculate Available Days
βββββββββββββββββββββββββββββββββββββ
Sprint length: 10 days (2 weeks)
Team members: 5 developers
Total person-days: 50 days
STEP 2: Subtract Unavailability
βββββββββββββββββββββββββββββββββββββ
PTO: -3 days (@sarah, @mike)
Holidays: -0 days
Training: -2 days (@lisa)
ββββββββββββββββββββββββββββ
Available: 45 person-days
STEP 3: Account for Non-Coding
βββββββββββββββββββββββββββββββββββββ
Meetings (~15%): -6.75 days
Support/bugs (~10%): -4.5 days
ββββββββββββββββββββββββββββ
Capacity: 33.75 days
STEP 4: Convert to Story Points
βββββββββββββββββββββββββββββββββββββ
If 1 point β 0.5 day ideal work
Capacity β 67 story points
STEP 5: Apply Historical Factor
βββββββββββββββββββββββββββββββββββββ
Average velocity: 52 points
Last 3 sprints: 48, 55, 53
β Target this sprint: 50-55 points
(conservative given PTO)
Sprint Planning Meeting
SPRINT PLANNING STRUCTURE
βββββββββββββββββββββββββ
DURATION: 2-4 hours (for 2-week sprint)
PART 1: WHAT (60 min)
βββββββββββββββββββββββββββββββββββββ
Product owner presents:
βββ Sprint goal
βββ Top priorities from backlog
βββ Business context
Team confirms:
βββ Understanding of work
βββ Questions answered
βββ Work is "ready"
PART 2: HOW MUCH (45 min)
βββββββββββββββββββββββββββββββββββββ
Calculate capacity:
βββ Team availability
βββ Known commitments
βββ Buffer for unknowns
Pull from backlog:
βββ Highest priority first
βββ Until capacity reached
βββ Leave 10-15% buffer
PART 3: HOW (45+ min)
βββββββββββββββββββββββββββββββββββββ
For each item:
βββ Break into subtasks
βββ Identify dependencies
βββ Assign initial owners
βββ Note risks/concerns
OUTPUT:
βββ Committed sprint backlog
βββ Clear sprint goal
βββ Initial task assignments
βββ Documented risks
Backlog Structure in GitScrum
Sprint Backlog View
SPRINT BACKLOG VIEW
βββββββββββββββββββ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Sprint 23: User Authentication β
β Mar 18-29 | Goal: Complete auth flow for mobile β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β Capacity: 52 pts | Committed: 48 pts | Buffer: 8% β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β TODO (32 pts) IN PROGRESS DONE β
β ββββββββββββ βββββββββββ ββββ β
β β
β ββββββββββββββββββ ββββββββββββ β
β β Login API β β Password β β
β β 8 pts @mike β β reset β β
β β Ready β β β 5 pts β β
β ββββββββββββββββββ β @sarah β β
β ββββββββββββ β
β ββββββββββββββββββ β
β β OAuth setup β β
β β 5 pts @lisa β β
β β Ready β β β
β ββββββββββββββββββ β
β β
β ββββββββββββββββββ β
β β Mobile login UIβ β
β β 8 pts @tom β β
β β Blocked: API β β
β ββββββββββββββββββ β
β β
β ... more items ... β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Task Breakdown
TASK BREAKDOWN EXAMPLE
ββββββββββββββββββββββ
STORY: Login API Implementation (8 pts)
SUBTASKS:
βββ Create login endpoint (2 pts)
β βββ @mike, Day 1-2
βββ Implement JWT generation (2 pts)
β βββ @mike, Day 2-3
βββ Add rate limiting (1 pt)
β βββ @mike, Day 3
βββ Write unit tests (2 pts)
β βββ @mike, Day 4
βββ Update API documentation (1 pt)
βββ @mike, Day 4-5
DEPENDENCIES:
βββ Needs: User model (complete β)
βββ Needs: JWT library (complete β)
βββ Blocks: Mobile login UI
ACCEPTANCE CRITERIA:
βββ POST /api/login accepts email/password
βββ Returns JWT on success
βββ Returns 401 on invalid credentials
βββ Rate limited to 5 attempts/minute
βββ Logged in audit trail
βββ Tests cover all scenarios
Managing the Sprint Backlog
During the Sprint
SPRINT BACKLOG MANAGEMENT
βββββββββββββββββββββββββ
DAILY CHECKS:
βββ Any blocked items?
βββ Items taking longer than expected?
βββ Any scope creep happening?
βββ Still on track for sprint goal?
MID-SPRINT ADJUSTMENTS:
βββ Can we swarm on blockers?
βββ Need to cut scope?
βββ Can add work if ahead?
βββ Communicate changes
SCOPE CHANGES:
If new urgent work appears:
1. Assess urgency vs. current work
2. If truly urgent, what gets removed?
3. Discuss with product owner
4. Document the change
5. Communicate to stakeholders
NEVER:
βββ Silently add work
βββ Let scope creep happen
βββ Miss sprint goal without raising early
βββ Blame team for external factors
Burndown Tracking
SPRINT BURNDOWN
βββββββββββββββ
Points remaining by day:
48 ββ
β β
40 β β β (delay)
β β
32 β β
β β
24 β β
β β
16 β β
β β
8 β β
β β
0 ββββββββββββββββββββββββββββ
D1 D2 D3 D4 D5 D6 D7 D8 D9 D10
Legend:
βββ Ideal burndown
β Actual progress
Status: On track after day 4 adjustment
Forecast: Complete with 2 pts buffer
Best Practices
For Sprint Backlogs
Anti-Patterns
SPRINT BACKLOG MISTAKES:
β Committing to more than velocity
β Starting sprint with unclear work
β Tasks too large to finish
β No consideration of dependencies
β Adding work mid-sprint without removing
β No sprint goal
β Different priorities than what's in backlog
β Not tracking progress