Why Software Estimates Are Difficult

Software

Andrey Khavryuchenko has a great read on an all-to-common situation: A client has incomplete requirements, or has some red flags, but wants a fixed bid. Happens all the time in professional services.

There’s a real gem of an analysis in the middle of the post, having to do with the confidence levels associated with completing a particular small job in a given time frame.

The job requires 8 hours of focused developer time, and 1 hour of review by QA. There is a 1 in 5 chance that QA will reject the work and send it back to dev for fixing; a 4 in 5 chance of passing it through.

Khavryuchenko runs the numbers through a simple gamma distribution and finds the following eye-opening numbers:

  • The 95% confidence level that the item will be complete and correct would require an estimate of 41 billable hours and 9 calendar days. (!)
  • The 50% confidence level would require an estimate of 16 billable hours and 4 calendar days. (!!)

Even if you estimated almost double what you thought it would take, you’d still have a fifty percent chance of losing money on the deal.

Note to self: I need to dust off my statistics and probability textbooks. I have found that math knowledge is like a muscle — if you don’t use it, after time it atrophies and is prone to injury if suddenly called upon. In college, my probability courses were taught by a leathered, woolen old Scot, more given to the Robert Bruce school than the Socratic school. Probably my least-fondly-remembered subject in math.

Share and Enjoy:
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • Furl
  • Ma.gnolia
  • Reddit
  • TwitThis
No Comments

Leave a Reply

Allowed tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">