Critical Chain Project Management: Doing more Projects - Faster!
The age old problem
In the last fifty years, the project management body of knowledge has evolved tremendously but the world of projects has not shown commensurate improvement. Numerous studies conducted over the years prove that existing project management practices are not very effective.
Be it software development, engineering projects, construction projects, or new product development, project performance has left much to desire. Such is the importance placed on project performance, that projects which are delivered with full scope, on time, and within budgets make it to newspaper headlines!!!
This leads us to a fundamental question: is there a specific scientific way of managing a project which can consistently deliver the desired results? When we ask this question to numerous project managers, we hear responses like:
“the plan and the initial estimate has to be detailed and perfect”
“the project should have the best possible resources when required”
“vendors supplying to the projects have to be perfect”
“requirements should be frozen upfront”
Such requirements can be met only in a perfect world - a world free of uncertainties. It will take a huge amount of time and mammoth effort to create this perfect world. There are however numerous project organizations that are investing the required time and effort in trying to define a perfect estimation process, making more detailed plans than before, defining change control processes, training resources, vendors and making process templates. But project environments, by definition, are unique – the next project will always be different .So, by the time, the company is ready with all the knowledge, processes, and skills, the requirements of the next project appear to be very different from the earlier one and one has to start all over again. The effort to reduce uncertainties seems like a never- ending journey.
The problem is even more profound in a multi-project environment, where resources are shared across projects. Projects in such environments are not only affected by their own uncertainties but also by delays in other projects. Resource dependencies, both within and across projects, increase the number of integration points in the project which leads to the problem of cascading the effect of delays from one project to another.
The solution that isn’t
Why is the common solution approach failing so consistently? Every time we start a project, we build a detailed plan, at times to an absurd level of granularity, estimate the task durations and assign resources with an expectation to meet all deadlines. This should ensure that the project should complete on time without the need for re-planning. Unfortunately, things do not work out as planned. Problems seep in during execution - requirements change, vendors do not deliver on time, work happens at a much slower rate than expected, approvals are delayed; resources are not available because they are being used in other activities. With time, these uncertainties multiply and destroy the schedules. When deadlines are missed, resources are used to fix the “fires”, they multi-task across projects, as project managers and resource managers get into conflicts on what is really urgent. Consequently the project fails. In the postmortem that follows, resource managers are called upon to explain the failure and a solution is agreed upon – to make an even more detailed plan the next time. With bad experiences, project and resource managers make their plan realistic or in other words make task estimates with adequate buffers so that they have higher chances of meeting the deadlines.
However, uncertainties again hit the project and the marketing managers get into an eternal conflict with project and resource managers on how the estimates are unreasonable.
Working against one’s intuitions
The root cause of poor project performance is NOT inadequate buffers or uncertainties but the fact that there are MORE BUFFERS than required.
All projects have more buffers than required and it is the way in which projects are planned and managed that result in waste of time and resource capacity.
People intuitively understand that the project environment is full of uncertainties. Statistically speaking, in an uncertain environment, one cannot make deterministic schedules. However managers fail to understand that task duration is just an estimate and in an environment where estimates are set as deadlines, people provide adequate buffers to give high probability durations.
During execution, these high probability durations encourage two undesirable behaviors amongst resources–the Student Syndrome and the Parkinson’s Law (work expands to fill the time allotted to it). When resources provide high probability durations, they are aware of the ‘actual duration’ that will be required to execute the work. Consequently they invest the extra time in other ’urgent’ work. Work begins only in the period nearing the deadline. As someone remarked, deadlines provide information to resources on how much delay they can afford. This results in safety being used even before work has actually started. In some other cases, even if resources start work early and finish it much before the deadline- they do not want to report early completion. They are aware that this would prompt a cut in their time estimates in the succeeding project. So they use the extra time to polish their work. This phenomenon is common in environments where work norms have been set for the resources. In environments where a task gets accomplished by using multiple resources, Parkinson’s effect is seen in form of the resource managers deploying thin resources to the job instead of putting maximum resources to finish the job ahead of its scheduled completion.
These behaviors prevent gains from getting reported and transferred – only the delays gets passed on, and as a result the resource department involved in the last leg of the project have to compensate for the accumulated delays of all the previous departments. No wonder, the departments involved in the last phase of the project (erection, testing etc) are the most stressful areas to work.
The other mechanisms which jeopardize the project schedules are measurements like earned value, percent completion, and so on. It is common knowledge that a project’s success lies in moving fast on the longest chain; however measurements like earned value and percent completion can encourage people to work for a higher percent completion even at the cost of moving fast on the longest chain.
Many projects have failure designed right in the contract. The high risk points in projects are the integration points (statistically speaking, the probability of an integration event happening on time is indirectly proportional to the number of dependent events feeding to the integration event). Many contracts have payment milestones not in sync with the flow of work. At times, contractual milestones can create an artificial integration milestone thus adding to further delay in project execution. Contractors working on such projects, sometimes focus on these milestones at the cost of project flow.
Multi-tasking, widely prevalent in multi-project environments, is the most detrimental phenomenon. The importance of finishing one task at a time is understood by all. However, in a multi-project environment, resources seem to be perennially in a state of flux. Resources are employed in new tasks even before successfully completing the first allotted task. This increases the elapsed time of tasks and the projects and also leads to resource capacity loses due to multiple setups.
When projects are delayed, people tend to think that the best solution is to start as soon as possible. When projects start ASAP, the work-in-process of tasks in front of resources is very high and a high WIP environment leads to multi-tasking. Whenever there is a slightest interruption in task execution, resources shift to another task to use the idle time and as a result, the waiting time increases adding to overall project lead time.
These undesirable practices, seen in almost all project environments, leads to a situation where task buffers in the projects are exhausted .The protective mechanism required for real murphy is hardly available.
The solution :( un)common sense
What projects need is a powerful solution which meets the following criteria:
Manage uncertainties in a different manner rather than putting Herculean efforts to remove it
Avoid falling into the trap of a more detailed plan
A project management method which removes the harmful effects of student’s syndrome, Parkinson’s law and multitasking ( avoid wastages of time and capacity)
Reliable execution of project plans
Fortunately there is light at the other end! A technique called as the Critical Chain Project Management (CCPM) offers a feasible solution, as it helps deliver results because of its unique ability to accommodate and manage uncertainties. CCPM a unique way of managing projects, was proposed by Dr. Eliyahu Goldratt, and is based on his earlier propounded theory called the Theory of Constraints and the statistical phenomenon of Common Cause Variation.
Understanding the new environment
The project plans build in “CCPM way” have buffers removed from the tasks (task durations are made aggressive and seemingly unrealistic- with just 50% chances of it completing in the planned duration) and placed at critical points where it matters the most - at the point where the feeding path meets the critical path and at the end of critical path.
These buffers (also called as project tolerance) are a block of unscheduled time which absorbs the uncertainties of the project during execution. Since the buffers are aggregated at critical points, the overall buffer requirement is less than what one would require when they are distributed to individual tasks. The project lead time is reduced right at the planning phase. With buffers removed from the tasks, the effect of student syndrome and Parkinson’s effect is drastically minimized.
In a multi-project environment, instead of projects starting ASAP, projects are released into the system based on the capacity of the most loaded resource. This helps in controlling the work in progress and the associated multi-tasking.
However the key change required from the management’s end is an understanding that task duration in critical chain plans are aggressive and have about 50% chances completion in the stated durations – so task deadlines cannot be used for monitoring projects. Instead the projects are monitored based on the rate of buffer consumption.
Day to day priorities
Day to day priorities for resources within and across projects is set by the rate of buffer penetration.
The results of critical chain project management are commendable – within a short implementation time, the project lead times have reportedly come down to about 70% of the original lead time (with an average of 50%). The overall thru-put has gone up by about 50 %. CCPM has been successfully implemented in many project organizations in India and worldwide.
Mr. Javin Bhinde
Director, SynCore Consulting Group