Friday, July 17, 2015

PMP Exam Prep: Calculating EAC and ETC for Forecasting

In PMI®’s Project Management Professional (PMP)® exam, you’ll find a number of questions on earned value management (EVM). Along with EVM, the concept of “forecasting” is also important to understand. Forecasting has been used as one of the tools and techniques in the “control costs” process under the “project cost management” knowledge area. If you’re pursuing your PMP® credential, I’ll share some insights about those topics in this article that would be good for you to study.

In forecasting, the two primary metrics used are estimate to complete (ETC) and estimate at completion (EAC). ETC is the expected cost to finish the remaining work of the project, whereas EAC is the expected total cost of completing all work for the project. As EAC considers the total expected cost, it is the sum of actual cost incurred so far for the project (AC) and ETC. Putting it into an equation, you get:

Estimate at completion = Actual cost + Estimate to complete

This is the main formula for EAC, which is derived from AC and EAC.

However, you may come across sources that are confused about EAC. A number of books, articles and journals mention that EAC changes based on certain assumptions. In fact, EAC doesn’t change directly at all on various assumptions. However, ETC does. And as ETC changes, it in turn changes EAC.

How and why? You’ll see shortly.

ETC is the cost needed to complete the remaining work. It’s driven by a performance factor or performance index. Putting it into an equation, you get:

ETC = Work remaining / Performance factor
ETC = (Budget at Completion – Earned Value) / Performance factor
ETC = (BAC – EV) / Performance factor

The performance factor could be the cost performance factor or the cost performance index (CPI). It can also be combination of CPI and schedule performance index (SPI) or a weighted combination of CPI and SPI.

So why use earned value for ETC calculation? Why not actual cost? Because we’re talking about remaining work — not remaining cost — while calculating ETC. Had it been remaining cost, the formula would have been “BAC – AC.” But for remaining work ETC will equal “BAC – EV”.

Now, let’s review assumptions based on which the performance factor changes. You’ll see that as the performance factor changes ETC, EAC will also change.

Assumption #1: Future Performance Will Be the Same as Past Performance

ETC = Work remaining / Performance factor
ETC = Work remaining / Cost performance factor
ETC = (BAC – EV) / CPI

Why are we taking the CPI by default and not SPI? Because here the calculation is primarily focused on cost and not schedule. Our main formula for EAC, as noted above, is:


Now, replacing the just-calculated value of ETC on the previous equation, the modified equation becomes:

EAC = AC + [(BAC – EV) / CPI]
EAC = AC + [(BAC / CPI)] – [(EV / CPI)]
EAC = AC + [(BAC / CPI)] – [(EV) / (EV / AC)]
EAC = AC + [(BAC / CPI)] – AC

This is what you would mostly see in almost all the reference material for the PMP® exam — the formula for “Estimate for Completion is EAC = BAC / CPI.” It’s mentioned as the default formula in many books and plainly written as BAC / CPI, but hardly ever is it explained clearly. As we just saw, this formula is simply derived by ETC.

Assumption #2: Future Performance Will Be the Same as Planned Rate or Budgeted Rate

When you first plan and baseline, it’s assumed that the performance factor will be “one” or going forward EV and AC will be same. In others words, your CPI will be 1. ETC, as we have already seen, is:

ETC = Work remaining / Performance factor
ETC = Work remaining / Cost performance factor
ETC = (BAC – EV) / CPI

Using the CPI value 1, ETC becomes:

ETC = (BAC – EV) / 1

Our main formula for EAC is:


Replacing, the value of ETC calculated in this assumption, the equation for EAC becomes:

EAC = AC + (BAC – EV)

Here again you’ll see that ETC is driving the formula for EAC based on an assumption.

Assumption #3: Future Performance Will Be Influenced by Both Cost Performance and Schedule Performance

In this example, note that we’re talking not only about cost performance but also schedule performance. Why? Imagine that your project is doing well with respect to schedule but not cost. In such a case it’s possible that your final ETC might be less if you consider both SPI and CPI, rather than only CPI.

Applying this to the formula of ETC, we get:

ETC = Work remaining / Performance factor
ETC = Work remaining / (Cost performance factor * Schedule performance factor)
ETC = (BAC – EV) / (CPI * SPI)

For the performance factor in the previous equation, we have considered both SPI and CPI.

Again, our equation for EAC is: EAC = AC + ETC.

Now, using the value of ETC listed above, the equation for EAC is:

EAC = AC + [(BAC – EV) / (CPI * SPI)]

Assumption #4: Future Performance Will Be Influenced by Some Proportion of Schedule as well as Cost Performance

This is a variant of assumption #3. In this instance, weighting is given to CPI as well as SPI while calculating ETC. Giving an 80 percent weighting to CPI and a 20 percent weighting to SPI, the equation for ETC is:

ETC = Work remaining / Performance factor
ETC = Work remaining / [(0.8 * Cost performance factor) + (0.2 * Schedule performance factor)]
ETC = (BAC – EV) / [(0.8 * CPI) + (0.2 * SPI)]

Our formula for EAC is:


Replacing ETC, which we calculated for this assumption, the equation for EAC is:

EAC = AC + (BAC – EV) / [(0.8 * CPI) + (0.2 * SPI)]

Other variations in weighting are also possible, such as 50 percent for CPI and 50 percent for SPI. This will be in accordance with the judgment of the project manager.

Assumption # 5: The Initial Plan Is No Longer Valid

In this case, you have to recalculate ETC using a bottom-up approach. This is called “Bottom-up ETC.” Hence, for this assumption the equation for EAC will become:

EAC = AC + Bottom-up ETC

You can view EAC and ETC graphically as S-curves in the figure below.

As you prepare for your PMP® exam, you’ll be ready to calculate various formulas related to EAC and ETC by remembering:

  • Don’t assume that EAC changes based on certain assumptions. ETC is what actually changes. You need to focus on ETC and how ETC is calculated based on various assumptions;
  • The formula for EAC is “AC + ETC,” and therefore it is EAC which is changing based on ETC because EAC is derived from ETC. It’s not the other way around. ETC doesn’t change based on EAC; and

By focusing on ETC and understanding ETC as the division of work remaining with a performance factor, and it is ETC that drives EAC, a PMP® aspirant can easily calculate various formulae related to EAC and ETC.

This article was first publish by MPUG on 23rd June, 2015

You may also like:

Saturday, July 04, 2015

Primavera Risk Analysis - Criticality Index and Project Risk When Critical Path is Not The Longest Path

In the previous post, in the end, this is what I wrote:

If you want to have the longest path as critical path and do not want to consider total float, then you can use this setting. However, the total float option is advisable. Why? It is because during risk analysis, the activities having negative total float will show a high "criticality index" as compared to the ones with zero total float. 

First, what is the "Criticality Index" of an activity?

As per Primavera Risk Analysis (PRA) software, 
During risk analysis tasks can join or leave the critical path. The criticality index expresses as a percentage, how often a particular task was on the critical path during the analysis. Tasks with a high criticality index are more likely to cause delay to the project as they are more likely to be on the critical path.  
If a task does not exist for some iterations (e.g. it is probabilistic) then it is marked as not being critical. For example a task that existed for 50% of the iterations and was critical 50% of the time it existed would have a criticality index of 25%.
In simple terms, criticality index is informing how often during the iterations, a particular activity/task is likely to be on critical path. 

Criticality index is used in Torando diagram. Remember - we are sampling and iterating many times with probabilistic duration, as noted in one of the earlier posts on Primavera Risk Sensitivity Analysis with Torando Diagram. 

Let me reuse the example of the previous post. There are 6 activities and 2 milestones with duration, free float, total float and the network diagram shown.
Critical Path - First Case
This is where I'll apply the concept of "Criticality Index". I imported this project (1st one without any constraint applied and without any negative total float) to PRAapplied a probabilistic distribution (triangular) and iterated 1000 times. With that, the criticality index comes as below.
Criticality Index (Tornado diagram) - First Case
Activity E and F have the highest criticality index, followed by C and D, as shown in the above Torando diagram. Or in others words, activities E and F have higher chances of delaying the project as compared to others, as they have  higher chances on being on the critical path.  Activity A and B are having criticiality index of just 2% or they are very less likely to delay the project.

Now I applied the constraint to activity B and changed the start date to before the finish date of its predecessor (as I had done in the previous post), the total float values changed as shown below. The critical activities also changed with activity A and B being new critical activities.
Critical Path - Second Case
When I imported to PRA and followed the same steps, i.e., applied probabilistic distribution and iterated - this is how the criticality index changed for all the activities.
Criticality Index (Tornado diagram) - Second Case
Above, you can see that the criticality index of the activity E and activity F remain same, i.e, at 86%. But for activity A and activity B, the criticality index is coming at 100%, which were earlier at just 2%. In other words, with the introduction of negative total float, the chances of the project being delayed by activity A and activity B are now the highest. 

Hence, it is important to note that critical path can be the longest path or critical path can also have activities with negative total float as well as zero total float. If you are not considering activities with total negative float, you are really ignoring the risks on your project. 

1. Remember have proper setting in PRA for critical path post the import of XER file from Primavera P6.

2. It is not necessary to create the plans, set the dependencies, constraints etc in Primavera P6. All these can be directly created in Primavera Risk Analysis. You can fully do these operations - activities creation, linking, Gantt chart, applying constraints et al - directly in Primavera Risk Analysis. As most use Primavera P6 while creating a project plan, I have taken this approach. 

Note: A new course has been launched covering a detailed risk management with Oracle Primavera Risk Analysis. For details, check:

Your may also like:

Book Available for PMI-RMP Exam

Thursday, July 02, 2015

Primavera P6 - Critical Path is Not Always The Longest Path!

I come across this statement many times – "Critical path is the longest path in the project's network diagram." Yes, true, but partially! Sometimes, a shorter path in the network diagram can be a critical path and the activities on it can be critical activities. 

Let us see how.

I have a project as shown below in Primavera P6. There are 6 activities and 2 milestones with duration, free float, total float and the network diagram shown.

Pic - 1: Critical Path, the Longest Path
The paths in the network diagram, along with their lengths are:
Start  -- Activity A --  Activity B -- Finish  = 0 + 2 + 3 + 0 = 5 days
Start  -- Activity C --  Activity D -- Finish = 0 + 4 + 3 + 0 = 7 days
Start  -- Activity E --  Activity F -- Finish = 0 + 5 + 3 + 0 = 8 days

Obviously, the activities on critical path are E and F, which are highlighted in red and shown in the above Gantt chart. It is the longest path and that is what the typical textbook definition says. Also, all activities on the critical path will have total float of value zero. Is not it?

Now, I applied a primary constraint for Activity B - "Mandatory Start" and set the constraint date to June 30, 2015. Note that for Activity B, the planned start date was July 1, 2015. 
Pic - 2: Apply mandatory start constraint to Activity B

I rescheduled with this constraint and this how the Gantt Chart and its corresponding table looks in the "Classic Schedule Layout" of activities screen in Primavera P6. Here, Activity A and B are also critical path activities!

Pic - 3: Critical Path with Longest as well as Shorter paths

So, what happened?
Activity A is now a critical activity as the total float has now become negative. Earlier, in pic - 1, the float of Activity A was 3, but post constraint set for Activity B, the float of A has changed to "-1". For Activity B, total float has changed from 3 to 0. And both are highlighted in red,i.e., they are critical path activities. (in Pic - 3) 

Is this path "Start  -- Activity A --  Activity B -- Finish" the longest path? No. The complete path length is definitely not the longest one. But it is now a critical path, too! It is because total float of A has turned negative.

So, here are the things to note for critical path:
1. Critical path can be the longest path of the project, which determines the shortest duration of the project. Here the total float of the critical activities will be zero.
2. Critical path can also include activities whose total floats are less than zero. In this case, the project duration may not be the shortest or the path may not be the longest one.

The second part, as mentioned above, is mostly missed by management practitioners. The important point to remember is that if the total float falls below zero for an activity, then also, the activity can be in a critical path. In others words, critical path can have activities with zero or negative total float. So, when you have negative total float, be careful.

It does not matter which project management software you use. These are the concepts on critical path. It can have zero or negative float. Also to note, if you are preparing for PMP exam, be clear about these concepts. 

To choose, what type of critical path you want in Primavera P6, change the settings of the project. Go to Project screen -- bottom Details and check the Settings tab. 

If you want to have the longest path as critical path and do not want to consider total float, then you can use this setting. However, the total float option is advisable. Why? It is because during risk analysis, the activities having negative total float will show a high "criticality index" as compared to the ones with zero total float. This we will see in the next post.

Your may also like: