Estimation Techniques | Story Points & More
Use story points, relative estimation, and reference stories for accurate planning. GitScrum supports various estimation approaches for team predictability.
8 min read
Good estimation helps planning without creating false precision. GitScrum supports various estimation approaches to help teams plan and deliver predictably.
Estimation Approaches
Story Points
STORY POINT ESTIMATION:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β WHAT STORY POINTS MEASURE: β
β β
β Complexity + Effort + Uncertainty β
β (Not hours or days) β
β β
β WHY RELATIVE: β
β Humans are better at comparing than predicting β
β "This is twice as big as that" easier than β
β "This will take 3.5 days" β
β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β FIBONACCI SCALE: β
β 1, 2, 3, 5, 8, 13, 21 β
β β
β 1: Trivial change, very well understood β
β 2: Small, straightforward β
β 3: Medium, some complexity β
β 5: Larger, moderate complexity β
β 8: Complex, some unknowns β
β 13: Very complex, significant unknowns β
β 21: Too big - break it down β
β β
β WHY FIBONACCI: β
β Gaps get larger as size increases β
β Reflects increasing uncertainty with size β
β Prevents false precision ("is this 6 or 7 points?") β
β β
β REFERENCE STORIES: β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β Team calibration examples: ββ
β β ββ
β β 1 pt: Fix typo in UI ββ
β β 2 pt: Add input validation ββ
β β 3 pt: New API endpoint (simple CRUD) ββ
β β 5 pt: Feature with multiple components ββ
β β 8 pt: Integration with external service ββ
β β 13 pt: New feature area (consider splitting) ββ
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
T-Shirt Sizing
T-SHIRT SIZE ESTIMATION:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β SIZES: β
β β
β XS: Hours of work β
β S: 1-2 days β
β M: 3-5 days β
β L: 1-2 weeks β
β XL: More than 2 weeks (break down) β
β β
β USE CASES: β
β β’ Quick backlog grooming β
β β’ Roadmap planning β
β β’ Initial sizing before detailed estimation β
β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β CONVERTING FOR SPRINT PLANNING: β
β β
β High-level: T-shirt sizes β
β Sprint planning: Story points β
β β
β Rough mapping: β
β XS β 1 point β
β S β 2-3 points β
β M β 5 points β
β L β 8-13 points β
β XL β Break into smaller stories β
β β
β WHY USE BOTH: β
β T-shirt: Fast, roadmap-level β
β Points: Detailed, sprint-level β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Estimation Sessions
Planning Poker
PLANNING POKER:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β PROCESS: β
β β
β 1. PO presents story β
β 2. Team asks questions β
β 3. Everyone picks card secretly β
β 4. Reveal simultaneously β
β 5. Discuss differences β
β 6. Re-vote if needed β
β 7. Agree on estimate β
β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β EXAMPLE SESSION: β
β β
β Story: "Add password reset functionality" β
β β
β Round 1 votes: β
β Alex: 5 Sam: 8 Jordan: 5 Taylor: 3 β
β β
β Discussion: β
β Taylor (3): "We have a template for this" β
β Sam (8): "Email integration is tricky" β
β Alex (5): "Template helps, but still testing" β
β β
β Round 2 votes: β
β Alex: 5 Sam: 5 Jordan: 5 Taylor: 5 β
β β
β Agreed: 5 points β
β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β TIPS: β
β β’ High and low explain first β
β β’ 2 rounds max, then average β
β β’ Capture assumptions β
β β’ Document why if unusual β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Affinity Estimation
AFFINITY ESTIMATION (Fast):
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β USE FOR: Large backlog, quick sizing β
β β
β PROCESS: β
β β
β 1. Write stories on cards β
β 2. Silently sort into size buckets β
β 3. Team reviews together β
β 4. Discuss and adjust outliers β
β 5. Assign point values to buckets β
β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β SETUP: β
β β
β SMALLER RELATIVE SIZE LARGER β
β ββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β ββββββ ββββββ ββββββ ββββββ ββββββ ββββββ β
β β XS β β S β β M β β L β β XL β βXXL β β
β β β β β β β β β β β βSPLITβ β
β ββββββ ββββββ ββββββ ββββββ ββββββ ββββββ β
β β
β Team members place stories silently β
β Then discuss disagreements together β
β β
β BENEFITS: β
β β’ Size 50+ stories in 1 hour β
β β’ Whole team participates β
β β’ Visual and collaborative β
β β’ Good for new backlogs β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Improving Estimates
Calibration
ESTIMATE CALIBRATION:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β TRACK ACTUALS: β
β β
β After each sprint, compare: β
β β
β Story Estimated Actual Notes β
β βββββββββββββ βββββββββ ββββββ βββββββββββββββββββββ β
β PROJ-101 5 5 Accurate β
β PROJ-102 3 5 Edge cases missed β
β PROJ-103 8 6 Overestimated β
β PROJ-104 2 4 Hidden complexity β
β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β RETROSPECTIVE QUESTIONS: β
β β
β UNDERESTIMATED: β
β β’ What did we miss? β
β β’ Was scope unclear? β
β β’ Hidden dependencies? β
β β’ Testing took longer? β
β β
β OVERESTIMATED: β
β β’ What went smoother than expected? β
β β’ Did we pad too much? β
β β’ Better tooling/experience? β
β β
β ACTIONS: β
β β’ Update reference stories β
β β’ Add to estimation checklist β
β β’ Share learnings with team β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Common Mistakes
ESTIMATION PITFALLS:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β MISTAKE: Only estimating coding time β
β FIX: Include testing, review, documentation β
β β
β MISTAKE: Optimistic estimates (best case) β
β FIX: Estimate for normal case with buffer β
β β
β MISTAKE: Letting loudest voice win β
β FIX: Silent voting first (planning poker) β
β β
β MISTAKE: Anchoring to first estimate β
β FIX: Independent estimates before discussion β
β β
β MISTAKE: Estimating unknowns with certainty β
β FIX: Spike first, then estimate β
β β
β MISTAKE: Not breaking down large items β
β FIX: Split anything > 8 points β
β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β ESTIMATION CHECKLIST: β
β β
β β Requirements understood? β
β β Edge cases identified? β
β β Dependencies clear? β
β β Testing approach known? β
β β Similar work for reference? β
β β Major unknowns? β
β β All work types included? β
β (dev, test, review, docs) β
β β
β If many "no" β Story not ready for estimation β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
When Not to Estimate
No-Estimate Approaches
WHEN TO SKIP ESTIMATES:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β β
β CONSIDER NO-ESTIMATES IF: β
β β
β β’ Stories are consistently similar size β
β β’ Team is stable and predictable β
β β’ Estimation sessions feel like waste β
β β’ Focus on throughput, not estimates β
β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β FLOW-BASED METRICS: β
β β
β Instead of: Story points completed β
β Track: Stories completed per week β
β β
β Instead of: Velocity in points β
β Track: Lead time and cycle time β
β β
β Instead of: Sprint commitment β
β Track: Work in progress limits β
β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
β HYBRID APPROACH: β
β β
β T-shirt size for planning/forecasting β
β No points for individual stories β
β Count throughput for velocity β
β β
β REQUIREMENT: β
β Stories must be broken down to similar sizes β
β ("Right-sized" stories) β
β β
β IF SIZES VARY WIDELY: β
β Estimates still provide value β
β Continue estimating β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ