estimation
play

ESTIMATION A Science, Not an Art? 5-13-2015 John Nollin Director - PowerPoint PPT Presentation

ESTIMATION A Science, Not an Art? 5-13-2015 John Nollin Director of Opera3ons Project Management, Process, Es3ma3on, Tools Chicago, IL. 2 The typical software organization is not


  1. ESTIMATION A Science, Not an Art? 5-­‑13-­‑2015

  2. John Nollin • Director ¡of ¡Opera3ons • Project ¡Management, ¡ Process, ¡Es3ma3on, ¡ Tools • Chicago, ¡IL. 2

  3. “The typical software organization is not struggling to improve its estimates from +-10% to +-5% accuracy. The typical software organization is struggling to avoid estimates that are incorrect by 100% or more.” -- Steve McConnell What ¡is ¡this ¡presenta,on ¡about? What ¡is ¡the ¡presenta,on ¡NOT ¡about? • Specific ¡es3mates ¡(content ¡type) • Fundamentals ¡(overlooked) • Magical ¡formulas • Big ¡Risk ¡factors • Fine ¡tuning ¡error ¡from ¡20% ¡to ¡5% • Selling ¡your ¡es3mate ¡(Team) ¡ • Selling ¡your ¡es3mate ¡(client) • 20%-­‑100% ¡over ¡budget 3

  4. Agenda 1 What is the Problem with Software Estimation? 2 Avoiding Risk 3 Estimation Techniques 4

  5. What is the Problem with Software Estimation? 5

  6. The greatest discrepancy between what the client thinks, an executive thinks, and a developer thinks is often the definition of ESTIMATE 6

  7. Estimates, Targets, and Commitments Estimates Targets Commitments 1 2 3 Statement/Desire Predic'on Promise • A ¡ Statement ¡of ¡a ¡ • A ¡ Promise ¡to ¡deliver ¡ • A ¡ Predic'on ¡of ¡how ¡ desirable ¡business ¡ defined ¡ long ¡a ¡project ¡will ¡ objec3ve func3onality ¡at ¡a ¡ take ¡or ¡how ¡much ¡it ¡ specific ¡level ¡of ¡ will ¡cost quality ¡and ¡by ¡a ¡ certain ¡date 7

  8. Estimates, Targets, and Commitments 1 2 3 Estimate Target Cut From Commitment Phase 8

  9. Your best developer is not necessarily your best estimator 9

  10. The Solution Architect Things ¡that ¡may ¡be ¡missing: About ¡your ¡unicorn: How ¡fast ¡can ¡a ¡DEVELOPER ¡do ¡the ¡work? • Knows ¡the ¡most ¡about ¡ Drupal • Experience ¡in How ¡much ¡3me ¡will ¡be ¡spent ¡training, ¡instruc3ng, ¡ Ecommerce reviewing, ¡and ¡doing ¡oversight? Migra3on Integra3on Avoiding ¡unfounded ¡op3mism Site ¡building ¡& ¡Theming • Understands ¡business ¡value • Can ¡magically ¡debug ¡ anything 10

  11. What is the definition of a “GOOD” estimate? 11

  12. 90% confidence What ¡is ¡the ¡surface ¡temperature ¡of ¡the ¡ Sun? ¡ ¡(Give ¡a ¡range ¡in ¡Fahrenheit) ¡ A"er ¡all, ¡the ¡process ¡is ¡called ¡ Es2ma2on, ¡not ¡Exac2ma2on. Make ¡your ¡range ¡wide ¡enough ¡ that ¡you ¡feel ¡you ¡are ¡90% ¡confident that ¡your ¡range ¡includes ¡the ¡answer -­‑ ¡Phillip ¡Armour 10,000 ¡Degrees ¡F 12

  13. 90% confidence How ¡confident ¡is ¡90% ¡confident? The ¡average ¡number ¡of ¡correct ¡ answers ¡was ¡2.8. ¡ ¡Only ¡2% ¡of ¡quiz takers ¡scored ¡8 ¡or ¡more ¡correctly. Most ¡peoples ¡intui've ¡sense of ¡90% ¡confidence ¡is ¡in ¡fact ¡ closer ¡to ¡30% ¡confidence. 13

  14. Software is not developed in a vacuum 14

  15. EXTERNAL FACTORS ARE OFTEN UNACCOUNTED FOR UNSTABLE ¡ REQUIREMENTS ¡ STAFF ¡DIVERTED ¡ FUNCTIONALITY ¡ REMOVED TO ¡SUPPORT ¡ STAFF ¡NOT ¡READY REMOVED TRADE ¡SHOW STAFF ¡DIVERTED ¡TO ¡ REQUIREMENTS ¡ LESS ¡EXPERIENCED ¡ SERVER ¡NOT ¡READY SUPPORT ¡OLD ¡ ADDED STAFF ¡ PROJECT 15

  16. Events that happen during the project nearly always invalidate the assumptions that were used to estimate the project in the first place. 4 1 2 3 Functional Input Staffing Priority Assumptions Assumptions Assumptions Assumptions 16

  17. Software estimation is not just about adding up the sum of the parts 17

  18. The ¡ac'vi'es ¡of ¡a ¡late ¡or ¡compressed ¡ Project Dynamics project ¡create ¡destruc've ¡“late-­‑ project” ¡dynamics ¡that ¡make ¡the ¡ project ¡even ¡WORSE ¡than ¡nominal. More ¡ Frequent ¡Re-­‑ Apologizing ¡to ¡ Preparing ¡ More ¡ Fixing ¡ Going ¡back ¡to ¡ Status ¡ es3ma3on key ¡customers interim ¡ discussion ¡on ¡ problems ¡that ¡ the ¡contract Mee3ngs releases priority ¡& ¡ arise ¡from ¡ requirements quick ¡and ¡ dirty ¡ workarounds 18

  19. Results 19

  20. Results Timelines Budgets 20

  21. Results Costs 21

  22. “Software does not have a neutral estimation problem. The industry data shows clearly that the software industry has an underestimation problem.” -- Steve McConnell 22

  23. When given the option of a shorter average schedule with higher variability or a longer average schedule with lower variability, 8 out of 10 executives will choose the second option 23

  24. Avoiding Risk 24

  25. Major Areas of Risk Est. ¡Process P r o • 90% confidence • What kind of content j e • Best Estimator type/field/thing c t • Terminology ¡ • Scope w/o specs I n • External Factors • Specific definitions f o Project ¡Chaos y t i v • Lack of end-user : • Setup Costs c involvement or A • Management Costs ¡ d production owner • Other (non-dev) e 7 • Timeline Costs i m • Poor wires/design O 25

  26. Consider your project’s current position within the cone of uncertainty, this will help you gauge the level of accuracy in your estimate. 26

  27. The Cone of Uncertainty Ini,al ¡Product ¡ User ¡Interface ¡ Detailed ¡Design ¡ Product ¡ Requirements ¡ Concept ¡ Design ¡ Complete Defini,on Complete Complete “I ¡want ¡a ¡website” “I ¡have ¡full ¡ “I ¡know ¡the ¡scope ¡of ¡ “I ¡know ¡the ¡specs ¡ documented ¡specs ¡ services” of ¡the ¡project” “I ¡have ¡ and ¡design ¡files” wireframes” 27

  28. Leverage the power of well defined products to move your way through the cone of uncertainty 28

  29. Products Evalua3on ¡of ¡the ¡inner ¡ workings ¡of ¡a ¡current ¡ Audits Drupal ¡site, ¡for ¡upgrade ¡ Drupal ¡Concept ¡Educa3on ¡as ¡ and ¡migra3on ¡planning an ¡entry ¡into ¡the ¡product ¡ Discovery ¡Process Training ¡ Workshops Technical ¡and ¡UI/UX ¡planning ¡ for ¡a ¡large ¡scale ¡development ¡ projects Discovery 29

  30. Know when you are in a chaos project and how to reset 30

  31. Chaos Projects How ¡does ¡ BAD ¡go ¡to ¡ TERRIBLE ? Poor ¡Project ¡ External ¡ Re-­‑es,ma,on ¡ Pure ¡Chaos Dynamics Factors or ¡Planning “Chaos projects introduce variability for each following step. The answer is not to continue to re-estimate but instead address each issue through project control.” 31

  32. NEVER, let your estimator forget (or your sales team remove) these important activities 32

  33. Omitted Activities • Setup, ¡Installa3on, ¡Downloads, ¡Builds ¡ Setup • Ramp-­‑up, ¡Kickoff, ¡Onboarding, ¡Accoun3ng • Updates, ¡Upgrades, ¡Deployments, ¡Performance Maintenance • Configura3on, ¡Automa3on, ¡Reviews • Vaca3on, ¡Holiday, ¡Sick, ¡Drupalcon Non-­‑soMware • Outages, ¡Troubleshoo3ng, ¡Worksta3ons • Stand ¡ups, ¡Contract ¡review, ¡Training, ¡QA ¡review Management • Engagement ¡Management, ¡Staffing, ¡Governance 33

  34. Don’t overcomplicate your “science”. Use few factors and simple formulas over complex. 34

  35. Overcomplicating Estimates Many ¡Factorial ¡Adjustments Few ¡Factorial ¡Adjustments 4x 4x .25x .25x 35

  36. Estimation Techniques 36

  37. Estimating “Things” Lets ¡assume ¡that ¡you ¡are ¡all ¡ expert ¡es2mators ¡and ¡that ¡all ¡the ¡ process ¡and ¡risk ¡areas ¡we ¡have ¡ spoken ¡today ¡you ¡know ¡ PERFECTLY ¡how ¡to ¡avoid. ¡ How ¡many ¡people ¡are ¡in ¡this ¡room ¡ right ¡now? 37

  38. APPROACHES TO ESTIMATING “THINGS” The ¡Hobbyist The ¡Factor ¡ The ¡Percentage ¡ The ¡Data ¡Guy Guy Guy “15 ¡rows ¡5 ¡ ¡ ¡ ¡ “150 ¡person ¡ “I’m ¡guessing ¡ “The ¡last ¡3 ¡ per ¡row” capacity ¡and ¡its ¡ 75 ¡people” sessions ¡have ¡ half ¡full” had ¡XX” Judgement Count Compute Calibra,on 38

  39. Count, Compute, Judge COUNT ¡(& ¡Calibrate) Find ¡something ¡to ¡count ¡that ¡has ¡a ¡direct ¡ 1 correla3on ¡to ¡what ¡you ¡are ¡building Count ¡if ¡at ¡all ¡possible. ¡ ¡ Compute ¡ when ¡you ¡can’t ¡count. ¡Use ¡ Judgement ¡alone ¡only COMPUTE as ¡a ¡last ¡resort. Mul3ply ¡by ¡a ¡sta3s3cally ¡ 2 meaningful ¡(proven) ¡average JUDGE Only ¡make ¡assump3ons ¡ 3 as ¡a ¡final ¡op3on ¡(document) 39

Recommend


More recommend