Upgrade to Pro — share decks privately, control downloads, hide ads and more …

I Estimate This Talk is 30 Minutes (Give or ta...

Noel Rappin
November 17, 2015

I Estimate This Talk is 30 Minutes (Give or take 10)

RubyConf estimation talk

Noel Rappin

November 17, 2015
Tweet

More Decks by Noel Rappin

Other Decks in Technology

Transcript

  1. This slide Intentionally left blank Noel Rappin, This talk is

    20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  2. How far do you live from an airport? Noel Rappin,

    This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  3. I live !" minutes from one Noel Rappin, This talk

    is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  4. If I'm in a car And the weather is good

    And it's not rush hour And I don't blow a tire Noel Rappin, This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  5. Failing any of these makes my trip longer Noel Rappin,

    This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  6. This talk is 20 30 minutes (give or take 10)

    Noel Rappin, Table XI (@noelrap) Noel Rappin, This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  7. Noel Rappin, This talk is 20 30 minutes long, RubyConf

    2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  8. I am an idiosyncratic crank about estimates Noel Rappin, This

    talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  9. Are software developers uniquely bad at estimates? Noel Rappin, This

    talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  10. Ever done a home remodel? Noel Rappin, This talk is

    20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  11. Big Dig Noel Rappin, This talk is 20 30 minutes

    long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  12. Initial cost estimate $5.8 billion !!!!!! Noel Rappin, This talk

    is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  13. Final cost: $21.93 billion And counting... !!!!!!!!!!! !!!!!!!!!!! Noel Rappin,

    This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  14. It's not just our problem Noel Rappin, This talk is

    20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  15. What can we do about it? Noel Rappin, This talk

    is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  16. What if we didn't estimate? Noel Rappin, This talk is

    20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  17. What if we just did stuff and got paid? Noel

    Rappin, This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  18. Sure, I'll tear up your kitchen. And bill you when

    I'm done. Noel Rappin, This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  19. Customers reasonably expect estimates Noel Rappin, This talk is 20

    30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  20. Estimates are Communication Noel Rappin, This talk is 20 30

    minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  21. Communication with $$$ Noel Rappin, This talk is 20 30

    minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  22. Estimates communicate: investment Noel Rappin, This talk is 20 30

    minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  23. Estimates communicate: progress Noel Rappin, This talk is 20 30

    minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  24. Estimates communicate: scope Noel Rappin, This talk is 20 30

    minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  25. Bad Estimates communicate: Unrealistic expectations Noel Rappin, This talk is

    20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  26. Bad Estimates communicate: Way too much... Noel Rappin, This talk

    is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  27. So, let's just do good Estimates Noel Rappin, This talk

    is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  28. Estimating at the beginning is the worst Noel Rappin, This

    talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  29. Like guessing time to the airport if you don't even

    know where the airport is Or if you even need to fly... Noel Rappin, This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  30. How can we estimate Effectively? Noel Rappin, This talk is

    20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  31. Even when we know Nothing Noel Rappin, This talk is

    20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  32. A quick sidebar of agile terms Noel Rappin, This talk

    is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  33. Feature / Story The unit of work in a project

    Noel Rappin, This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  34. Iteration The unit of planning in a project Noel Rappin,

    This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  35. Point The size of a story Noel Rappin, This talk

    is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  36. Velocity Points per interation Noel Rappin, This talk is 20

    30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  37. Kind of a theory of estimates Noel Rappin, This talk

    is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  38. Estimating projects vs. Estimating features Noel Rappin, This talk is

    20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  39. Nobody really cares about estimating features Noel Rappin, This talk

    is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  40. They only care about when users can use stuff Noel

    Rappin, This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  41. Feature estimates are only useful to get you to project

    estimates Noel Rappin, This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  42. Estimates are estimates Noel Rappin, This talk is 20 30

    minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  43. Estimates are probabilistic Noel Rappin, This talk is 20 30

    minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  44. Chance of rain: 50% ☔ Noel Rappin, This talk is

    20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  45. This is a ! point story Noel Rappin, This talk

    is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  46. What makes an estimate wrong? Noel Rappin, This talk is

    20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  47. Bad assumptions Noel Rappin, This talk is 20 30 minutes

    long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  48. Misunderstanding the problem Noel Rappin, This talk is 20 30

    minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  49. Scope Creep Noel Rappin, This talk is 20 30 minutes

    long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  50. Unknown complexity Noel Rappin, This talk is 20 30 minutes

    long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  51. Rework Noel Rappin, This talk is 20 30 minutes long,

    RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  52. Developers are optimists Noel Rappin, This talk is 20 30

    minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  53. Sometimes there is pressure Noel Rappin, This talk is 20

    30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  54. A lower estimate doesn't make it less complex Noel Rappin,

    This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  55. How to do better Noel Rappin, This talk is 20

    30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  56. Uncertanty Not Precision Noel Rappin, This talk is 20 30

    minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  57. What goes into the amount of calendar time a feature

    takes? Noel Rappin, This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  58. Complexity of the task Skill of the developer Time on

    task Noel Rappin, This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  59. We are bad at estimating time on task Noel Rappin,

    This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  60. But it tends to be consistent over time Noel Rappin,

    This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  61. Skill of the developer Noel Rappin, This talk is 20

    30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  62. We're also not that great at estimating this Noel Rappin,

    This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  63. And it's toxic Noel Rappin, This talk is 20 30

    minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  64. But it tends to be consistent over time Noel Rappin,

    This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  65. We are pretty good at estimating complexity Noel Rappin, This

    talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  66. Which is to say ! ⚪ ! Noel Rappin, This

    talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  67. Estimate complexity and let time sort itself out Noel Rappin,

    This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  68. The humble point Noel Rappin, This talk is 20 30

    minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  69. Time on task and relative skill average out Noel Rappin,

    This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  70. Which is like basing our airport estimate on: Distance to

    airport Average speed in the past Noel Rappin, This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  71. Consistency Noel Rappin, This talk is 20 30 minutes long,

    RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  72. Of team size Of story makeup Of environment Noel Rappin,

    This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  73. Decomposing the problem into similar size chunks helps Noel Rappin,

    This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  74. But you need data Noel Rappin, This talk is 20

    30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  75. The problem of one-off estimates Noel Rappin, This talk is

    20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  76. How do I estimate at the beginning of a project?

    Noel Rappin, This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  77. The worst way to estimate (except for all the other

    ways) Noel Rappin, This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  78. Fake it Noel Rappin, This talk is 20 30 minutes

    long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  79. Don't fake knowledge Noel Rappin, This talk is 20 30

    minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  80. Fake your velocity Noel Rappin, This talk is 20 30

    minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  81. Don't spend time chasing precision Noel Rappin, This talk is

    20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  82. your output is a range Noel Rappin, This talk is

    20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  83. Split the tasks as best you can Noel Rappin, This

    talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  84. Assign points 1: easy, less than a day 3: has

    complexity or risk 5: has a lot more complexity or risk Noel Rappin, This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  85. Don't spend a lot of time assigning points to a

    single task Noel Rappin, This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  86. Round up Noel Rappin, This talk is 20 30 minutes

    long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  87. At the beginning (and only at the begining) You can

    range estimate stories Noel Rappin, This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  88. You end up with Range of points Say... (100 -

    120) Noel Rappin, This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  89. Apply a load factor (5 - 7 hours per point)

    Noel Rappin, This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  90. Low points * low factor High points * high factor

    = (100 * 5) - (120 * 7) = (500 - 840) hours Noel Rappin, This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  91. hours * rate = estimate = ($75,000 - $126,000) Noel

    Rappin, This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  92. Clearly describe the limits Noel Rappin, This talk is 20

    30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  93. Understand that this will change Noel Rappin, This talk is

    20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  94. You are headed to the airport together Noel Rappin, This

    talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  95. Thanks Image credits 4 http://www.constructionequipmentguide.com/ historical/big-dig/ Noel Rappin, This talk

    is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap
  96. Noel Rappin (@noelrap) Table XI http://www.noelrappin.com/trdd (coupon code RUBYCONF2015) http://pragprog.com/book/nrtest2

    Noel Rappin, This talk is 20 30 minutes long, RubyConf 2015. http://www.noelrappin.com | http://www.tablexi.com | @noelrap