Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

How to not shoot yourself in the foot with estimation

484 views

Published on

Talk from Oredev 2017

Published in: Technology
  • Be the first to comment

How to not shoot yourself in the foot with estimation

  1. 1. How to not shoot yourself in the foot with estimation neil_killickNeil Killick, 2017, All Rights Reserved
  2. 2. neil_killickNeil Killick, 2017, All Rights Reserved Business wants predictability… + Bang for buck + Responsiveness to change + Speed of delivery + High quality
  3. 3. Neil Killick, 2017, All Rights Reserved Traditional… • Build a plan up front • Keep changes to a minimum • Plenty of time for course correction • Functional teams/estimation/ milestones • Project Manager steers “Agile”… • Cross-functional teams/ estimation • Little time for course correction • Unclear objectives • Unclear milestones • Frequent change • Frequent prioritisation Potential to shoot yourself in the footFAIR HIGH neil_killick
  4. 4. neil_killickNeil Killick, 2017, All Rights Reserved "Scrum employs an iterative, incremental approach to optimize predictability and control risk.” ~ The Scrum Guide
  5. 5. neil_killickNeil Killick, 2017, All Rights Reserved Incorporating feedback as we go
 Not knowing exactly what we’re doing, in sequence, throughout the project
 Welcoming change, making it easy, and incorporating it Do these things make us unpredictable?
  6. 6. Empirical predictability Understand how long we have to do what we need to do
 Create/update the plan
 Monitor progress through working software and other metrics and observations
 neil_killickNeil Killick, 2017, All Rights Reserved Deterministic predictability Determine how long it will take to do what we need to do
 Put the answer in a plan
 Keep asking how long is left to deliver the plan
 Stick to the plan
  7. 7. neil_killickNeil Killick, 2017, All Rights Reserved 1 Become predictably good at delivering
  8. 8. neil_killickNeil Killick, 2017, All Rights Reserved Predictability is improved by behaving and delivering more predictably, not by making predictions
  9. 9. neil_killickNeil Killick, 2017, All Rights Reserved 2 Be transparent — share your process and your progress
  10. 10. 10 Empirical predictability Working software every 2 weeks or so
 Collaborative review with customers of where we’re at, and what we should do next — better than “status reporting”
 Mitigating risks and impediments
 by testing assumptions, managing/ reducing dependencies Neil Killick, 2017, All Rights Reserved neil_killick
  11. 11. neil_killickNeil Killick, 2017, All Rights Reserved 3 Find out what type of estimate is required
  12. 12. neil_killickNeil Killick, 2017, All Rights Reserved • What will we get, and when?
 • Which is quicker/smaller, A or B? (for ROI purposes)
 • When will we get X (feature)?
 • How much will be done by Y (date)?
 • Will X/everything be done by Y?
 • Can we deliver X/everything for the time/money available?
 • Are you going to deliver maximum bang for buck? Do you have a plan? What are we actually estimating?
  13. 13. neil_killickNeil Killick, 2017, All Rights Reserved Sales What features can we sell to (potential) customers? Marketing When can we start our campaign? What features can we talk about at the next roadshow? Project and program managers When will Jane/Team A become available for other projects? When will we need Jane? (our shared UX specialist)
  14. 14. neil_killickNeil Killick, 2017, All Rights Reserved 4 Incorporate appropriate levels of uncertainty
  15. 15. neil_killickNeil Killick, 2017, All Rights Reserved Part of estimate — call out risks/ assumptions/issues/dependencies • How stable is the team? Losing/gaining members? • Are all team members 100% committed to the project? • How predictable is the team’s throughput/velocity of PLANNED work? • Is there a predictable level of UNPLANNED work? • What are our technical/schedule/people dependencies?
  16. 16. neil_killickNeil Killick, 2017, All Rights Reserved Don’t give a precise date when a set of scope will be delivered Don’t say a precise set of scope will be delivered on a given date — use confidence levels and shades of grey
  17. 17. neil_killickNeil Killick, 2017, All Rights Reserved 5 Take into account poor/no prioritisation — and agility
  18. 18. neil_killickNeil Killick, 2017, All Rights Reserved Remember - We are in a different paradigm
  19. 19. neil_killickNeil Killick, 2017, All Rights Reserved 6 Estimate options for solving problems, not specific solutions
  20. 20. neil_killickNeil Killick, 2017, All Rights Reserved We control time rather than predict it in iterative development • Minimum effort to solve problem, then iterate
 • Iterative/incremental is a different paradigm
 • Let’s discuss this, and align expectations
  21. 21. neil_killickNeil Killick, 2017, All Rights Reserved Problem We need to be able to contact dormant customers by email Solution 1 (~6-8 weeks) Build an automated customer email system, integrated with MailChimp Solution 2 (~2-3 days) Send manual email with no integration
  22. 22. neil_killickNeil Killick, 2017, All Rights Reserved 7 Revisit estimates regularly and frequently
  23. 23. neil_killickNeil Killick, 2017, All Rights Reserved 8 Estimate cycle times, not effort
  24. 24. neil_killickNeil Killick, 2017, All Rights Reserved 9 Use data (yesterday’s weather)
  25. 25. Neil Killick, 2017, All Rights Reserved RELEASE 1 HIGH CONFIDENCE LOW CONFIDENCE MAY 30th MAR APR MAY JUN THROUGHPUT FORECASTING INCORPORATING VARIANCE, CONFIDENCE AND UNCERTAINTY Milestone falls in our pessimistic forecast range, so we have fairly high confidence neil_killick
  26. 26. Neil Killick, 2017, All Rights Reserved RELEASE 1 (added scope) HIGH CONFIDENCE LOW CONFIDENCE MAR APR MAY JUN MAY 30th Milestone falls in our optimistic forecast range, so we have lower confidence - project needs steering to stay “on track” neil_killick
  27. 27. Neil Killick, 2017, All Rights Reserved RELEASE 1 HIGH CONFIDENCE LOW CONFIDENCE MAY 1st (earlier date) MAR APR MAY JUN Milestone again falls in our optimistic forecast range, so we need steering to stay “on track” neil_killick
  28. 28. Neil Killick, 2017, All Rights Reserved RELEASE 1 (even more added scope) HIGH CONFIDENCE LOW CONFIDENCE MAR APR MAY JUN MAY 30th Milestone falls outside even our optimistic forecast range, so we need to reduce scope or push out date neil_killick
  29. 29. neil_killickNeil Killick, 2017, All Rights Reserved Summary • Become empirically predictable — good at delivering, and know when you plan/review/release • Be transparent — share your process and your progress • Know what type of estimate is needed • Incorporate uncertainty • Account for poor/no prioritisation — and agility • Estimate problems and options, not specific solutions • Revisit estimates regularly and frequently • Estimate cycle time, not effort • Use data (yesterday’s weather)
  30. 30. neil_killickNeil Killick, 2017, All Rights Reserved Thank you! Any questions?

×