Sunday, August 30, 2009

Software Estimation Tips

Extracted from the book “Software Estimation – Demystifying the Black art” by Steve McConnell



What is an estimate?
Tip #1 Distinguish between estimates, targets, and commitments.
Tip #2 When you're asked to provide an estimate, determine whether you're supposed to be estimating or figuring out how to hit a target.
Tip #3 When you see a single-point "estimate," ask whether the number is an estimate or whether it's really a target.
Tip #4 When you see a single-point estimate, that number's probability is not 100%. Ask what the probability of that number is.

How good an estimator are you?
Tip #5 Don't provide "percentage confident" estimates (especially "90% confident") unless you have a quantitatively derived basis for doing so.
Tip #6 Avoid using artificially narrow ranges. Be sure the ranges you use in your estimates don't misrepresent your confidence in your estimates.
Tip #7 If you are feeling pressure to make your ranges narrower, verify that the pressure actually is coming from an external source and not from yourself.

Value of accurate estimates
Tip #8 Don't intentionally underestimate. The penalty for underestimation is more severe than the penalty for overestimation. Address concerns about overestimation through planning and control, not by biasing your estimates.
Tip #9 Recognize a mismatch between a project's business target and a project's estimate for what it is: valuable risk information that the project might not be successful. Take corrective action early, when it can do some good.
Tip #10 Many businesses value predictability more than development time, cost, or flexibility. Be sure you understand what your business values the most.

Note: This entry contains some tips from the above book. For the complete list of tips from the book, click here

Monday, August 17, 2009

Agile Estimation!

Have a look at the presentation that I prepared on Agile Software Estimation using planning poker.
This presentation is based on some great presentations on slideshare. I provided the references in one of the last slides.