!title Demarco's Estimation Patterns [[!-Tom DeMarco-!][http://en.wikipedia.org/wiki/Tom_DeMarco]] wrote one of the most useful books ever: ''Controlling Software Projects''. I've recently been reunited with my copy, and I think I'll give it an end-to-end read this time. It is full of sensible advice and reasonable metrics. One of the things he discussed early in the book would be described fairly as "estimating patterns and antipatterns", though he titled the chapter "The Estimating Dilemma". He lists some common anti-patterns: 1 refusal to reestimate ("estimate as goal") 2 estimating by adding acceptable slippage ("what you can get away with") 3 adding past slip as future negative slip ("it will even out") 4 estimate "right answer" (estimation by guessing "the right answer") 5 estimate by padding the "right answer" (guessing how much you can push the right answer) He describes the "goal" estimate (default for most shops) as ''the most optimistic prediction with a non-zero probability of coming true''. Then he provides a more reasonable definition of an estimate as ''a prediction that is equally likely to be above or below the actual result''. For this, he offers a game you can play. Ask what the likelihood is of being done 15% early, and see how the estimators respond. I suggest that you also ask the likelihood of being 15% late. Really, the two ought to be the same, but somehow we always give goals when asked for estimates. [[DeMarco][http://en.wikipedia.org/wiki/Tom_DeMarco]] explains why this is (estimates used as incentives, etc), and how it has been undermining our ability to estimate for many years. He suggest that we have motivation-free estimates, and estimate-free motivations. Yes, he is surprisingly sensible. !commentForm !* Sat, 7 Oct 2006 15:53:27, CW, Which DeMarco book? Which of DeMarco's books are you talking about? Thanks! ''I just added in the title into the blog post. I was so excited about having my copy back, I forgot to say that it is ''Controlling Software Projects''. Thanks for the catch! - Tim'' *!
Use alt+s (Windows) or control+s (Mac OS X) to save your changes. Or, tab from the text area to the "Save" button!
Grab the lower-right corner of the text area to increase its size (works with some browsers).