User Story Estimation Techniques

1. Story Points

Story points are a relative measure of effort, complexity, and uncertainty.

Common Fibonacci Sequence:

1, 2, 3, 5, 8, 13, 21

Where:

  • 1 = Very simple task (few hours)
  • 3 = Simple task (1 day)
  • 5 = Medium complexity (2-3 days)
  • 8 = Complex task (3-5 days)
  • 13 = Very complex task (5-8 days)
  • 21 = Extremely complex (needs breaking down)

Tips for Story Point Estimation:

  • Use relative sizing instead of time
  • Compare new stories to previously estimated ones
  • Consider all aspects: complexity, uncertainty, and effort
  • If a story is larger than 13 points, consider breaking it down

2. Planning Poker

A consensus-based estimation technique using cards.

Process:

  1. Product Owner presents the user story
  2. Team members ask questions for clarification
  3. Each member privately selects an estimation card
  4. Cards are revealed simultaneously
  5. Discuss differences and reach consensus

Common Pitfalls:

  • Anchoring bias from senior team members
  • Not discussing divergent estimates
  • Rushing to consensus without proper discussion
  • Not considering all factors (testing, documentation, etc.)

3. T-Shirt Sizing

A simple, intuitive estimation technique using familiar clothing sizes.

Size Description Story Points Equivalent
XS Very simple, few hours work 1-2
S Simple, about a day's work 3
M Medium complexity, 2-3 days 5
L Complex, about a week 8
XL Very complex, needs breaking down 13+

4. Relative Mass Valuation (RMV)

A technique where stories are physically arranged in order of size.

Steps:

  1. Write each story on a card
  2. Pick a story of medium size as baseline
  3. Place other stories relative to baseline
  4. Assign points based on position
  5. Review and adjust

5. Practical Estimation Exercise

Sample User Stories to Estimate:

Story 1: As a user, I want to reset my password through email verification

  • Frontend form creation
  • Email service integration
  • Security considerations
  • Suggested estimate: 5 points

Story 2: As a user, I want to view my profile picture

  • Simple UI component
  • Image loading
  • Suggested estimate: 2 points

Story 3: As an admin, I want to generate monthly user activity reports

  • Data aggregation
  • Report generation
  • Export functionality
  • Suggested estimate: 8 points

6. Best Practices for Estimation

General Guidelines:

  • Involve the whole team in estimation
  • Use historical data when available
  • Consider all aspects of implementation:
    • Development time
    • Testing effort
    • Documentation
    • Integration work
  • Re-estimate when significant changes occur
  • Track estimation accuracy to improve over time

When to Re-estimate:

  • New information becomes available
  • Requirements change significantly
  • Technical challenges are discovered
  • Dependencies change

7. Velocity Tracking

Track team velocity to improve estimation accuracy over time.

Velocity Calculation:

  1. Sum completed story points per sprint
  2. Calculate average over last 3-5 sprints
  3. Use for future sprint planning
Sprint Planned Points Completed Points
Sprint 1 20 18
Sprint 2 18 16
Sprint 3 16 16
Average Velocity 16.7