there are many different methods for calculation of actual progress in primavera p6. these methods involve using many fields and settings, including:
- duration % complete
- units % complete
- physical % complete
- activity % complete
- performance % complete
- percent complete type
- earned value settings of the wbs elements
i will explain duration % complete in this article. other fields and settings will be explained in future articles and we will finally have a complete picture of the whole actual progressing system in primavera p6.
primavera p6’s 3 types of activity percent complete
each activity has three percent complete fields that are calculated all the time:
- duration % complete
- units % complete
- physical % complete
only one of these values will be selected by the user as the activity’s progress, even though all of them are calculated all the time. i will explain how to choose the appropriate activity percent complete in future articles.
duration % complete calculations
the most common problem with duration % complete is that primavera p6 uses a counterintuitive formula. you may expect it to be something like microsoft project’s formula:
duration % complete(ms project) = [actual duration] / ( [actual duration] + [remaining duration] )
but this is not the p6 formula. duration % complete is calculated with this formula:
duration % complete(p6) = ( [original duration] – [remaining duration] ) / [original duration]
this formula uses original duration, which may be different from the current duration. we will check this on the following sample.
sample: we have an activity with original duration of 20 days. 15 days have passed and we estimate it to finish in 18 days (yes, it’s much longer than we expected initially). the original duration does not change automatically after activity’s start.
original duration: 20d
actual duration: 15d
remaining duration: 18d
[duration % complete] = (20-18)/20 = 10%
intuitive or msp-like duration % complete = 15/(15+18) = 45.45%
the following figure shows the initial state of this sample activity (named a1):
let’s say that the activity has started in may 8th. we’ll check the started checkbox and enter the actual start date in its date box.
suppose that it’s currently may 27th; we will reschedule the plan for this data date.
the actual duration is automatically calculated based on actual start date and the data date, as follows:
[actual duration] = [data date] – [actual start] (p6 formula for in-progress activities)
unfortunately, you cannot change the actual duration field manually.
now we can enter the remaining duration. in this example, we estimate that a1 requires 18 more days to be completed. we’ll enter 18d in remaining duration field. by entering a remaining duration, duration % complete will be calculated automatically.
in this case, duration % complete is calculated as 10%.
we could have entered the duration % complete instead of the remaining duration and p6 would have calculated remaining duration automatically .
now, take a look at the gantt chart.
when you look at the gantt chart, you see that about half of the current duration is actualized and you may expect a duration % complete of around 50%. the exact number of the intuitive formula is 45.45% in this example, which is not equal to our duration % complete.
changing the original duration
primavera p6 uses the following equation for original duration is used when an activity is not yet started:
[original duration] = [early finish] – [early start]
however, after the activity has started, original duration will not be automatically calculated by early start and early finish, and you can change it manually. the at completion duration represents our current duration, calculated as:
[at completion duration] = [actual duration] + [remaining duration]
in our example, the at completion duration is calculated to be 33d. we will enter the same value for the original duration field and this would be the result:
the activity’s schedule is not changed, but duration % complete is recalculated based on the new original duration; and yes, it’s the intuitive value that we calculated before.
when original duration is equal to the at completion duration, the duration % complete will have the intuitive value. the following equations show how the p6 formula would become the intuitive formula, when the original duration is equal to the at completion duration:
[duration % complete]* = ( [original duration] – [remaining duration] ) / [original duration]
= ( [at completion duration] – [remaining duration] ) / [at completion duration]
= [actual duration] / ( [actual duration] + [remaining duration] )
* this equation is based on the assumption that original duration is equal to the at completion duration.
if you would like to have the intuitive duration % complete (for any reason), you can create a global change to set the original durations of in-progress activities. the following figure shows the appropriate global change setup.
this global change checks each activity’s status; if it’s “in progress”, then the at completion duration would be copied to the original duration. we will then have the intuitive duration % completes for all activities.
duration % complete for wbs elements
the previous explanation was focused on duration % complete for activities. duration % complete is also calculated for wbs elements, but i strongly recommend you not to use duration % complete to track a wbs element’s progress. thus i have not included an explanation of the calculations here.
you should always think of duration % complete as an intermediate field and use performance % complete to track activities and wbs element’s actual progresses.
i will explain the calculation and usage of performance % complete in a future tutorial.
summary
this tutorial has demonstrated the internal calculations of primavera p6’s duration percent complete field.
the most common problem in this area is that primavera p6 does not use the intuitive formula for duration % complete which confuses some planners and project managers. we explained the primavera p6 calculations and the intuitive formula side by side, to show the differences and create a better understanding of the p6 method. finally, if you absolutely need to use the intuitive formula, try the global change described above.
remember, duration % complete does not provide a final result; it is used in a system which provides the actual progress. you should use performance % complete to read the actual progresses. we’ll cover that in an upcoming tutorial soon.