Here is what I found to be most successful.
First of all I develop a Cost/Duration Risk Model to forecast cost and duration with risk.
I found that a statistical model gave me the best results.
The model works on two fundamental or what I refer to as Principal Equations.
I try to avoid using thumb rules for margins because they are difficult to defend and they cover up opportunities to improve when we apply a blanket rule. If we constantly need to apply a rule then ask yourself why? The answer is an opportunity to improve.
I find that adding margins to each work package to be too labor intensive to track. I prefer a single cost margin that acts like a savings account. I use this in parallel with the model. The model is frequently updated to forecast costs going forward and when it exceeds the original budget I make a withdrawal from the savings account.
I base my risk cost and durations on the WBS elements. I prefer to use a Deliverable WBS because it is customer focussed. Each risk impacts one or more DWBS elements to some level. So I use a percentage from each element for the total cost and duration calculations. This gives me a direct connection between my estimates and the project. I find this to be a much better basis of estimate that I can easily defend versus a single thumb rule.
I recommend adding a duration margins at the end of project phases. Look at the project plan and find where it makes sense to include these time margins. Having fewer margins makes it easier to track them.
Here are some of the lessons I have learned using the approach:
- Some work packages exceed their original estimates while others fall below- in the end if I have added several lines to the estimate the net effect is very close to the original estimate. However I have found that projects with few lines usually miss large amounts of cost.
- I do not need to include all of the risks in my budget. I list them from high to low and draw a line part way down the list. I find that there is a few high risks followed by smaller ones. The other reason for not including all of the risks is that they are not mutually exclusive. I find that many risks impact the same element so I do not need to include them all. My reasoning is that once a risk is triggered I will be reworking that element and the rework will account for other risks as well.
- I measure risks the three categories: Known-knowns (efficiency), Known-unknowns (traditional risks), Unknown-unknowns (hidden risks that reveal themselves later in the project). I have developed effective techniques to estimate the unknown-unknowns.
- The levels of the risks can vary dramatically from project to project. The unknown-unknowns is what usually gets project into trouble very quickly. I have developed a Project Continuum base on the level of knowns that helps me place a project on the continuum and therefore estimate the unknown-unknowns. The continuum is company specific and must be developed from historical data.
- The statistical model results in a normal distribution for the known-knowns and known-unknowns. I choose an appropriate P-Level depending on how uncertain I am about the project. For the known-knowns I usually choose P70 or higher. For the known-unknowns I typically use P20 or higher depending on the uncertainty.