# Critical Path is Easy as 1,2,3

, Wednesday, September 01, 2010
In my previous post about the problem of telling what’s important on a project, I promised to share some thoughts and tips on how standard project management methodologies, particularly the critical path method, can facilitate your planning efficiency when applied to a project creatively. But first of all, it is worth discussing what the critical path method (CPM) is all about.

What is Critical Path?

CPM is a mathematically based algorithm for scheduling a set of project activities. The essential technique for using CPM is to construct a model of the project that includes the following:

•    A list of all activities required to complete the project,
•    The dependencies between the activities, and
•    The estimate of time (duration) that each activity will take to completion.

Using these values, CPM usually calculates the longest path of planned activities to the end of the project, and the earliest and latest points that each activity can start and finish without making the project longer. This process determines which activities are "critical" (i.e., on the longest path) and which have "total float" (i.e., can be delayed without making the project longer).

Now we’ll try to illustrate the concept with an example. Let’s take a simple, real-life project: hanging a picture on the wall. What should you do to complete this mini-project successfully? First, we need to define and list all the tasks that have to be done, so that the whole project is completed.

• Choose a place on the wall
• Choose the picture
• Drill a hole
• Screw in the screws
• Hang the picture

When we think of these tasks, we realize that some of them cannot start before the others are finished. That is, some tasks are dependent on the others.

The actions “drill a hole,” “screw in the screws” and “hang the picture” form a sequence of tasks that must be performed in a specific order, one right after the other, to ensure a successful result. Such tasks are called “sequential” activities.

So these three tasks, together with the start of our project (“choosing a place on the wall”) in our example, are the most important critical steps that must be taken to arrive at the proper solution to our problem. These actions will be placed on your critical path for this project. So the essential concept behind Critical Path Analysis is that you cannot start some activities until the others are finished. These activities need to be completed in a sequence, with each stage being more-or-less completed before the next stage can begin.

Here’s what a sample schedule can look like:

The critical path consists of the longest sequence of activities from project start to end that should be started and completed exactly as scheduled to ensure the project is completed by a certain date in the future. The activities on the critical path must be very closely managed. If jobs on the critical path slip, immediate action should be taken to get the project back on schedule. Otherwise, completion of the whole project will slip. Imagine that you have a project that will take 300 days to complete. If the first activity on the critical path is one day late, the project will take 301 days to complete, unless another activity on the critical path can be completed one day earlier. So the critical path is simply all the tasks that determine the end date in your project schedule.

There can be more than one critical path in one project, so that several paths run in parallel. For instance, in our case, “choose a picture” and “hang the picture,” as well as “buy the screws,” “screw in the screws” and “hang the picture” form other task sequences that also are important for us to complete the project.

The critical path may contain all the important activities on the project, or it may not. In fact, sometimes the activities on the critical path are not the most important parts of the project. At the same time, there will be tasks that are not on the critical path, but still determine your project’s success. Understanding the critical path involves determining which activities are critical to complete on time. But other activities, lying outside of critical path, also may be very important and require extra diligence and focus.

What Resource Constraints Are and Why They Are Important

Traditional critical-path-derived schedules are based only on causal (logical) dependencies. We’ve already marked these dependances in our plan (e.g., it is impossible to drill a hole before you choose a place on the wall).  However, a project can have resource limitations, which also should be taken into consideration. These limitations will create more dependencies. These dependencies are often called “resource constraints.”

So, if you work on a team, your project work can be split between the team members. In our case, while you’re choosing a place on the wall and drilling a hole, one of your friends can go and buy some screws, and your spouse can choose the picture. The tasks can be done in parallel, like on our chart above.

However, if you’re the only person responsible for the project, you have a resource constraint (i.e., you cannot drill a hole and go shopping for screws simultaneously). In this case, your critical path will look different.

On the chart above, we assume that you first need to choose the picture, and only later can you buy the screws. However, depending on the project conditions, these tasks can be performed in a different order.
Such a critical path is called a "resource critical" path. This method was proposed as an extension to the traditional CPA to allow for the inclusion of resources related to each activity. A resource-leveled schedule may include delays due to resource bottlenecks (i.e., unavailability of a resource at the required time), and it may cause a previously shorter path to become longer. This is what you see on our chart above.

Calculating the Length of Your Project

In project management, a critical path is the sequence of project activities that add up to the longest overall duration. This determines the shortest time possible to complete the project.

Getting back to our example, let’s assume that you have to do everything by yourself. For each activity, show the estimated length of time it will take. Also, you determine the approximate start time for each task on the critical path. Here’s how it can be done in our example.

Now, if we add up all the critical tasks’ duration, we’ll get the approximate time that will be needed for the whole project to be completed. In our case, 1 hour and 26 minutes. Add the duration to the start time, and you’ll be able to calculate the earliest project completion time (10:26 am in our example).

Flexibility in the Critical Path

The critical path method was developed for complex, but fairly predictable, projects. However, in real life, we rarely get to manage such projects. A schedule generated using critical path techniques often is not followed precisely. As we already mentioned above, any delay of an activity on the critical path directly impacts the planned project completion date. New requirements may pop up, and new resource constraints may emerge.

Let’s say you’re planning to redecorate the living room together with your spouse. Your tasks will include:

•     Getting rid of the old furniture
•     Painting the walls
•     Fixing the ceiling
•     Installing the new furniture

Your spouse will then be responsible for:

•     Choosing the new curtains
•     Hanging the new curtains

The curtain tasks form a sub-project and can be treated as a non-critical path. Your spouse can “choose the new curtains” and “hang the new curtains” any time before the end of your project. So these tasks do have flexibility in the start and end date, or “float.” These tasks are parallel, and they will not be placed on the critical path.  Here’s how the whole project can look on a Gantt chart:

However, if any of the parallel tasks gets significantly delayed, it will prevent your whole project from being completed on time. Therefore, you should always keep an eye on parallel tasks. Now, let’s assume that choosing the curtains took your spouse longer than you initially expected. This will delay the end of the project.

Your redecoration is incomplete without the new curtains, so the path that previously was non-critical becomes critical for the project’s completion. The initial critical path changes.

To keep an eye on your non-critical tasks, you should always keep your schedule up-to-date. That’s the only way you’ll know exactly where your project is at any given moment in time and whether it will be delivered as it was initially planned.

Do you find the CPM method effective for your projects? If not, then why? Please let us know in the comments.

As for me, I find that the traditional method can definitely be fine tuned by a few tips and tricks that I’m planning to discuss in my next post.

• Peter Saddington, Thursday, 02 September, 2010
Critical path analysis is very helpful prior and during the project. As you said, it's much easier said than done and much easier done when the project is very defined and scheduled. Knowing all the facts of the project ahead of time (your #1 assumption) is very hard, even with complex or medium size projects. Would it be fair to say that this may not be the best exercise for non-defined projects?
• ibrahim, Thursday, 02 September, 2010
good presentation
alternatives of schedules how to apply it?
• Andrew Filev, Saturday, 04 September, 2010
Hi Peter,

I wouldn't break news saying that "it depends":-) In my own day to day practice due to the nature of projects I'm running, I very rarely consciously focus on critical path analysis per se. But implicitly and unconsciously I do walk through CPA quite often. It could be as simple as throwing a quick schedule and thinking "hmmm, if we do these things in this order, we're behind the schedule, we need to cut A and B out and postpone it for later, this way we'll be on time". And some of those projects are quite agile.
It's also important to note, that in some sense all planning efforts are (or at least should be) iterative. You make some assumptions (and assumptions about correctness of those assumptions), and as you go down the road, you try to gather data and course correct. I love Randy Komisar's approach http://ecorner.stanford.edu/authorMaterialInfo.html?mid=2415

Hi Ibrahim,
Could you elaborate on your question, maybe with an example? I'm not sure I got it right.

Best,
Andrew
• ibrahim, Sunday, 05 September, 2010
Andrew
imean how far to go with ordering of task
it looks so many alternatives so that you can miss the best easy
e.g. we can fix the ceiling before or during removing furniture
thanks
• Andrew Filev, Sunday, 05 September, 2010
Ibrahim,
Ah! That's a great question. The number of possible permutations in the real project is so high (especially, when we introduce resource dependencies) that it's more art than mathematics. There are some heuristics that are used by experienced PMs.
I'll probably share my 2 cents on those heuristics in a follow-up post later. Readers of the blog are definitely welcome to share their favorites.

Cheers,
Andrew
• Prathik Stephen, Friday, 25 February, 2011
hello there,

i would like to know the relationship between project size and proportion of critical path activities
• Lhoza, Wednesday, 02 March, 2011
I would also like to know your comment to the question above.
• Andrew, Wednesday, 02 March, 2011
The more slack you have in your schedule, the less is the risk of breaking it, and less tasks lie on your critical path. But in real life, I don't think you have much room in controlling that proportion. The goal of critical path analysis is to identify the critical path and keep an eye on it.
• Yanga Babana, Monday, 09 May, 2011
I wud like to know the relationship between the project size& the proportion of the critical path
• Andrew, Monday, 09 May, 2011
Yanga,
You could only get generalizations like "on average larger projects have more tasks on CP", but I'm not sure if this can give you any actionable insight in making a particular project a success.
• Irish, Thursday, 29 September, 2011
hi,

I would just like to ask: Why is the critical path (the shortest completion time) the longest time?

Thanks.
• Ruben, Tuesday, 04 October, 2011
I am sorry, but the approximate time that will be needed for the whole project to be completed is not 2 hours and 26 minutes. It is one hour and 26minutes. it stare at 9:00 and finish 10:26.
• Andrew, Thursday, 13 October, 2011
Irish,
The critical path defines the longest sequence of planned activities that are required for completing a project, and the shortest time it takes to complete this sequence and, thus, finish the project.

Ruben,
Thanks for correcting the typo!
• ibrahim, Thursday, 13 October, 2011
I mean alternatives of sequenves activities whether overlaped or not and how far to go in that.
• Kame, Wednesday, 02 November, 2011
Hello there,

I would like to ask how we can have more than one critical path ?

regards
• ken jose, Sunday, 04 December, 2011
Your notes are good but could you please try to put some real world examples on the critical path analysis please. thks
• Thys, Saturday, 21 January, 2012
Tasks that can be performed at the same time is called?
• mocxP, Monday, 23 January, 2012
what are the major risks of having most work items on the critical path?
• Camille, Monday, 27 February, 2012
I understand how to draft the network diagram but I am not sure how to determine the critical path of the project. I am doing self study and searching the net for help with this. How do you determine the crtiical path? This is what is confusing to me.
• Rahaman, Kolkata, India, Wednesday, 11 April, 2012
Dear respective sir thank you verry much for your notable important notes. But could you solve this CPM activities
Q: with the following available data of events draw the net work and arrive least no of days required to complete the work.

Event Duration in days Remarks
station at A

A to B 9 -
A to C 8 -
B to D 5 D succeds B
C to E 11 E -"-C
C to F 10 F -"- C
D to G 15
} G succeds D & E
E to G 13

F to H 13 H succeds
H to I 14
} I succeds H & G
} & Finishing Events
G to I
• Pasupathy K.R, Saturday, 28 April, 2012
Dear Andrew,

I read your article so as to know about 'critical path scheduling' in simple terms .. since the example was very simple and interesting .. i understood what is cp scheduling .. thanks a lot ..
you may wonder ... infact i needed this not to apply in a project but to understand it in an algorithm required for hardware resource allocation in VLSI subject of electronics :) .. anyway thanks again ..
• kingsley, Thursday, 24 May, 2012
your article is great but unfortunately l'm stil failing to make calculations on both foward and backward pass
• Sam, Monday, 04 June, 2012
This is a good and useful way to understand CPM, I think, but my understanding is that the application of CPM to a full-blown project - especially in matters of drawing up a proper schedule with forward and backward passes and all that - is often difficult to understand and communicate.

Graphical Planning Method is, in the same way that CPM is as easy 1-2-3, as easy as click-and-drag. The activities are represented by bars and nodes; Logic mode enforces many of the rules CPM was developed to follow. It is, on the whole, a simpler, clearer exercise in scheduling, especially when resources get involved.
• Marina, Sunday, 24 June, 2012
Just learning about this and am finding it confusing tho' when presented sounds very straightforward. Do like your examples which makes it easier to understand; but, how do you calculate early start, early finish vs late start, late finish or any other way of determining duration. If you could provide a SIMPLE calculation, it'd be very helpful.

Thank you
• keps, Monday, 02 July, 2012
nice work
• katherine, Monday, 16 July, 2012
If I have the following info on hand how should I the diagram should look like or how can i find the critical path for this:

1. painting walls, 2 days
2.installing partitions, 1 day
3. install network cables, 2 days
4.installing carlet 2 days
5. preparing offices, which includes,
a. assembling furniture, 2 days
b. connecting computers, 1 days
c. moving belongings, 2 days

You can begine painting the walls as soon as possible. After you have finished painting the walls, you can begin installing partitions, and network cables. After you have completed installing the partitions and the network cables you can begin installing the carpet.
The installation of the carpet must be complete before you can begin preparing the office which includes the following sequencial activities: assembling the furniture, connecting the computers, and then moving the belongings in. Your project is complete when you have moved the belongings in.