Critical Chain Project Management

5 minute read
What is DevOps?

What is DevOps?

DevOps is the continuous delivery of prioritised value to an organisation. For more click here.

What is wrong with traditional project management?

Critical Chain Project management

We all know the statistics related to project failures – the numbers vary from 80% of all IT projects to 30% depending on what study you read. By failure we mean over budget, delayed, or cancelled.

Given the level of project failures it may be tempting to conclude that project execution is the real problem. We can conclude that ‘if only we have more resources, better IT systems, better project managers’ we could deliver on our commitments. But what if the idea of traditional project management is fundamentally flawed?

The traditional project management approach assumes a perfect world where you create a plan, sequence your tasks optimally, allocate your resources, execute and the project will get done.  But this ignores the harsh realities – many different types of uncertainty arise during the execution of a project and these are effectively unplannable.

  • Requirements change
  • Technology fails
  • Vendors do not deliver
  • Work materializes slower than expected
  • Approvals do not come on time
  • Priorities change

As uncertainties strike, plans are thrown out the window, and project leaders often micro-manage or start managing by dictate. In multi-project situations people are being pulled from one project to another – this context switching to multitask becomes a source of delays. Projects start to slip and delays compound – it’s never one big thing, rather its death by a thousand cuts – all the small stuff adds up.

You would think that we would learn from our failures but what really happens is that people find ways to account for the uncertainties. They do this by padding task estimates with safety margins to ensure they can meet their commitments. This seems like a logical approach – how else are you going to account for the inevitability of Murphy’s Law. But the more safety in a task the more there is a tendency to delay starting the task until the last moment. This is called the Student Syndrome. Also we are all familiar with Parkinson’s Law – Work expands so as to fill the time available for its completion – effectively we delaying the completion of the task and there is no incentive to finish early. So, even though we’ve added a safety margin to account for uncertainty, we use it up anyway, and when Murphy’s Law strikes, tasks still overrun.

Critical Chain Project Management

So are there any alternatives? In 1997 Dr Eli Goldratt published his book “Critical Chain” where he introduced his Theory of Constraints and the Critical Chain Project Management (CCPM) approach. CCPM provides a holistic view or projects and sees projects are part of a wider system. With Critical Chain PM (CCPM), projects and teams shift their attention from assuring that tasks are completed on time to assuring that only the project outcome and end date matters.

In CCPM, the Critical Chain is defined as the longest chain [not path] of dependent tasks. In this case, ‘dependent’ refers to resources and resource contention across tasks/projects as well as the sequence and logical dependencies of the tasks themselves.

In order to reduce the behaviours and time wasting associated with having too much embedded safety, CCPM recommends that task estimates are cut to half the length of a “normal” duration. This represents the time it would take to complete the task if the resources were completely focused, not interrupted, and no major problems arose. It has the effect of eliminating Parkinson’s Law.

Critical Chain Project Management uses safety ‘Buffers’ to manage the impact of Murphy’s Law. The safety at a task level is aggregated and moved to strategic points in the project flow.  There are three types of buffer/strategic points necessary to ensure the project has sufficient safety:

  • Project Buffer – A project buffer is inserted at the end of the project schedule. Any delays on the Critical Chain will consume some of the buffer but will leave the completion date unchanged and so protect the project. The project buffer is typically recommended to be half the size of the safety time taken out.
  • Feeding Buffers – delays on paths of non-critical tasks feeding into the Critical Chain can impact the project by delaying a dependent task on the Critical Chain. To protect against this, feeding buffers are inserted between the last task on a feeding path and the Critical Chain. The feeding buffer is typically recommended to be half the size of the safety time taken out of the non-critical tasks on the feeding path.
  • Resource Buffers – Resource buffers can be set alongside of the Critical Chain to ensure that the appropriate people and skills are available to work on the Critical Chain tasks as soon as needed, for example when tasks finish early.

The other element of CCPM is its approach to execution of the project. Focus is the key. Resources are discouraged from multitasking, and it is forbidden on the Critical Chain. All resources on a project are given clear and aligned priorities relating to the ‘health’ of the Critical Chain relative to its associated buffer and hence the project as a whole. A resource with more than one task open should normally be assigned to complete Critical Chain tasks before completing any non-critical task.

Resources on a task are encouraged to follow the ‘roadrunner’ approach. When there is work available it should be progressed at the fastest possible speed (without compromising quality) until completed. Tasks are not left partially complete to remove the temptation to multitask.  As task duration estimates have reduced safety they drive resources to meet the more “aggressive” durations and limit the behaviours of Student Syndrome and Parkinson’s Law.

Management must protect resources to allow them to focus, uninterrupted, on the critical chain tasks. This is a vital element to the success of CCPM, and probably one of the hardest things to achieve.

The amount of each buffer that is consumed relative to project progress is an early warning indicator. It tells us how badly the delays are effecting our committed delivery date and helps the project manager be proactive in resolving the issue.

Tasks are monitored on their remaining duration, not their percentage complete. Resources report upon tasks in progress based on the number of days they estimate until the task will be complete. If the remaining duration stays static or increases, then Project Managers and Resource Managers watching the buffers know exactly where a blockage or potential delay is occurring and can take decisive action quickly to recover the project.

With CCPM, managers can make project plans and execute them knowing they can manage the inevitable uncertainties in an effective way. They still need to do the basics like creating project plans, status meetings, and resolving resource conflicts. CCPM has a number of benefits:

  1. No more re-planning cycles: Even as uncertainties strike, project plans and due-dates remain valid. The burden of constant re-planning is removed.  It’s all about buffer and resource management. Early warning indicators obviate the need for managers to manage on-the-fly.
  2. There is no need to pad estimates with safety margins: Project participants are no longer measured regarding on-time completions of individual activities because explicit buffers are available to absorb and lessen the shocks of uncertainties.
  3. Simple, meaningful updates: Project participants only report the time they need to finish what they are working on.
  4. Priorities in sych: For the first time, project plans and progress updates can be used to dynamically synchronize priorities within and across projects.

CCPM may not be for everyone. But it has been used successfully in many industries including Aerospace, Semiconductors, and Pharmaceuticals. The results have been phenomenal with reports that projects are delivered 10% to 50% cheaper and 10% to 50% faster.

POSTED IN: Uncategorized