Friday, January 11, 2013

The Schedule – Improving Estimate Confidence

“My own idea is that these things are as piffle before the wind.

                                                                                                - Daisy Ashford

My previous post on the probability of schedule success, as pessimistic as it was, still left something hanging.  I talked about estimating an individual task to a 50% or 90% confidence level.  Is that just bunkum or is there a way to really get that kind of confidence?
Well, there really is, but a stated confidence level is just a piffle unless the techniques described in this post are used.  My post today is how to really get that level of confidence and how to recognize when it’s real.

The first step is to produce three estimates for each task.  This is not the same as Delphi estimating method, getting estimates from three experts.  Instead we’ll use the PERT three-point estimate, as mentioned in The Schedule – Estimate Task Effort.  For this exercise, the task estimator produces three independent estimates:  an optimistic estimate (O), a pessimistic estimate (P), and a most likely estimate (L).  The expected time is then calculated as E = (O + 4L +P) / 6.  So, if the optimistic estimate is 3 days, the likely estimate is 5 days, and the pessimistic estimate is 13 days, the expected time is (3 + (4 * 5) + 13) / 6, or 36/6, or 6 days.
Next, calculate the standard deviation using the formula SD = (P – O) / 6, or 1.67.  From these two values, we can now produce an estimate to the desired confidence level.

So, the 50% confidence level is determined using the expected time calculation above, or 6 days in this example.
The 84% confidence level is one standard deviation (4.33 – 7.67 days, or, rounding up, 5-8 days).  A confidence level of 98% is achieved by going out two standard deviations, or 3-10 days.  You can even get to a better than 99% confidence level by going out three standard deviations (1 – 11 days).

However, this only gets the individual tasks up to the target probability of success.  As noted in my previous post, the project’s probability of success is determined by multiplying the probabilities of the critical path tasks.  If you have ten critical-path tasks in your project and you estimate each task to a 95% confidence level (two standard deviations), your project still only has about a 62% probability of success.
To get the project to a 90% probability of success, you have to get each task up to a 99.7% probability of success (three standard deviations).  (This will actually get this example project up to a 97% probability of success.)

In my next post, I’ll provide some example numbers to demonstrate just how significant this is.  Which will also show why we as PMs woefully underestimate our projects, why we have such a dismally Chaotic success record, and why attempting to fix it will receive push back from our stakeholders.
CAVEAT:  This math works for standard distributions (you know, those bell curves).  Task estimating is not a standard distribution; the curve is compressed on the left and stretched on the right.  There is a formula/ process for converting a non-standard distribution to a standard distribution, but, even without that, what I’ve described above is still a vast improvement over the typical schedule twaddle.

How often do your projects complete on schedule.

Wednesday, January 2, 2013

The Schedule – Probability of Success


"Try not to become a man of success, but rather try to become a man of value.”
                                                                                                                - Albert Einstein

I completed the series on the well-formed schedule, but the final post, on adding risk buffers, was pretty light.  I want to take a couple of posts and expand on the topic of risk-based or risk-adjusted scheduling, which also will start some interesting metrics discussion.
How tough is the job of project management?  Planning a new project, the PM prepares a schedule that documents months in advance a completion date.  What is that PM’s probability of success?

It turns out that this is a fairly easy mathematical calculation.  If you have all of the tasks estimated and know the probability of success for each individual task, then you can calculate the project’s probability of success – the probability of completing the project on schedule.  You merely multiply the probabilities of success for each task (in the critical path) together.
For a simple example, if you have a 10-task project (each task in the critical path) and you’ve estimated each task with a 50% likelihood of success (i.e., equally likely to finish early or late), then the likelihood of completing the project on time is 0.50 x 0.50 x 0.50 x … or 0.5010 or 0.09.8%.  With a very simple project, you have less than 1 in 1,000 likelihood of completing your project on schedule.

Even if you upgrade the individual tasks to a 90% probability estimate, you only have a 35% chance of success (1in 3) in this example.  And with each task you add, the probability of success drops proportionately.  To emphasize the point:  even when you use aggressively conservative scheduling, you will miss the date more often than you hit it.
In other words, we’re screwed before we start.

This sounds very pessimistic.  What are the best practices that can improve this performance?  I explore that in my next post.  Stay tuned…
How do you generate estimates on individual tasks?  What is your expectation for the task success?