Download presentation
Presentation is loading. Please wait.
Published byLouise Morton Modified over 6 years ago
1
Why Software Estimation is so Painful and How It Doesn’t Have To Be
Gregg Boer Principal Program Manager Microsoft Corporation Tech Ed North America 2010
2
Software development is puzzle solving
3
An estimate is a statement of probability
50% No limit to how long it will take!
4
Fixing the faucet example How long will it take?
5 hours 10% 3 hours 1 hour 8 hours 50% 75% 90% 1 week 95% Now
5
Estimates, targets and commitments
Now Then Butt on the line!
7
For each project… what’s not clear
At the start… Specific details of the nature of the software to built Details of specific requirements, Details of the solution, project plan, staffing, and other variables … are unclear (at best) Only after the sources of variability are investigate and pinned down, does the variability in the project diminish … and the variability in project estimates can also diminish
8
The degree of error created by skilled estimators at various points in the Project
Figure 1 The Cone of Uncertainty
9
“If you have another week to work on your estimate, can your refine it so it contains less uncertainty?” Research has found… … the accuracy of the estimate depends on the level of refinement of the software’s definition. The more refined the definition, the more accurate the estimate. Reducing the variability doesn’t happen unless you reduce the variability in the project.
10
If the project is not well controlled…
… or the estimators aren’t very skilled, the estimates can fail to improve The project must be “conducted” in a way that reduces variability.
11
Reducing variability Defined product vision (including committing to what you will not do)… Defining requirements – including what you are not going to do… Designing the user interface helps reduce the risk of variability arising from misunderstood requirements If the “project” is not defined or the product definition gets redefined, the cone gets wider. NOTE Software organizations sabotage their own projects by making commitments too early in the Cone of Uncertainty.
13
Cone of Uncertainty PMI estimates | Project Management Institute
0.67x 0.8x 1.0x 0.5x 0.25x 2x 4x 1.5x 1.25x Project cost (effort/cost) Product Definition Detailed Technical Requirements Development Design “Order of Magnitude” (+75%, -25%) “Budget” (+25%, -10%) “Definitive” (+10%, -5%) +100% -50%
14
Puzzle solving under pressure is difficult
15
Why do people hate estimating?
You are being asked to … Commit to hitting a specific target For a puzzle you have never solved before When you have the least information Then solve the puzzle under extreme schedule pressure, and when the date isn’t met, heads roll That’s why.
16
Effort Schedule Size Data How long would it take…
17
What you need… Unit Measure
18
Some existing sizing methods
Lines of Code Function Points Pages of Requirements Screens or Web Pages
19
Story Points (Break down Features into user stories)
Priority Product Backlog – User Stories Log in Customize landing page Cancel delivery Sign up for delivery
20
Team work! Everyone gets a deck of cards
Planning Poker 1 Product Backlog – User Stores 2 3 5 Log in 8 Priority 13 Customize landing page 20 40 100 Sign up for delivery ∞ Cancel delivery
21
Calibrate story points
Product Backlog – User Stories Log in Customize landing page Cancel delivery Sign up for delivery Completed User Stories Add customer View customer account Log history entry Block account 5 Priority
22
Team members estimate the user story and Team members share their estimates
Product Backlog – User Stories Log in Customize landing page Cancel delivery Sign up for delivery Completed User Stories Add customer View customer account Log history entry Block account Priority 1 5 8
23
Team members estimate the user story and Team members share their estimates
Product Backlog – User Stories Log in Customize landing page Cancel delivery Sign up for delivery Completed User Stories Add customer View customer account Log history entry Block account 5 8 13 Priority
24
Team members estimate the user story and Team members share their estimates
Product Backlog – User Stories Log in Customize landing page Cancel delivery Sign up for delivery Completed User Stories Add customer View customer account Log history entry Block account 5 8 13 Priority
25
Team members estimate the user story and Team members share their estimates
Product Backlog – User Stories Log in Customize landing page Cancel delivery Sign up for delivery Completed User Stories Add customer View customer account Log history entry Block account 5 8 13 Priority
26
Team members estimate the user story and Team members share their estimates
Product Backlog – User Stories Log in Customize landing page Cancel delivery Sign up for delivery Sprint Backlog 2 weeks 5 8 13 Priority
27
Effort Schedule Size Data How long would it take…
28
Average = 9.5
29
Effort Schedule Size Data How long would it take…
30
? We need this in 6 months! User Stories 100 story points Now Then
Data says months Butt on the line!
31
Advantages of Story Points
Simple Quicker feedback loops Team A story points≠ Team B’s story points
32
What visibility do you have?
Product Definition Detailed Technical Requirements Detailed Development Design
33
What value does the estimate have?
Visibility
34
Types of estimators Optimist Padder Pessimist Cynic Pleaser
35
Those asking for the estimate
Money Bags Intimidator The End is Near! Doomsayer
36
Emotion runs wild The End is Near!
37
The investment matches the value
38
Expectations based on visibility
Product Definition Detailed Technical Requirements Detailed Development Design
39
Re-estimate when there is more information
40
Is it an estimate or a commitment?
Now Then Butt on the line!
41
Estimating: Waterfall Project
What you need – the process: Information required: Approved Business Requirements Multiple people to estimate separately, then meet to review, revise Apply Cone of Uncertainty applied: (-50%, +100%) Estimate only Re-estimate after Detailed Requirements Phase
42
Suits vs. Shirts Ask for what they want More senior Good negotiator
Determine what’s possible More junior Good with puzzles
43
Suits vs Shirts What’s the Common goal? Now
44
Present in ranges Mar 1 Now Then January - April
45
Advice For every estimate, demand appropriate investment Show your homework – done collaboratively Stand firm
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.