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.