Critical Chain Method: Effective Project Management Using Time and Resource Buffers
Work tends to take all the time allotted to her.
Parkinson's law.
If any trouble can happen, it happens.
Murphy's Law.
Some statistics
One of the reasons for separating project management into a separate area of ​​expertise is
uncertainty . How we manage uncertainty in a project (including risks) directly affects the duration of the project, its success.
According to numerous studies of Standish Group
1 for traditional project management methods, only 44% of projects usually complete on time. On average, projects account for 222% percent of the originally planned duration, 189% of the initial budget. 70% of projects reduce the initial scope of work of the project, 30% of projects are closed ahead of schedule.
And although recently, with the development of tools and project management techniques, these numbers have begun to decrease, the overall picture suggests that we, as project managers, are doing a poor job.
This article examines the use of a relatively new project management method, the critical circuits method (MCC), comparing it with the traditional approach to project management.
Traditional approach to managing uncertainty and risk
In the traditional approach to project management, problems associated with uncertainty (ie, with Murphy's law), Parkinson's law, and simultaneous work of employees on several tasks (for example, in several projects) are solved in the following ways.
Inclusion of risks and uncertainties in the task assessment
Often, both the employee and his manager strive to set aside the task of uncertainty and the risks that they foresee. Uncertainty, for example, may be related to such factors as a new technology, the contractor’s inexperience in the area of ​​the task, a lack of information about the task at the time of the assessment.
They try to minimize the risks by adding reserve time for each task. Since the end time of a task is determined not by a single digit, but by a probability distribution, then graphically the assessment of the problem in traditional project management can be depicted as shown in Fig. one.
Fig. 1. Task end time as probability distribution
The assessment of the problem includes risks in order to minimize the impact of Murphy's law. And although such an assessment is done by experts or performers of the task assessed (which is good and correct), time for uncertainty is often added “by eye”.
Thus, almost every task contains an additional margin of safety that exceeds the really expected time for completion of this work. Often, the risk assessment of a task is greater than the actual execution time
From the side of the employee, this approach leads to the following negative trends. A “student syndrome” manifests itself: when an employee sees that he has more than enough time to complete a task, he begins work later. Thus, resources perform more urgent tasks or spend time reserving to work on the task itself, considering that all the time is allocated to work on it. And if the risks inherent in the backup time work, the task is delayed.
Focus on scheduled start and end dates
In the traditional approach to project management, people tend to start and complete a task precisely at the scheduled time that is contained in the plan and imposes a certain obligation on the executors.
This approach seems correct at first glance, but it carries significant drawbacks and does not use possible positive events in the project.
First, the early completion of work on the task does not lead to an approximation of the end date of the project. The executors who should start the execution of dependent tasks are not able to do this, because they are busy doing other work and did not expect to begin their tasks previously planned. Thus, the early completion of a task cannot speed up the delay of tasks dependent on it and have a positive effect on the success of the entire project.
Secondly, the delay of a task almost always leads to a delay of dependent tasks, since at the planning stage, all risks were embedded in the tasks themselves (see Fig. 2).
Fig. 2. Tasks that contain a significant time reserve are planned one after another.
In the case of a time shift, a typical solution in traditional project management is to apply corrective actions when risks are triggered by cutting the scope of project work or allocating additional resources. This does not make happy either the customer or top managers.
Management of uncertainty and risk using the critical chain method
The critical circuit method (MCC) was proposed by Eliyahu Goldratt in 1997
2 . The MCC is a project planning and management method that pays more attention to the constraints associated with project resources. It is based on the methods and algorithms of the theory of constraints
3 . This method is the opposite of the critical path or PERT methods in the sense that it does not imply a rigid task sequence or strict planning. On the contrary, the schedule, drawn up using the MCC, contains an equal load of resources over time, but requires the executors of tasks to be flexible in terms of the time they start performing tasks and quickly switch between tasks and task chains (but not work on them at the same time), with the aim of keep the entire project within the scheduled time.
That is, the MCC proposes to focus not on achieving assessments of tasks and milestones, but on achieving the only important date - the promised completion date of the project.
The MCC introduces such a concept as a critical chain of problems, or simply a critical chain. A critical chain is a sequence of tasks, the duration of which depends on the total duration of the entire project.
MCC eliminates the above disadvantages of planning, executing and controlling classical project management using the following approaches.
Eliminating the influence of Parkinson's law
Recall, the Parkinson law states that the work will take all the time allotted to it, how much reserve time we would not have mortgaged to it.
The work of resources on a task in traditional project management takes all the allotted time due to a combination of the following reasons: the presence of hard task end dates and “safe” task estimates, including time reserves
4 . To eliminate these problems, MCC offers the following actions:
- Create a calendar plan using fairly dense estimates of the duration of the tasks. Most often, in the MCC, an assessment with a 50% risk assurance, the so-called aggressive assessment, is taken as the task duration (see Fig. 1).
Get rid of hard end dates of the task (but not the project). Of course, tasks are still evaluated and have an end date in the calendar plan. But this date is not considered as the obligation of the executors to complete the work on the task within the specified period.
In a matrix organizational structure, it makes sense to give project managers sufficient authority to protect project resources from the “more urgent” tasks of other projects or departments.
Consider what these rules give us. Since tasks are evaluated with 50% time risk security, the requirement of the MCC to build a calendar plan using only the time needed to complete the tasks is fulfilled. And since we removed security from the task assessments, then consider the final completion dates of each task as something that is surely feasible, no longer makes sense.
Thus, the described techniques help us to get rid of the Parkinson's law.
Using positive aspects of early completion of the task to achieve project success
The ICC conditionally divides resources into two categories: resources that perform critical tasks, and resources of non-critical tasks. In this context, the resources we really need to take care of are resources for critical tasks, because their use directly affects the duration of the project. And we want to be sure that when the task in the critical chain is completed, the resources for the next task of the critical path will be ready and available.
Two simple steps, performed with a certain degree of professionalism, will take advantage of early completion for tasks in the critical chain. First, it is necessary to collect information from resources: how much should they be warned that they should interrupt their current work and switch to more important tasks of the critical chain. Second, require that resources periodically provide estimates of the time required to complete their current tasks (the “warning buffer”).
Having this information, we can track when the estimate of the remaining time of the current task of the critical chain becomes less than the executor warning buffer of the dependent task, and notify the latter that he is ready to start his task soon.
Compared to traditional project management, this is a step from monitoring and reporting of the “what has been done” type, using the completion percentage (which, by the way, is rather subjective), to what should be considered valuable in terms of the project’s status - how much time to complete unfinished tasks.
Using time and resource buffers to prevent Murphy's Law
Well, we reduced the estimates to the minimum acceptable, thereby concentrating all our efforts on the task. We take advantage of early completion tasks. But if we now have no “iron” date, before which the task should be completed, how will we know when the resource will be available for other tasks? And besides, how now to deal with risks that are no longer minimized by additional task time?
In order to protect the end date of the entire project from variations of tasks, the MCC uses resource and time buffers.
This section describes the use of time buffers. At the MCC special attention is paid to the problems of critical circuits. All we do is accumulate the backup time of all the tasks of the chain, which ranged from 50% to 90% of the coverage of uncertainty, leaving only 50% of the coverage for the tasks themselves. These reserves spread over all tasks are summed up into a single time buffer, which is placed at the end of the chain (see Fig. 3). Thus, variations in the critical chain do not have a direct effect on the promised project end date, since they are extinguished by a time buffer.
Fig. 3. A time buffer placed at the end of the chain protects it from time delays.
Since we leave only 50% of the risk coverage in the assessment of the task, we can expect that in half of the cases the tasks will be completed earlier than planned, in half - later. At MCC, we are actively taking advantage of early completion of tasks. As for delayed tasks, they will be compensated by the buffer circuit. Without going into statistics, we state that the total buffer should be significantly less than the time segments that compose it from the reserves of individual tasks (by 30-50%).
As for the tasks of the non-critical chain, here we do not want to engage in micro-management for each task and the contractor, as in the case of critical chains, using notifications about completed tasks. However, we also want the tasks of the uncritical path also not to affect the success of the project.
What does the traditional approach to managing tasks of the non-critical path imply? Start the tasks as early as possible and hope that there will be enough time for non-critical tasks to cover the risks.
Unlike traditional project management, at the MCC we use not only free time (float) for non-critical tasks, but the same approach with a buffer at the end of the chain (now non-critical), which was described for critical tasks. This buffer, let's call it “feeding”, protects the dependent critical chains from time variations in non-critical circuits.
Fig. 4 Scheduling on MCC
For a non-critical chain, we do not use any additional tools in order to avoid the consequences of delaying the execution of tasks (for example, a warning about upcoming work). For such tasks, we already have a double buffer: the free time of the non-critical chain (float) and the supply buffer.
Thus, scheduling for the MCC uses “feed” and project time buffers, as well as resource buffers (described in the next section).
Resource buffer usage
A particularly interesting tool in the MCC is the use of resource buffers. One can conditionally distinguish two types of such buffers.
Firstly, the time during which we warn the executor that he will soon have a task from the critical circuit, and is a resource buffer.
The second type of buffer is the allocation of alternative (additional) resources for critical chain tasks. This buffer makes sense when tasks can undergo frequent changes. In this case, adding resources means protecting against the risks of the final project end date.
Fig. 5. The critical chain in this case consists of tasks performed by limited resources.
In Fig. 5 shows a critical chain that is formed by limited resources. Accordingly, the buffers used in this situation are more likely not used to prevent a lack of time (incorrect estimates). Time resource buffers in this case are used to manage risks associated with limited resources.
Supply buffers are confronted with the tasks of critical resources, thus protecting the tasks of the critical chain from a time shift in case of delay of tasks of non-critical chains.
Buffer as a means of monitoring and control
Project progress and planning accuracy using the MCC is often monitored not by the classical technique of earned value analysis, but by the percentage of buffers used. Those. the more time planned as a buffer is used, the greater the influence of uncertainty on the project in the form of realized rice. Tracking the remaining time buffers for the task is used in the MCC to monitor the status of the task: when the minimum buffer threshold is reached, corrective actions must be taken. Similarly, the percentage of project buffer usage serves as both a trigger to determine the feasibility of the promised completion date and an indicator of project success (for example, if no more than 50% of the project time buffer was used, the project should be considered very successful).
Practical steps for using MCC
Summarizing everything described above, we can recommend the following set of practical steps for using the MCC:
- Explain to the implementers that they must protect their assessments from pressure from the authorities and other project stakeholders.
As an estimate of the duration of tasks, take estimates with a 50% coverage of uncertainty.
Eliminate competition for resources by leveling the load. It also removes the need to switch resources between tasks. The critical chain can now be defined as the longest chain of a path and resource dependency.
Insert the project buffer at the end of the project to accumulate the backup time (initially approximately 50% of the critical path length).
Protect critical chains from resource inaccessibility using resource buffers.
Calculate and arrange supply buffers for all paths on which critical circuits depend.
Plan tasks that do not depend on any other tasks, from the end date of the project to its beginning. This will be an additional assurance of the lack of multi-tasking resources.
Track and achieve planned resource performance. Workers should work on tasks as quickly as possible, and give the result of their work as soon as it is completed.
Provide resources with information about the duration and estimated start time of a task, but not about project milestones. This should force resources to render the results of their work as soon as it is completed.
At the stage of project implementation, there is an active management of dedicated time and resource buffers to minimize delays in the execution of tasks, but to keep realistic one of the main promises of the project - the date of its completion.
Thus, the MCC helps to avoid the action of the Parkinson law and, at the same time, to protect against the Murphy law. The considered method focuses attention of the project manager on team productivity, offers a new method of tracking project progress based on the use of time and resource buffers. MCC can be used in almost all areas where the project management methodology is applied, without requiring a significant reorganization of the processes in the project.
1 http://www.pqa.net/ProdServices/ccpm/W05002001.html
2 Eliyahu M. Goldratt. Critical Chain. (1997) ISBN 0-88427-153-6.
3 http://en.wikipedia.org/wiki/Theory_of_constraints
4 http://www.focusedperformance.com/articles/ccpm.html
© Oleg Klimenko
Taken from here