Estimating in Software Development: No Silver Bullets Allowed

162
-1

Published on

What do poker, Greek oracles, an Italian mathematician from the Middle Ages, and the path of hurricanes have in common? Given the title of this presentation, chances are it has something to do with estimation, and you'll have to attend this session to get the full connection. Kent McDonald explores the challenges and realities of trying to estimate software-related knowledge work-analysis, testing, development, and the entire project effort. A major challenge is that there are no guaranteed ways to arrive at perfectly accurate estimates, which not surprisingly is why they are called estimates. Kent introduces and gives you a chance to practice quick and practical estimating techniques that will work in different situations-guesstimating, break it down and add it up, and planning poker. Kent has found that these "lite" estimation techniques are almost always just as informative as the ones you just spent six weeks formulating.

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
162
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Estimating in Software Development: No Silver Bullets Allowed

  1. 1.           BT9 Concurrent Session  11/8/2012 3:45 PM                "Estimating in Software Development: No Silver Bullets Allowed"       Presented by: Kent McDonald Knowledge Bridge Partners                 Brought to you by:        340 Corporate Way, Suite 300, Orange Park, FL 32073  888‐268‐8770 ∙ 904‐278‐0524 ∙ sqeinfo@sqe.com ∙ www.sqe.com
  2. 2. Kent McDonald Knowledge Bridge Partners Kent McDonald is an author, speaker, and coach who helps organizations improve the effectiveness of their projects. Kent’s more than fifteen years of experience include work in business analysis, strategic planning, project management, and product development in a variety of industries including financial services, health insurance, performance marketing, human services, nonprofit, and automotive. The co-author of Stand Back and Deliver: Accelerating Business Agility, Kent currently delivers business analysis training for B2T Training and shares his thoughts on raising the level of business analysis at BeyondRequirements.com
  3. 3. 11/8/2012 Estimating in Software Development: No Silver Bullets Allowed Kent J. McDonald @beyondreqs Disclaimer 1
  4. 4. 11/8/2012 A Familiar Situation? Issues with Estimating Estimating Techniques Don’t worry, we’ll get to these… 2
  5. 5. 11/8/2012 Has this ever happened to you? Ok, great. The Sales How long will it VP promised an take to build the estimate to the commission CEO next Monday. system? It better be right. I just found out about it this morning, so I’ll need to do some analysis . Issues with Estimating Initial Uncertainty False Precision Accuracy/Effort Tradeoff Differing Skill Levels 3
  6. 6. 11/8/2012 Initial Uncertainty Cone of Uncertainty 4
  7. 7. 11/8/2012 Cone of Uncertainty a Practical Use Hurricane Sandy – Actual Path 5
  8. 8. 11/8/2012 Accuracy/Effort Tradeoff Point of Diminishing Returns 6
  9. 9. 11/8/2012 False Precision How precise do you have to be? How long, and how much? Approximately 374 days and $2,548,931.27. 7
  10. 10. 11/8/2012 Differing skill levels People finish tasks at different speeds 8
  11. 11. 11/8/2012 Estimating Techniques Guestimate Break it down, add it up Relative Estimating Guestimate 9
  12. 12. 11/8/2012 Aka “Gut Feel” or “Ball Park” How long, and how much? About a year and $2.5 million. Comparison to Past Projects $1,000 $100K $10M ?? $1M 10
  13. 13. 11/8/2012 Your turn… Want to create an online application for Mortgage Insurance How long to deliver the online application for Mortgage Insurance? A ballpark answer is sufficient. 11
  14. 14. 11/8/2012 Does it address our issues? Initial Uncertainty False Precision Accuracy/Effort Tradeoff Differing Skill Levels When to use it 12
  15. 15. 11/8/2012 Break it down Add it up Break overall effort into bits 13
  16. 16. 11/8/2012 Assign factor to each small bit Tasks Time Factor (hour/bit) # of bits Total Time (hours) Interfaces GUI - Simple 8 GUI - Medium 16 GUI - Hard 24 System Interface - Simple 12 System Interface - Complex 30 Total Interfaces Processes Simple Process 16 Medium Process 32 Complex Process 48 Total Processes Where do we come up with the factors? 14
  17. 17. 11/8/2012 This is where time cards may be useful…  Know ahead of time what you want to track  Build up information over time  Often requires excruciating detail in time collection. Identify How Many Bits Tasks Time Factor (hour/bit) # of bits GUI - Simple 8 3 GUI - Medium 16 2 GUI - Hard 24 1 System Interface - Simple 12 Total Time (hours) 3 Interfaces System Interface - Complex 30 Total Interfaces 2 11 Processes Simple Process 16 5 Medium Process 32 4 Complex Process 48 3 Total Processes 12 15
  18. 18. 11/8/2012 Do the math to get an estimate Tasks Time Factor (hour/bit) # of bits Total Time (hours) GUI - Simple 8 3 24 GUI - Medium 16 2 32 GUI - Hard 24 1 24 System Interface - Simple 12 3 36 System Interface - Complex 30 2 60 11 176 Interfaces Total Interfaces Processes Simple Process 16 5 80 Medium Process 32 4 128 3 144 12 352 Complex Process 48 Total Processes This gives us development hours 16
  19. 19. 11/8/2012 What about analysis & testing &…  Percentage of development hours  Estimate tasks separately  You mean we have to estimate analysis & testing? Data Warehouse Example Adding a new source to data warehouse  Count of sources  Count of tables/source  Count of elements/table  Considerations of complexity 17
  20. 20. 11/8/2012 Data Warehouse Example 1. Gather all the info 2. Plug it into a spreadsheet 3. Look at the resulting (realistic but “too high”) number 4. Revise… Your turn… Want to create an online application for Mortgage Insurance How long to deliver the online application for Mortgage Insurance? Identify how you would break this down to estimate 18
  21. 21. 11/8/2012 Of Course there’s always Function Points… 19
  22. 22. 11/8/2012 Or, you could always add up tasks Does it address our issues? Initial Uncertainty False Precision Accuracy/Effort Tradeoff Differing Skill Levels 20
  23. 23. 11/8/2012 When to use it Another Look - Decomposition 21
  24. 24. 11/8/2012 Calibrated Estimates in Ranges Manage Tracks 1 – 2 Days Moderate Content 3 – 5 Days Manage Deadlines 1 – 2 Days Build Program 4 – 6 Days Manage Venue .5 – 1 Days 9.5 – 16 Days @ $100/hour & 8 hours/day $7,600 – $12,800 Note, Entire team calibrated and involved in determining these estimates. For More information How to Measure Anything: Finding the Value of Intangibles in Business by Douglas W. Hubbard HowToMeasureAnything.com 22
  25. 25. 11/8/2012 Where it Helps Initial Uncertainty False Precision Accuracy/Effort Tradeoff Differing Skill Levels Relative Estimating 23
  26. 26. 11/8/2012 Ah ha! Here’s the poker connection! Discuss (briefly) the item to estimate As an Event Organizer I want to know how audience members vote by athlete by gender So That I can determine if men and women vote differently. 24
  27. 27. 11/8/2012 The Delphi Technique Everyone selects an estimate 25
  28. 28. 11/8/2012 Estimating Scales (Modified) Fibonacci Sequence: 0, ½, 1, 2, 3, 5, 8, 13, 20, 40, 80, 100 Using a regular deck of cards: A, 2, 3, 5, 8, King Team Member Hands: 1–5 Leonardo Pisano Bigollo aka Fibonacci Italian Mathematician Reveal estimates all at once 26
  29. 29. 11/8/2012 Discuss outliers Well, we changed the voting I wasn’t sure we knew how machines to ask gender a Andwhy did youthe two So how about pick during Yeah, what she said. to tell an audience sign in last iteration, so it king? aces? member’s gender. should be easy Repeat until convergence 27
  30. 30. 11/8/2012 Extrapolate based on Velocity Assumptions:  2 week iterations  Overall backlog size: 600 points  Planning Velocity: 30  5 Person Team  Avg Cost/person/wk: $4,000 Estimate: $800,000 Your turn… Determine relative sizes of these various features using the scale 1,2,3,4,5 Based on this feature being sized an 1. 28
  31. 31. 11/8/2012 Does it address our issues? Initial Uncertainty False Precision Accuracy/Effort Tradeoff Differing Skill Levels 29
  32. 32. 11/8/2012 When to use it An Alternative to Planning Poker 1 2 User Story 3 5 8 User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story User Story 30
  33. 33. 11/8/2012 How should we approach estimating for a project? Calibrated Guestimate Estimates Phase Based Break it down add it up Set expectation for revisions 31
  34. 34. 11/8/2012 Agile Comparison Calibrated to past Estimates projects Extrapolate from Velocity Set expectation for revisions If you remember nothing else Initial uncertainty means you will not be accurate. Don’t spend more effort than it’s worth. Don’t imply more precision than is possible. Incorporate multiple perspectives. 32
  35. 35. 11/8/2012 Questions? Kent J. McDonald kent@kentmcdonald.com www.BeyondRequirements.com Twitter: @BeyondReqs Slides available from: http://www.knowledgebridgepart ners.com/presentations/software estimating/ 65 33

×