Critical chain project management (CCPM) is a framework for managing project schedules by identifying the longest sequence of dependent tasks and accounting for resource constraints. It reduces project completion time by buffering uncertainties and optimizing resource utilization, thus ensuring that projects are finished on time and within budget.
Dr. Eliyahu M. Goldratt developed the concept of CCPM in 1997, which is related to his other concept, the theory of constraints. This theory of constraints helps you find bottlenecks in your process so you can overcome them and complete the project with minimal obstruction.
Before discussing the CCPM further, let’s understand the critical chain.
The critical chain is “the longest path in the network diagram considering activity interdependence and resource constraints.”

Note: Path “Start->C->D->E->F->End” is the critical chain.
Now, we come to the critical chain method.
The critical chain project management method is an updated form of the critical path method. In this method, resource availability is considered when developing the project schedule.
The critical chain method uses a buffer instead of a float. These buffers eliminate the concept of float or slack.
The critical path is a particular case of the critical chain in which the project has unlimited resources.
Key Elements of the Critical Chain
A critical chain has three components: critical path, feeding chain, and buffers.
1. The Critical Path
A critical chain network diagram can have multiple paths, and the path with the longest duration is the critical path, which is the duration of your project. Activities on a critical path are known as critical activity, and any delay in delay activity can affect the project schedule.
Critical chain project management activities can have four types of task dependencies: finish to start, finish to finish, start to start, and start to finish.
2. The Feeding Chain
In critical chain project management, feeding chains are non-critical paths of tasks that finally feed into the critical chain. They are less critical to the overall project timeline but still important. Feeding buffers are added between the end of the feeding chain and the start of the critical chain task to prevent delays in feeding chains from impacting the critical chain.
3. The Buffers
Buffers provide safeguards to project activities and critical paths. You add these buffers to your project activities, resources, and paths to compensate for possible delays in activities.
The buffers can be of three types:
Project Buffers
Project Buffers are placed at the end of the critical chain to absorb any delays from tasks, ensuring the project meets its overall deadline. They act as a cushion for the entire project timeline, protecting it from variability and unforeseen issues.
The gain will be added to this buffer if any activity finishes early.
Usually, the duration is 50% of the contingency that you have removed from each task. This can help you shift uncertainties from the tasks to the project buffer, improve efficiency, and reduce the schedule duration.
Although the critical chain starts at the beginning, it ends before the start of the project buffer, not at the project closure. This duration can include any time borrowed from the project buffer or exclude any duration added to the buffer.
Feeding Buffers
Feeding Buffers are positioned where non-critical tasks or feeding chains intersect with the critical chain. They prevent delays in these tasks from impacting the critical chain by providing a buffer to absorb any variability.
Feeding buffers are inserted between the last task on non-critical and critical chains.
Feeding buffers and the project buffer are calculated the same way. The duration of these buffers is based on some fraction of the safety removed from the tasks on non-critical chains.
Resource Buffers
Resource Buffers ensure that critical resources are available as needed, preventing delays due to resource constraints. They are scheduled to prompt resource availability at crucial points in the critical chain, avoiding interruptions in project progress.
Since the critical chain considers resource constraints, its duration will be longer than the critical path. However, you can compensate for this by removing contingencies from the activities.
The resources used in the critical chain are known as critical resources.
Step-by-Step Guide to Using Critical Chain Project Management
You can follow the following steps to create a critical chain project management framework:
1. Identify Project Activities
Start by listing all the tasks required to complete the project. Then, break the project into smaller, manageable components (work packages) and activities. This detailed task list should cover all project work. You can use work breakdown structure (WBS) to systematically organize the project into its components.
2. Determine Dependencies and Find Sequences
After identifying activities, determine how they relate to each other. Identify which tasks must be completed before others can start (i.e., predecessors) and which tasks can only begin after others are completed (i.e., successors). This step involves mapping out the sequence of activities and understanding the logical flow, which is crucial for developing the project network diagram.
3. Estimate Task Duration
Estimate the time required to complete each activity. This can be done using historical data, expert judgment, or estimation techniques like PERT (Program Evaluation and Review Technique). Ensure that these estimates are realistic and account for uncertainties in performance, which helps create a more accurate schedule.
4. Create a CPM Network Diagram and Find the Critical Path
Develop a critical path method (CPM) network diagram to visually represent the project activities, as well as their dependencies and sequences. This diagram can help you identify the longest, critical path, which dictates the minimum project duration. Activities on this path have zero floats, which means that delays in these tasks will directly impact the project completion date.
5. Determine Task Durations with Buffers
Incorporate buffers into the project schedule to account for uncertainties and possible delays. Buffers are extra time added to task durations to absorb variability and ensure that delays in non-critical tasks do not affect the project timeline. This approach helps manage risks and maintain a more flexible schedule.
6. Adjust for Resource Constraints
Assess the availability of resources, such as personnel, equipment, and materials, and adjust the project schedule using resource leveling and smoothly accordingly. If resource constraints cause delays, you may need to reallocate resources, adjust task sequences, or extend timelines. This step ensures the project plan is realistic and achievable according to the available resources.
7. Develop the Critical Chain
Modify the CPM network diagram by incorporating resource constraints and adding buffers to the critical chain. The critical chain is the longest path, considering task dependencies and resource limitations. CCPM aims to optimize project duration and enhance efficiency by focusing on the critical chain and managing buffers effectively.
Example of Critical Chain Project Management
Suppose you get a project to construct a building. You develop a schedule based on the critical path method and start the work.
However, during the execution of this project, you find out that:
- There is a cement shortage;
- Project equipment has been assigned to some other projects and/or
- Management has pulled a team member from the project for some other urgent work.
What will happen now?
Of course, this will cause a delay in your project.
So, where was the problem?
Did the critical path not identify the resources required by your project?
No, the critical path identified the resources for your activities.
So, where was the problem? What went wrong?
The problem was with resource allocation. Although the critical path identified the resources, it did not account for their limited availability. The project schedule was developed with the assumption that all resources would be available whenever they were needed.
Unfortunately, this could not happen, and the schedule was delayed.
Therefore, to resolve these issues, you apply resource constraints to your critical path, and the network becomes a critical chain network diagram, which is more realistic.
Now, you can complete your project with more confidence.
Critical Chain Vs Critical Path Method
Critical chain management is the updated form of critical path management. CPM identifies the longest sequence of dependent tasks to determine the shortest project duration, emphasizing task scheduling and duration. It calculates the critical path to highlight which tasks cannot be delayed without impacting the project timeline.
The critical chain incorporates resource constraints and manages project buffers. While CPM focuses solely on task durations, CCPM adjusts for potential delays and variability by adding buffers to account for uncertainties and resource constraints. CCPM ensures that the project remains on track despite interruptions, emphasizing the efficient use of resources and the reduction of multitasking impacts.
CPM is ideal for simple scheduling, while CCM is suited for complex projects with resource limitations and variability.
Summary
A critical chain method is a practical approach to developing the project schedule. It considers resource availability while drawing the network diagram.
Critical chain project management is one of the most important recent developments in project management. This method addresses many shortcomings of the critical path method, provides a realistic schedule, encourages team members to perform efficiently, and improves productivity.
Further Readings:
- What is the Precedence Diagram Method?
- What is the Critical Path Method?
- What is the PERT Chart?
- Network Diagrams in Project Management
- Total Float Vs Free Float?
- Lead Time Vs Lag Time
This topic is important from a PMP exam point of view.

I am Mohammad Fahad Usmani, B.E. PMP, PMI-RMP. I have been blogging on project management topics since 2011. To date, thousands of professionals have passed the PMP exam using my resources.

Contingency in estimated durations.
Hello Fahad,
Then you have to follow these three additional steps to develop a critical chain network diagram:
1)Remove all contingencies from activities. Replace your estimate with an optimistic estimate if you have used a PERT (Program Evaluation and Review Technique) estimate to build the schedule.
2)Align the activities with late finish dates and remove resource constraints. Give priority to critical chain activities while assigning resources.
3) Add feeding buffers to non-critical chains so that their durations are equal to the critical chain. Add project buffer to the end of the critical chain, but before the project end date.
You can see that the Critical Chain Method is a modified form of the Critical Path Method.
Can you please help with the diagrammatic explanation for the above. I didn’t get this thing.
Have you studied the critical path:
https://pmstudycircle.com/2014/01/critical-path-method-cpm-in-project-management/
To understand your points, you must have a better understanding of the critical path.
Good day Fahad, First time coming across this artical and sounds very interesting. I personally think this could be a good implementation on the African construction market personally knowing that a lot of development is happening. Kindly advise of how long the training takes and perhaps we can run a training course here in South Africa. Or perhaps how can i get hold of you to discuss the logistics.
Hello Greenwell, I did not understand you. What training course you want to conduct at your place?
Really this is a very good and informative post. i am first time going through such useful information. Thanks you so much for providing such a helpful information…
You are welcome Anmol. I am glad that you liked my post.
Hello, i’d like to ask about Critical chain scheduling.
Can I use 3 point pert estimation for the initial schedule?
If I can, since RSEM method use standard deviation, should i use standard deviation from PERT estimation for Critical Chain?
If you can give me some reference, i will gladly appreciate your help. Thank you
Hello Timothy,
These days we are using critical chain method to develop a schedule. Critical path is basic concept. Yes you can use three point estimate for developing a network diagram.
What is RSEM?
Hi! Fahad
Can you please inform whether we can have CCPM on MS Project or Primavera?
Yes, these days they used CCPM.
I agree with all of your assumptions about using CCPM except one. I believe one of the assumptions of critical chain is that estimated activity durations are not “deterministic” ?
Hello Robert, can you provide any reference?
Are there any programs can calculate critical chain?
Yes. You can try primavera.
Is this method on PMBOK 6? No right?
Critical chain method is not mentioned by name in the 6th edition of the PMBOK Guide, but it is a schedule network diagram technique.
Thanks bro for helping us
You are welcome Ramu.
Hi Fahad,
Been following your articles and write up – quite resourceful and really enlightening.
My confusing part is this: it is mentioned that project buffer is located before the project end, assuming that all buffers within critical chain are removed and accumulated in project buffer.
My question is, how do we calculate the project buffer and the whole project duration?. My understanding is that :
1. project buffer is calculated based on 50% from the activitie(s) performed before – the last activity.
2. project buffer duration is part of the project duration
Thanks for your kind help
Buffers are calculated based on expert judgement and they are a part of the project duration.
Thank you
As i read through some documents, project are estimated at 50% level where buffer is part of it..
Thanks again for your explanation
Awesome. Explanation. All doubts cleared. Better than all available explanations thru other resources. Thanks a lot.. Bless
Thanks Mustafa for your visit and leaving comment.
Hi Fahad,
I have question related to the below statement
” Also, if there is any gain from the early finish of any activity, this gain will be added to this buffer as well”
Question:
Suppose task A has 3 days duration and B has 2 days duration.B is dependent on A. so task responsible of B will be available on 4th day of project schedule.If I complete task A on 2nd itself ,then what is the gain Iam getting here? Task B responsible is not available on 3rd day.What is the purpose of adding this gain in project buffer?
In this case you will get the gain.
It is a resource buffer which you identify with your project team member and assign it at the right place.
Dear Mr Fahad
Nice explaination once again, would like to know , how the uncertainity of resource availablity( like in your examle cement, manpower , machine ) will affect the values in buffers.
I have read explanations on the Critical Chain Method numerous times from all sorts of book and references, none of them gave me the understanding you have given me. Thank you very much.
You are welcome Sarah.
What a nice article on CCM, I really appreciate easy and simple language used to explain this concept which even PMBOK cant explain in this detail. Thanks a lot for putting this article.
Thanks for your comment Amit.
Dear Sir,
Very nice Elaboration if CCM. I am looking for Article on CPM. Please let me know I I can get it
You can find it here:
https://pmstudycircle.com/2014/01/critical-path-method-cpm-in-project-management/
What are the commonalities between CCM and CPM ?
CCM is updated version of the CPM.
Here is the link for the blog post on critical path method:
https://pmstudycircle.com/2014/01/critical-path-method-cpm-in-project-management/
Educative and interesting.Good enough for my Cardiff Metropolitan MBA Project report.
Thannks Omoyajowo.
sir,
Please give me a example problem for critical chain method using buffers.
For the PMP exam, details given in this blog post is enough.
Hi Fahad,
Your explanations for each topics is really simple and it has appropriate explanations to understand the concepts easily. I understood CPM, Float and few more topics were really awesome.
Thanks for your efforts, in sharing this to us. I am grateful to you, for developing my knowledge. :)
Regards,
Mohan
You are welcome Mohan.
excellent explanation well done sir
Thanks At.
Hello Fahad,
If we consider optimist estimates for CCM (50% approach) to eliminating padding and instead of that adding a buffer at the end without work assigned, the total planned cost will be less than total planned cost in case of estimation in 95% approach (or activities padded). So in case of using the buffer, when we create baseline and we compare total planned cost with current cost, we will CV negative. What can we do in case of give the buffer to project instead of padding tasks, to avoid from CV negative?
Thanks in advance.
Ali.
I assigned same resources to the buffer with the amount of time/cost associated with the padding removed from the actual tasks, This way the total project cost remained the same with the potential project savings being the buffer if not used. If the project goes as planned, no adverse risks arised, then the padding time (buffer) was not used and the project remained on schedule from start to end. Otherwise if risks did turn to issues and the schedule was affected, then I still had the buffer time to keep me on track for the end date and I had the buffer of costs associated so the project did not go over budget since the buffer was a planned expense and time from the start.
Fahed
thank you for your reply , but i believe you misunderstand my question , i understand critical path meaning , but still buffering in CCM not clear !!
kindly can you explain it again if you don’t mind
Thanks
In critical chain you add buffer to accommodate any resource constraints and the contingencies.
I have explained everything in this blog post, please read it again, and ask me if you have any specific query.
how to calculate resource buffer
As per my knowledge, mostly by expert judgement.
How to calculate time for project buffer, I am confused about this can you please explain this.
thanks in advance.
This is something you will have to calculate with your team member. You need their expert judgement.
Fahed
what i understood that CCM methodology is depend on cutting the contingency in the estimation time for each activity ans sharing it together and put it as project buffer , while in critical path you added special buffer to compensate the shortage of resources which also depend the cut from the contingency , and feeding resources which you put in non critical path also the me methodology
it means we just cut from each activity and paste it as a total time for project , am i right ?? if Yes it means that i just cut all contingency and put it as a buffer !!
There is no buffer added in the critical path, and resource constraints are also not taken into the consideration there…
Please read below post to understand the critical path better:
https://pmstudycircle.com/2014/01/critical-path-method-cpm-in-project-management/
Thanks Fahad. This was very helpful.
You are welcome Vysakh.
Thanks Fahad for a nice explanation of the concept! Here I would like to take the opportunity to ask you one thing. For Float, it is hidden in the schedule and people (especially client) cannot dig it out because we are sharing PDF version or hard copy of schedule with them (as strategy). But for Buffers, it seems difficult to hide and being a PM I have to handle the stakeholders strategically. So, can you please make some advice in this case.
Regards,
Shafi
I believe this another benefit of critical chain method!
Excellent explanation in a very simplified way..to add to this readers can refer to the book “Critical chain” – by Dr.Eliyahu Goldratt where this concept is explained in a story format…happy reading !!
I’m glad that you liked my blog post. Thanks Jayahran for your visit.
Hello;
I am trying to implement critical chain idea in ms project, I know I need to cut my tasks duration, add buffers, and create schedule on late finish dates. Do you have any example or materials that I can refer to as steps example.
Thank you
Sorry Hussein, I don’t have any material that you are looking for. However, I suggest you try finding some good reference books on the amazon. I believe it will help you implement critical chain concepts on your project.
Dear Fahd,
I will be thankful if you show these buffers on NWD and explain by aid of example like you did for critical path in one of your blogs.
How is FB calculated….is it . LS of successor in critical chain minus LF of predecessor (in non critical chains last activity which joins critical path)…. same hows RB calculated..
Thanks in advance n stay blessed
Hello Ali,
It is a good suggestion and I have taken a note on it. In future you’re going to see a separate post on it.
Fahad
Can you explain PERT method ?
Here is the blog post on PERT:
https://pmstudycircle.com/2013/08/pert-program-evaluation-and-review-technique/
Good post.
Would like to know – how will you do that practically using a tool – say MS Project or Primavera?
I don’t have much idea about the Primavera or MS Project.
So, how you apply these theories in real world? Any other way? Pls inform.
In primavera there is a way to assign all these resources to each activity. You can also set their duration and everything.
Same thing you can do in MS project as well.
You can contact any primavera expert to know more about it.
Thanks…Let me check other resources..Looking for all 3 buffers, including resource.
You’re welcome Som.
I still dont understand how Change Management Approach plays into the CCM!
Basic concept will always be same. You will review the change request, get it approved (if needed) and then implement it.
Thanks, Fahad Usmani.
I never get like your explanations in else where sites.
Keep it up.
Thanks Lax for your comment.
This explanation is so easy to understand. I’m glad I found this blog. Thank you!
Thanks Lynnette for your comment and visiting my blog.
Dear Fahad,
I became a bit confused now about the critical chain, resource leveling and crashing, would you explain this for me,
Resource leveling : is move resources.
Crashing : is adding resources.
Critical chain : is reallocating resource as a result of limited resources.
Many Thanks
aboturke
In resource leveling you move source from one activity to another activity. On the other hand in crashing you add additional resources to the activity which increased the cost to the project.
In critical chain you use the resource leveling.
Sir, your CCM explanation is unique, be blessed,
Thanks you Samuel.
Excellent explanation missing an final example but It’s very heplful
What did I miss?
Hi Fahad,
I have been reading all your updates with regards to PMP, however this time I am not satisfied with your CCM blog, kindly explain how to calculate the buffer with simple example.
Thanks
Rohit
9999084558
Hello Rohit,
This blog post is sufficient for the students for preparing for the PMP exam.
Anyway, I have noted your comment and in any future update to this blog post I will add these points as well.
Can i have example for ccm
As of now I dont have it, but I will share it once I get it.
I believe that you need to demonstrate the procedure to create CCM, using the available software, either P6 or Ms.P, my understanding that creating a normal CPM using P6- as example- with Resource leveling will lead to the same CCM, Am I right???
Many thanks
I believe that you’ve missed the practical part, I mean how to implement the CCM in any of the recognized planning softwares.
My understanding to apply that method, you can go directly to P6-as example- and start establish your time plan loaded with ideal resources, then set the restricted resources’ limits and re leveling to redistribute the limited resources. Then , at that time you’ll have your schedule resource buffer and project buffer. Am I right….?
Many thanks.
It is long time since I used primavera. I suggest you look into their documentation.