PMBOK 5th Edition – Critical Path Scheduling Techniques

Project schedules can be created in a variety of ways using the Precedence Diagramming Method (PDM) for Critical Path (CPM).  My preferred method is found in the PMBOK 5th edition.  I like this method because I find it more relevant to real life activity.  I’ll also explain a second method at the end, but I do not find that method nearly as user friendly.  However, after seeing both methods you can decide which will work best for you.

Below, is an example of a PDM.  Each node is labeled as a task and we will assign all of these tasks for this example a “finish-to-start” relationship.  That means the successor task cannot start until its predecessor task has been completed.  

finish to start

Our goal in this PDM is to find the critical path, which is the longest path through the project. In turn, this would establish the shortest duration.  To do this, we will analyze how many days a task takes and then add its cumulative duration to the next task that is done next.  Tasks A, B, and C are on one path and Task D is on another path with Tasks E, F, and G.  Both paths merge at Task H.

ES and EF stand for “Early Start” and “Early Finish”.  LS and LF stand for “Late Start” and “Late Finish”.

The first step is to do a “forward pass” and find out when the Tasks can start and finish at their earliest.  On day 1, we start the project so tasks A and D have an ES of 1.  Task A takes 8 days to finish so the earliest it can finish is on day 8.  Since 8 days have finished, the next bit of time rolls into the 9th day, so then, Task B starts on Day 9.  Task B takes 7 days to complete, so it finishes on day 15.  The pattern is ES + Duration -1 = EF.  You can also check this on your fingers by counting the duration from what day you are on.  When you get to a Task, like H, that merges two nodes, take the next day from the path that takes the longest.  The project will take 22 days to complete.

task A,B,C

After the forward pass is complete, then we will work a “backwards pass” to determine the float.  Float is also referred to as “slack”.  It is the amount of time that the task can be delayed without delaying the successor tasks.  One unique feature about the critical path is that it has no float.  Float is determined by subtracting LF – EF or LS – ES (they should equal the same value).  The backwards pass is worked almost the same way as the forward pass, except subtracting instead of adding.  We start from the finish and fill in the LS, LF because we know Task H is on the critical path.  Then we go backwards to its predecessor Tasks.  We subtract one from our LS to get the LF and then subtract the duration (and add 1) to get the LS:  LF – duration +1 = LS.  Notice how Task F has a LF of 19 and EF 12, which is 7 days difference.  That means if Task F does get to start working on day 9 and is able to finish the task in 4 days, then it would have another 7 days to lallygag before having a possible effect on the currently scheduled project finish date.


Can you pick out the critical path?  It is A, B, C, H.  Note, again, that the critical path has no float.

The second method to chart a schedule is to start on day 0.  By using this method, you can still get the same project duration and float times as the first method. However, ES and LS times will disagree with the first method, reviewed above.  The way it goes is that Task D, for example, would have ES 0, EF 4 and Task E would carry over the 4 for the ES.  Personally, I find communication problems with this method.  For example, looking at Task E, you would have ES 4 and EF 8 and it would look like you are working on it during days 4, 5, 6, 7, 8 (which, looks like 5 days). This discrepancy could cause confusion within a team setting.  The PMBOK illustrates the first method, but leaves room for the second method to still be acceptable. 

After learning two PDM methods, I hope you will be able to find a preferred method and put one to good use.

Author - Gregory Morrow

About Author
Gregory Morrow