Critical path or critical chain--combining the best of both
by Crispin (Kik) Piney, PMP
THERE HAS BEEN A LOT of controversy in professional publications over the various merits—or otherwise—of the much-vaunted Critical Chain Project Management (CCPM) with respect to the more traditional Critical Path Method (CPM) [Shlomo Globerson, 2000, “PMBOK and the Critical Chain, PM Network 14 (5), 63–66; Tammo Wilkens, 2000, “Critical Path, or Chain, or Both?” PM Network, 14 (7), 68–74]. It is, however, possible to take techniques from each to create what I wish could be called the “Critical Brain Technique” (CBM)! In this article, this approach will be applied to duration estimation, scheduling, and progress tracking. Resource allocation is not addressed.
The Critical Chain approach does raise an important question that is often neglected in CPM—that is, “What sort of time estimate?” CCPM bases its schedule on the mean value (M) (that is, estimate with a 50 percent probability of being achieved) and proposes a distribution with a worst-case value of M+0.5*M for any task or sequence of tasks [Eliyahu Goldratt, 1997, Critical Chain, North River Press]. It should be noted that Goldratt's value is proposed as a rule of thumb rather than a fixed rule; however, the value 0.5 is totally arbitrary and, in addition, the mechanism is statistically inconsistent, since the binomial theorem indicates a smaller relative variance for a sequence of events than for each individual event. A more consistent statistical analysis based on the log-normal distribution is presented in Project Management in the Fast Lane by Robert Newbold [1998, The St. Lucie Press/APICS Series on Constraints Management]. A similar analysis is developed below, based on the beta distribution as used for PERT:
Crispin (“Kik”) Piney, B.Sc., PMP has recently become a freelance project management consultant and trainer after many years managing international IT projects within large corporations. At present, his main areas of focus are risk management, and time and cost control. He can be contacted on [email protected].
Exhibit 1. This graph shows the beta function in estimating activity duration.
The mean of the distribution is given by (b + a + 4*m) / 6, and
The standard deviation by (b – a) / 6.
For a sequence of tasks T1 .. Tn, the mean of the sequence is the sum of the means, and the standard deviation is given by the square root of the sum of the squares of the standard deviations.
The value-added compromise in this case would be for CCPM to adopt the PERT estimating approach. In PERT, the probability is described by the beta function with three duration estimates: the best possible value (a), a most likely value (m), and a most pessimistic value (b). In fact, the PERT m is a better estimate than the CCPM M, since it is the most likely rather than the mean (and can therefore allow even tighter estimating, because most estimates are very asymmetrical), as shown in Exhibit 1.
This approach also has the advantage over Goldratt's arbitrary 50 percent margin, as it empowers the estimators by allowing them to make explicit the potential margin of error—and indirectly the estimated standard deviation—as well as removing the stigma associated with failing to complete any particular activity within the estimated time. For example, an inexperienced estimator can specify a greater margin than someone who has full knowledge of the situation. In all cases, of course, we have to count on the person carrying out the estimate to provide an honest assessment with no covert “padding” (and on the honesty of management to respect it as such)!
An additional benefit is the availability of the “most optimistic” estimate, which can be used to evaluate the earliest possible date a resource may need to be made available, in order to capitalize on a prior task or a sequence of tasks (Chain) finishing ahead of schedule, without reserving the resource for a totally unrealistic date. In this way, a more consistent approach can be used than the CCPM “resource buffers.”
Reader Service Number 080
Exhibit 2. The size of the feeding buffers is calculated for Chain 1 and Chain 3, and the program buffer for Chain 2 (the Critical Chain).
The integrated approach therefore proposes that safety buffers are built in to the plan as proposed in the CCPM—that is, the feeding buffers and the project buffer—and that their size be calculated using correct statistical techniques based on a duration probability distribution (lognormal, beta, and so on). In order to provide maximum effective protection, the buffers should be sized to three standard deviations.
Since the Critical Chain is now effectively protected by the feeding buffers from overruns in noncritical tasks, the project buffer itself can be calculated in exactly the same way as for the feeding buffers, using statistical sums (see Exhibit 2, where Chain 2 is the Critical Chain).
Buffers Vs. Float
One other area of discussion between CPM and CCPM is the difference between float and buffers. There is a fundamental difference. Float is an outcome of the task dependencies; buffers are an input to schedule planning. In CPM, float is the extra execution time in addition to the estimated duration that becomes available due to constraints or dependencies that make it impossible to start certain tasks before a given point in time; in CCPM, the buffer is an amount of time explicitly allocated to absorb for the statistical variation from the duration originally estimated.
Float never affects the total project schedule; however, for buffers, one potential impact is shown in Exhibit 2, where, for Chain 1, the available float is less than the size required for the safety buffer. This is seen by calculating the elapsed time along each chain up to the point at which they combine before Task 2.3: Chain 1 has a mean duration of 39 but a calculated buffer of 26 (that is, a total if fully buffered of 65); Chain 2 has a mean duration of 45, and since it is the Critical Path, no feeding buffer is allocated at this point. Although the critical path based on the estimated duration gives Chain 2 as critical, it only allows Chain 1 a float of 45–39=6, which is insufficient to cope with the required feeding buffer.
Earned Value Adapted to the Critical Chain
Earned Value (EV: Budgeted Cost of Work Performed): sum of estimates for all tasks completed by the current date
BCWS (Budgeted Cost of Work Scheduled): sum of estimates of all tasks that should be complete as the current date
CL (Chain Length) in days [excluding the feeding buffer]
BL (Buffer Length) in days
From this, you can calculate:
SPI (Schedule Performance Indicator): EV / BCWS [how efficient are we being]
For the buffer estimates:
ECD (Estimated Chain Duration): CL /SPI [how long at the current rate]
BUF (Buffer Utilization Forecast):
(ECD-CL) / BL [this is what you should monitor: <0% = excellent; >100% potential buffer—and therefore project—overrun]
In this case, there are two options available: (a) push out the subsequent Critical Chain tasks or (b) reduce the size of the feeding buffer for Chain 1, keep the Critical Chain unchanged and include the extra time in the project buffer. In either case, the expected end-date is delayed by the same amount (20 days), but Option b, as we will show below, will automatically increase the focus on any delays that might occur in Chain 1, and therefore increase the likelihood of finishing earlier. In Exhibit 2, these two options are (a) to delay Task 2.3 by 20 days to make time for the full feeding buffer from Chain 1, or (b) to reduce the Chain 1 feeding buffer to six days and add the extra 20 days to the project buffer, which was 17 days. In either case the full project duration expands to 94+20=114. In practice, a combination of the two options can be used (for example, a feeding buffer of 16 for Chain 1 and the addition of the remaining 10 days to the project buffer).
CCPM recommends monitoring the state of the protective buffers (the feeding buffers and the project buffer) and setting trigger thresholds at which to take action (for example, at one-third of the buffer for “warning” and two-thirds for “urgent”). In this approach, the priority of resources for any task depends on how critical the corresponding buffer has become.
This variable prioritization based on the status at any moment is a major point in favor of CCPM. However, the way in which buffers are monitored means that there is no effective advance warning of potential problems: until you have consumed one-third of the buffer, you do not worry, even if you are using up your reserves rapidly early on in the implementation. For example, assume in Exhibit 2 that Task 1.1 finishes only on day 23, that is, overruns by 10 days: Chain 1 would be in “warning” status; however, more than one-third of the buffer has been consumed when you are only one-third of the way along the chain. On day 23, we should already realize that Chain 1 is probably heading for a major overrun.
One very effective approach used by CPM for tracking progress is the “earned value” method. Simplistically, this method takes into account cost, effort, and status to evaluate the situation at any point in time and forecast future progress. It converts both the baseline schedule and the actual status at any point into a monetary value, to allow direct comparison between planned and actual values. The values obtained in this way can be used to forecast time and cost overruns, as well as allowing calculations to be made on the viability of potential corrective measures. This can be complex in the general CPM environment: “Few people really understand the meaning of earned value measurements and how to use them for project management” [Larry Leach, 2000, “Critical Chain Project Management Improves Project Performance.” Project Management Journal, 30 (2), 39–51].
The ideal compromise is to apply the CPM earned value approach separately on each chain, in order to forecast the status of the corresponding buffer (see sidebar), and use the forecast value in the CCPM activity prioritization mechanism.
This will permit very early forecasting—and therefore action planning—on any chain on which work has started. In addition, if the buffer length (BL) was specified to be short in the initial planning, then the size of BUF automatically increases and any schedule slips within the corresponding chain will rapidly lead to raised visibility and increased priority.
As an example of applying the formulae in the sidebar, take Chain 1 in Exhibit 2, with a daily “value” (for simplicity) of $1,000. If, on day 21, Task 1.1 has only just completed, then the one-third rule would show no cause for concern (eight days is less than one-third of the buffer length BL of 26 days). However:
EV (13 days) = $13,000
BCWS (21 days) = $21,000
SPI = 13/21
ECD = 39 days * (21/13) = 63 days
BUF = (63-39)/26 = 92%.
You can already see that you are on course to consume almost your entire safety margin and that an “urgent” analysis of the situation is required.
If, as suggested in the discussion on float, the value of BL had been reduced to 16 days, the one-third rule would indicate a warning status (50 percent of buffer consumed) whereas BUF would indicate a much more serious situation, with a forecast buffer overrun of 50 percent!
THE CURRENT DEBATE on whether or not one method is better than the other—or even if they are essentially the same thing—is a waste of energy. What is clear is that CPM and CCPM do provide a different perspective to a number of important issues, and thereby allow a wider understanding of the various tools and approaches that are available. There are advantages to be gained by combining techniques from each method, so long as the people using them also apply their critical brain! ■
PM Network December 2000