Estimating development efforts is crucial yet challenging. Traditional time-based estimates often prove inaccurate. Agile provides flexible alternatives that embrace uncertainty.
Estimating in Story Points Not Hours
Instead of forecasting task durations, agile teams estimate effort using abstract story points. A story point represents the relative level of effort required to complete a user story.
Story points exemplify agile values:
Prioritize by complexity, not time: Story points let you prioritize backlogs based on difficulty and risk vs simple duration estimates.
Isolate effort from execution: By removing time units, story points estimate work required independently of how long it takes due to mutable factors like skills.
Promote team ownership: Teams collectively estimate stories based on past experience versus top-down time allotments.
Adapt to changing capacity: Story points stay stable even as team velocity varies over time. No need to endlessly redo time estimates.
Determine Relative Effort as a Team
There is no universal formula to convert story points to hours. Instead, agile teams determine effort levels relative to past stories:
Use planning poker to discuss and converge on story point estimates through consensus. Index cards with values like 0, 1, 2, 3, 5, 8, 13 represent possible estimates.
Maintain a baseline story that represents the default 1 story point of effort. Compare new stories relative to the baseline.
Leverage historical velocity to estimate based on actual capacity demonstrated by the team.
Accept some uncertainty! The goal is reasonable estimates, not perfection.
Track Velocity to Forecast Delivery
Once teams begin estimating in story points, they can track velocity - the sum of story points completed per sprint. Average velocity forecasts capacity.
A team consistently completing 50 story points per sprint can expect a similar capacity for upcoming sprints, assuming stable productivity.
Velocity accommodates variability - a bad sprint may yield 30 points, while a focused sprint could reach 70. The fluctuations smooth out over time.
New teams lacking sufficient history use industry benchmarks: 15-20 points per member per sprint.
Right-Size Stories
To leverage velocity for planning, ensure user stories are granular enough for consistent estimates but sizable enough for value:
Avoid epics: High-level initiatives spanning months provide little planning visibility. Break into stories deliverable in 1-2 sprints.
Prevent trivial stories: Tiny tasks underestimate true effort. Consolidate related tiny stories into larger meaningful chunks.
Consider splitting: Very large stories become difficult to estimate. Split into smaller parts for more accurate sizing.
Qualitative Estimates to Start
Some teams apply qualitative t-shirt size labels like XS, S, M, L and XL to loosely categorize backlog stories before detailing with story points. This provides quick initial grouping to visualize scope and spread.
Core Principles
Whether using story points, t-shirt sizing or other agile estimation techniques, the keys are:
Team-based techniques over individual figuring
Relative sizing not time forecasting
Planning poker to build consensus
Velocity to establish capacity
Estimating is tricky but essential. Agile provides flexible, collaborative techniques to right-size efforts and forecast delivery. Keep practicing estimation as a team activity and the accuracy will improve over time!
Let me know if you would like me to expand or modify any part of this in-depth post on agile estimation.
Comentarios