The Critical Path Method
The Critical Path Method
The critical path method (CPM) is used extensively by project planners worldwide for
developing the project schedule in all types of projects including IT, research, construction.
Although the critical path is very useful tool in project planning, it also has some limitations
and drawbacks.
Because the critical path method is an optimal planning tool, it always assumes that
all resources are available for the project at all times.
It does not consider resource dependencies.
There are chances of misusing float or slack.
Less attention on non-critical activities, though sometimes they may also become
critical activities.
Projects based on the critical path often fail to be completed within the approved time
duration.
Project Network
If you look at any network diagram, you will notice many paths originating from one point
and ending at another point. Every path will have some duration, and the path with the
longest duration is known as the critical path.
You develop the network diagram which consists of three paths; each path resembles each
building.
You calculate the duration for each path. For the first building, the duration is 31 months, the
second building will take 18 months, and the third building will require 13 months.
The first path represents the largest building, the second path represents the medium sized
building, and the third path, the smallest building.
The path for the first building is the longest duration of all three. It is thirteen months
longer than the second path, and 18 months longer than the third path. This means that if you
start working on the first building, you can wait 13 months before working on the second
building because you can complete second building in 18 months.
Likewise, you could wait 18 months to start working on the third building because it will take
only 13 months to complete. This means that even if you start working on the third building
after 18 months from the project start date, you can complete it on time.
Hence, the critical path is the longest path on the network diagram.
Now, what is the shortest duration in which you can complete the project?
It is 31 months, because you cannot complete your project before 31 months, and this is the
duration of the critical path.
Hence, the critical path is the shortest duration in which you can complete the project.
We can conclude that the critical path is the sequence of activities from start to end, and it has
the longest duration among all paths in a network diagram.
In ideal conditions, a network diagram, and therefore, the project, should have only one
critical path. However, if the network diagram has more than one critical path, you will be in
a difficult situation. In this case, you will have to manage more than one path in parallel.
As we know, the critical path has the longest duration, and its duration is known as the
duration of the project. Since activities on a critical path have no float or slack, no activity
should be delayed. If this happens, the project will be delayed. However, if there are delays,
you can use a schedule compression tool, such as fast tracking or schedule crashing, to bring
the project on track.
Note: You must always update the network diagram if there is any change to it so that you
can have a better understanding of activities and predict the float, project completion dates,
etc.
The following is the procedure to find the critical path on a network diagram:
n Step 1: Make a forward pass through the network as follows: For each activity i beginning
at the Start node, compute:
n Earliest Start Time (ES) = the maximum of the earliest finish times of all activities
immediately preceding activity i. (This is 0 for an activity with no predecessors.). This is the
earliest time an activity can begin without violation of immediate predecessor requirements.
n Earliest Finish Time (EF) = (Earliest Start Time) + (Time to complete activity i. This represent
the earliest time at which an activity can end.
n The project completion time is the maximum of the Earliest Finish Times at the Finish node.
n Step 2: Make a backwards pass through the network as follows: Move sequentially
backwards from the Finish node to the Start node. At a given node, j, consider all activities
ending at node j. For each of these activities, (i,j), compute:
• Latest Finish Time (LF) = the minimum of the latest start times beginning at node j.
(For node N, this is the project completion time.). This is the latest time an activity
can end without delaying the entire project.
• Latest Start Time (LS) = (Latest Finish Time) - (Time to complete activity (i,j)). This is
the latest time an activity can begin without delaying the entire project.
A critical path is a path of activities, from the Start node to the Finish node, with 0 slack times.
Example:
Based on the below network diagram, identify the total paths, critical path, and float for each
path.
The above network diagram has five paths; the paths and their duration are as follows:
Since the duration of the first path is the longest, it is the critical path. The float on critical
path is zero.
The float for the second path “Start ->D -> E ->F -> End” = duration of the critical path –
duration of the path “Start ->D -> E ->F -> End”
= 31 – 18 = 13
Using the same process, we can calculate the float for other paths as well.
Calculate Early Start (ES), Early Finish (EF), Late Start (LS), and Late
Finish (LF)
To calculate the Early Start and Early Finish dates, we use forward pass; we will start from
the beginning and proceed to the end.
Early Start (ES) for the first activity on any path will be 1, because no activity can be started
before the first day. The start point for any activity or step along the path is the end point of
the predecessor activity on the path plus one.
Formula used for calculating Early Start and Early Finish dates.
Early Start and Early Finish Dates for the path Start -> A -> B -> C -> End
Early Start of activity A = 1 (Since this is the first activity of the path)
Early Start and Early Finish Dates for the path Start -> D -> E -> F -> End
Early Start of activity D = 1 (Since this is the first activity of the path)
Now there is a trick. Since the Activity E has two predecessor activities, which one will you
select? You will select the activity with the greater Early Finish date. Early Finish of activity
D is 5, and Early Finish of activity G is 3 (we will calculate it later).
Therefore, we will select the Early Finish of activity D to find the Early Start of activity E.
Early Start and Early Finish Dates for the path Start -> G -> H -> I -> End
Early Start of activity G = 1 (Since this is the first activity of the path)
Early Finish of activity G = 1 + 3 – 1 = 3
We have calculated Early Start and Early Finish dates of all activities. Now it is time to
calculate the Late Start and Late Finish dates.
Late Finish of the last activity in any path will be the same as the Last Finish of the last
activity on the critical path, because you cannot continue any activity once the project is
completed.
To calculate the Late Start and Late Finish, we use backward pass; i.e. we will start from the
last activity and move back towards the first activity.
Late Start and Late Finish Dates for the path Start -> A -> B -> C -> End
On a critical path, Early Start, and Early Finish dates will be the same as Late Start and Late
Finish dates.
Late Start and Late Finish Dates for the path Start -> D -> E -> F -> End
Late Finish of activity F = 31 (because you cannot allow any activity to cross the project
completion date)
If you look at the network diagram, you will notice that activity D has two successor
activities, B and E. So, which activity will you select?
You will select the activity with the earlier(least) Late Start date. Here, Late Start of activity
B is 11, and Late Start of activity E is 19.
Therefore, you will select activity B which has the earlier Late Start date.
Hence,
Late Start and Late Finish Dates for the path Start -> G -> H -> I -> End
Late Finish of activity I = 31 (because you cannot allow any activity to cross the project
completion date)
Late Start of activity I = 31 – 6 + 1 = 26
Late Finish of Activity G = 19 – 1= 18 (we will choose the late start of activity E, not activity
H, because the Late Start of activity E is earlier than the Late Start of activity H)
Late Start of activity G = 18 – 3 + 1
= 16
Total Float
Total float is the amount of time that an activity can be delayed without delaying the project
completion date. On a critical path, the total float is zero.
You can calculate the total float by subtracting the Early Start date of an activity from its Late
Start date (Late Start date – Early Start date), or Early Finish date from its Late Finish date
(Late Finish date – Early Finish date).
Free Float
Free float is the amount of time that an activity can be delayed without delaying the Early
Start of its successor activity.
You can calculate the free float by subtracting the Early Finish date of the activity from the
Early Start date of next activity (ES of next Activity – EF of current Activity).
Keep in mind that if two activities are converging to a single activity, one of these two
activities may have the free float.
Free float of Activity X = Early Start of next Activity – Early Finish of Activity X – 1
Free float of Activity X = Early Start of next Activity – Early Finish of Activity X
The difference between these two formulas is very easy to remember. If you start from day
“1,” you have to subtract “1” from the formula.
Example: 1
In the above network diagram, we have two paths:
Obviously, the path A->B->D is the critical path because it has the longest duration.
As we can see, the given diagram has only two paths, path A->B->D and path A->C->D.
The path A->B->D is a critical path; therefore it will not have a total float.
Since the path A->C->D is a non-critical path, it can have a total float.
You have two methods to calculate the total float. In the first method, you subtract the
duration of the non-critical path from the critical path.
In the second method, you find the total float for any activity by subtracting the Early Start
date from the Late Start date(LS – ES), or subtracting the Early Finish date from the Late
Finish date (LF – EF) on any activity.
Total float = duration of the critical path – duration of the non-critical path
= 20 – 12
=8
On the path A->C->D, Activity A and D lie on the critical path; therefore, they will not have
a total float. Only Activity C can have a total float.
As stated earlier, we can calculate the total float by using either finish dates or start dates.
Here, I will show you both ways to find it.
First we will go with the Late Finish and Early Finish dates:
= 15 – 7
=8
= 14 – 6
=8
So both durations are the same, which means both formulas will provide you with the same
result.
From the figure, you can see that only Activity C can have a free float, because other
activities are lying on the critical path.
= 16 – 7 – 1
=8
Example: 2
For the below given network diagram, identify which activities can have a free float and
calculate the free and total float for those activities, considering duration in days.
Free float = ES of next Activity – EF of current Activity – 1
In the above diagram, Activity G can have the free float because Activity D and G are
converging on one common activity.
Activity D will not have a free float because its successor activity E is starting on next day of
completing of activity D.
=6–3–1
=2
Total float for Activity G = Late Finish of Activity G – Early Finish of Activity G
= 18 – 3
= 15
You see here that the free float for Activity G is 2 days, and the total float is 15 days, both are
different.
Note: if in the exam you’re asked to calculate the float for any activity, you have to calculate
the total float. Total float is commonly referred to as a float.
Within exam papers this information is often communicated via a table, such as the one
below :
Estimated
Activity Order
Duration
We can now have sufficient information to draw the Network Diagram for this project, see
figure 13 below.
In calculating Earliest Start Times and Latest Finish Times, the same technique, as used in
our previous example, will be applied, however special consideration will need to be given
when we reach activity F due to its duel dependency on both D & E.
As before we will attach EST figures to the nodes first, working from the start of the project
through to its end, and then attach LFT to each node by working back through the network
from right to left, from the end of a project to its start. Figure 14, incorporates EST
information into our network diagram, with an explanation of the figures provided below.
Node 2 : If A takes 3 hours to complete, the earliest time we can commence the activity
which follows A, activity C, is 3 hours after the start of the project, as activity C is dependent
on A being completed.
Node 3 : If C takes 6 hours to complete, the earliest time we can commence the next activity
on this path, E, is 9 hours after the start of the project, as activity E is dependent on C being
completed.
Node 4 : If B takes 4 hours to complete, the earliest time we can commence the next activity
on this second path, D, is 4 hours after the start of the project, as activity D is dependent on B
being completed.
With regard to Node 5, which represents the Start Node of activity F, there are two paths
leading to this node, each of which provide a different value for the EST of F
If we follow the path A,C,E to F, we might only assume that F is dependent on E being
completed, and therefore :
However, if we follow the path B,D to F, we might assume that F is dependent on D being
completed, and therefore :
The question thus arises 'Which of these calculations is correct ?', as only one value can be
given for the EST of an activity. Your first instinct might well be to assume that 9 hours is the
Earliest Time calculated, thus 9 hours is the Earliest Time into the project that we can start F.
However, both our original table of activity order and duration, and node 5 in the Network
Diagram, tell us that both E and D must be complete, before activity F can start !. This
means that although D can be completed, at the earliest, 9 hours into the project, we must
wait for E to also be completed, and the earliest this can happen is 11 hours into the project.
Therefore the earliest we can properly start activity F is 11 hours into the project, hence the
EST of F is 11.
Helpful Tip 1
One rule to remember when calculating ESTs in a Network Diagram is that the EST of an
activity, which can be reached by more than one path, will always be the highest value
calculated from the possible paths to that activity.
Node 6 : If we accept the idea that once this project is complete we might consider
commencing additional work / projects, we can appreciate the usefulness of attaching an EST
value in the finish node for our last activity, activity F. The earliest we could commence any
further work, releasing resources tied up by our current project, following completion of
activity F and hence this project, would be 13 hours after the start of our project.
The LFT of the final node of a project is always equal to the EST contained in that same
node. Having established this fact, we can now work our way back through the network to
calculate all other LFTs, which are presented in fig 15, and explained below.
The only difficulty that arises is where a Node represents the start of more than one activity,
in such circumstances there are two or more subsequent activities to chose from in calculating
LFT. This occurs only once in our Network Diagram, at Node 1. You would be right to notice
the similarity of this situation to that previously dealt with in calculating the EST in Node 5.
Helpful Tip 2
When presented with two or more possible values for LFT, the correct value is always the
lowest.
Helpful Tip 3
The EST & LFT values in the Start and Finish Nodes of a project are always equal.
As already stated there are two possible paths through the network diagram we have been
working with, path A,C,E,F and path B,D,F. On the Critical Path there can be no delay in
completing or commencing tasks on the path without delaying the entire project. In a
Network Diagram this path is identified by the Nodes whose EST value equals their LFT
value. Thus activities A,C,E,F lie on the Critical Path of this project, and any delay in starting
for finishing these particular activities will automatically result in delaying the entire project.
• EF = ES + t
• LS = LF – t
• Slack = LF – EF
• = LS – ES
Example
A 3 -
B 3 A
C 4 -
D 1 C
E 3 B, D
F 2 A, B, D
G 2 C, F
H 4 G
I 1 C
J 3 E, G
K 5 F, H, I
precedence diagram notation
Unlike Arrow Diagramming that uses the arrows for activities and nodes for the start and end
of activities, Precedence Diagramming places the activity on the nodes and uses arrows
between the nodes to show the sequence between each activity. Precedence Diagramming is
also called "activity-on-the-node".
To illustrate the Precedence Diagramming method, the illustrations below show several
different schedule fragments. You may want to compare notes between the fragments shown
here for the Precedence Diagram, and their counterparts in the Arrow Diagramming method.
example 1
example 2
As described in the section on the Arrow Diagramming method the set of all activities and
their related sequence is called a "network".
Another item previously covered also bears repeating here. The definition of a project is
something with a specific beginning and end. Activities should be included in the network
that start and end the project. For most construction contracts these activities related to
contractual dates such as the Notice To Proceed and the calculated Contract Completion
Date.
Precedence Diagramming separates the definition of activities from their sequence. The
activities are of the nodes and the sequence is on the arrows. As a result, the use of dummy
logic arrows, required in the Arrow Diagram, is not required in the Precedence Diagram.
Let’s look at a few schedule fragments that caused difficulty for the Arrow Diagram and see
what they look like in the Precedence Diagram.
The first example shows how the Precedence Diagram represents a sequence of activities
where sets of activities share some, but not all, of the prior activities. In this example,
Activity C has a prior of A and Activity B has both A and B as priors.
Activity Prior Activity
A None
B None
C A
D A, B
The following sequence of activities also demonstrates the ease with which the Precedence
Method is able to represent activities that share different sets of priors. In the Arrow
Diagram, the following sequence of activities requires two dummy activities.
This final example is provided as a reference for you to check against the same activities as
shown in the Arrow Diagramming method.
To show the data on the forward pass, two additional elements are added to the precedence
diagram picture. The first element is the duration of each activity. The duration of the activity
should be shown in the center of an activity's node.
The second elements added to a Precedence Diagram for the forward pass are the "Early
Time" boxes. The Early Time boxes are placed within the activity node. There are no
standards for the placement of these Early Time boxes, therefore, a legend must be provided
with a Precedence Diagram to show where these Early Time boxes are placed. Early Time
boxes are typically placed in one of two locations. The first is on the left-hand side of the
activity node. The second is in the top left and right corners of the activity box. The CPM
tutor will use the convention shown in the diagram below.
These Early Time boxes refer to the Early Start and Early Finish of each activity. Unlike the
"event times" of the arrow diagram, which are attributes of nodes, the Early Times of the
Precedence Diagram are activity-specific.
The second component needed to perform the forward pass is the complete set of activity
durations. Activity durations and sequence should be determined prior to drawing the
precedence diagram and, therefore, should be available as you perform the forward pass.
The diagram below shows a simple three activity schedule with Early Time boxes ready to
start the forward pass.
To conduct the forward pass in the Precedence Diagram, start with the first activity in the
schedule and place the project start date in the Early Start Time. The Early Finish Time of
each activity is the Early Start Time plus the activity duration. The Early Finish Time of a
given activity becomes the Early Start Time of its following activities. The forward pass is
completed when every Early Start Time box on the network has a value.
The figure below begins with the Early Start Time of Activity 1 being set to the project start
time of one (1). The Early Finish Time of Activity 1 is equal to the Early Start Time of
Activity 1 plus the duration of Activity 1. Following this pattern we can see that the project
will require 19 working days to complete. Regardless of the technical differences between the
Arrow and Precedence Diagrams the results of schedule calculations will be the same
regardless of which method is chosen.
Most schedules are, of course, not as simple as that shown in the diagram above. There are,
however, clear rules about how to calculate Early Event Times in networks where there are
multiple activities starting and finishing at nodes within the schedule.
The figure below shows the completed forward pass calculation for the sample schedule.
1 Network Diagrams and Critical Path Analysis
All projects are made up of a number of separate tasks / activities, each of these tasks will
have a beginning and end, and this can be symbolically represented in a Network Diagram, as
shown in figure 1.
As you can see, the beginning and end of the task are represented by circles, called Nodes,
whilst the activity itself is represented by a line joining the Nodes. Notice that this line is
given direction with the use of an Arrow, this enables us to identify which is the Start Node
and which is the End Node, of an activity.
So far we have presented a project which requires only one activity to be completed, in
reality a project may well require hundreds of interdependent activities to be completed.
There will also be an order in which the tasks must be completed, with some tasks being
dependent on the completion of others before they can commence.
Consider the construction of a Garage, the foundations for the garage must be laid before the
walls can be built, and the walls must be in place before the Roof can be attached !.
Accepting that this is an oversimplification of the activities actually required the build a
garage, we shall use this simplified project to demonstrate the principles of Network Diagram
construction.
The interdependence of these activities is represented by the duel role played by Nodes 2 and
3.
As previously stated, activity B, constructing the walls, can not commence until activity A,
laying the foundations, is complete.
To portray this in the network diagram, Node 2, represents the completion of activity A ,and
the commencement of B.
The same dependency is established for activities B and C, with Node 3 representing the end
of activity B, and the start of activity C.
Continuing with this example, in order to perform Critical Path Analysis of the project,
further information needs to added to our Network Diagram, firstly we need to establish the
estimated duration of each of the 3 activities.
We can now add this information to our Network Diagram, as shown in figure 3.
Although we have stated the time duration in Days, in theory any suitable Unit of Time can
be used. What must be ensured is that the same unit of time is used to express the duration of
all the activities, in a Network Diagram.
You will have noticed that the Nodes have been divided into two segments, one has been
used to identify the Node by number, the second is now divided into two further segments, as
shown in figure 4, to enable us to record two key items of information :
The Earliest Start Time (EST) of an activity, refers, to the earliest point in time, within the
project, that an activity can commence.
Whilst, the Latest Finish Time (LFT) of an activity, refers to the latest point in time, within
the project, that an activity can be completed, without causing delay to the entire project.
Within each Node EST and LFT information are recorded. However the activity each refers
to is different.
The EST, recorded in the top right segment of the node, refers to the Earliest Start Time of
the activity / or activities for which it represents the Start Node.
Whilst the LFT, recorded in the bottom right segment of the node, indicates the Latest Finish
Time of the activity / or activities for which it represents the Finish Node.
Thus in figure 4, the EST recorded in Node 2, is the EST for activity B, whilst the LFT
recorded in Node 2, is the LFT for activity A.
Care must be taken when creating or interpreting Network Diagrams, that there is no
confusion over which activity is being referred to by the EST and LFT values in a particular
Node.
In the next section of this article we shall look at exactly how Earliest Start Times and Latest
Finish Times are calculated, using the above garage construction example.
In order to identify the Critical Path of a project we must calculate the Earliest Start Time and
Latest Finish Time for each activity in our Network Diagram.
It is normal practice to attach EST figures to the nodes first, working from the start of the
project through to its end, and then attach LFT to each node by working back through the
network from right to left, from the end of a project to its start. Figure 5, incorporates EST
information into our network diagram for the construction of a garage, with an explanation of
the figures provided below.
Node 1 : Within a network diagram the timing of the duration of the project logically starts at
the commencement of the first activity / activities, thus the Earliest Start time for first
activity, A, is 0. (EST for A = 0).
Node 2 : If A then takes 3 days to complete, the earliest time we can commence the next
activity, B, is 3 days after the start of the project, as activity B is dependent on A being
completed. Thus the EST for B is given by the equation below.
Node 3 : Following the same logic, the earliest time we can commence activity C is 7 days
after the start of the project, allowing 3 days to complete A and a further 4 days to finish B.
Node 4 : If we accept the idea that once this project is complete we might consider
commencing additional work / projects, we can appreciate the usefulness of attaching an EST
value in the finish node for our last activity, activity C. The earliest we could commence any
further work, releasing resources tied up by our current project, following completion of
activity C and hence this project, would be 8 days after the start of our project. The
calculation of this is shown in fig 8.
The whole purpose of Critical Path Analysis is to enable us to plan for the most economic
and efficient use of resources, ensuring that a project is completed in the minimum time
possible. Given this purpose it would be absurd for us to accept any Latest Finish Time for
the entire project, other than that given to us by the EST of the final node of the project.
Having established that the projects final EST is 8, in other words the earliest time we can
finish the project in is 8 days, we would be crazy to allow the project to be finished at the
latest in 10 days. We would be accepting the potential of overrunning the optimum time
duration of the project by 2 days! This would undermine everything CPA seeks to achieve.
Thus the LFT of the final node of a project is always equal to the EST contained in that same
node. Having established this fact, we can now work our way back through the network to
calculate all other LFTs. As previously presented figure 9, incorporates LFT information into
our network diagram for the construction of a garage, with an explanation of the figures
provided below.
Node 3 : If the latest we can finish activity C is 8 days, given that C will take 1 day, the latest
we can finish B is 7 days, allowing for the fact that C can not commence until B is
completed. Thus the LFT for B is given by the equation :
Node 1 : In the start node for the project the value of the latest finish node is always the same
value as that nodes EST, i.e. Zero.
You will have already noted that our EST and LFT values are exactly the same in each node !
This is because there is only one 'path' through the network diagram, and all the activities on
this path are critical, in that there can be no delay in completing, or commencing tasks on the
path without delaying the entire project. We call this the Critical Path. In order to provide
insight into the basic principles of network analysis our example was a simple one, in that
only one path was presented through the network diagram - (a,b,c,d). In reality network
diagrams normally present a number of alternative paths which can be taken to get from the
start of a project to its end, consider the network in figure 12.
All projects require resources, these can be in the form of labour, equipment, capital, time,
materials ... and no project manager has a limitless supply of these resources. Thus it is
critical, to the success of a project, that these limited resources are used efficiently. Critical
Path Analysis is not only used to establish which activities lie on the Critical Path, i.e. which
activities can not be delayed without delaying completion of the entire project. Critical Path
Analysis also enables us to identify those activities which can be delayed, and by how long
they maybe delayed without delaying completion of the entire project, commonly referred to
as 'Float'. Such knowledge is valuable when things go wrong within a project, as it can enable
a project manager to divert resources such as manpower and equipment, from a non-critical
task, to one which is critical and threatens to delay the entire project.
So far in this article we have concentrated on the use of Network Diagrams, to identify the
Critical Path. In this section we shall consider the idea of 'Float' and the calculation of 'Total
Float' and 'Free Float'.
Float
If an activity could be completed in 3 hours, but the project plan currently allows 8 hours for
its completion, we can identify that there is 5 hours of Float. We initially consider Float in
terms of time, in reality its value to a project can be translated into any commodity,
manpower for example - in terms of man hours, or capital - in terms of hourly rates.
In analysing a project we can identify two types of Float : Total Float and Free Float.
Total Float
Total Float as the name suggests, measures the Total amount of Float that has been available
up to the start of an activity in the project. It represents a running total of float across all
activities on the path that has lead to this activity. The amount of Total Float theoretically
available up to the beginning of a specific activity can be calculated by the following
equation.
Lets consider the previous worked example, presented again here, in figure 17.
So, if in our example completion of activity B had been delayed by 1 hour, this would reduce
the float available at the start of activity D to 1 hour.
We can see from this, that using float on one activity may well have an effect on the next
activities ability to use float. Some activities however do allow us to use an amount of float
for 'free', so to speak, in that a certain level of delay in completing the activity will have a no
knock-on effect on the next activities ability to use float and be delayed, we call this the Free
Float of an activity.
Free Float
As indicated above, Free Float measures the amount of float that can be used by an activity
'freely' without interfering with the next activities ability to use float. The following equation
is used to calculate the Free Float of an activity.
If we return to our worked example, we already calculated that we have 2 hours Total Float
available up to activity D, however how much if any of this time can be used 'freely' on
activity D without interfering with the next activity, F.
Figure 20 : Calculation of Free Float for activity D
So activity D has 2 hours of Free Float, by which this activity can be delayed without
affecting the next activity, F, in its ability to use float.
Why is this ?
Well if we look at activity F, we will remember that this activity can not commence until
both D and E are complete, see figure 21. From previous analysis, we have established that
although D can be completed 9 hours into the project, E will not be complete for another 2
hours, 11 hours into the project. Thus, D can be delayed 'freely' by 2 hours, and still be
completed in time with E to enable the next activity F to commence at its Earliest Start Time.
Project Breakdown
A 3 0 3 0* 0
B 4 0 6 2 0
C 6 3 9 0* 0
D 5 4 11 2 2
E 2 9 11 0* 0
F 2 11 13 0* 0
Note that all of the Critical Path Activities A,C,E and F have Total Float values of Zero. This
is always the case, and can be used to confirm the Critical Path from the table alone. Also
note, that in our example only one activity, activity D, has any Free Float.
There is one last technique in Network Diagram construction, that we need to consider,
namely the 'Dummy Activity', and in the last section of this article we shall explain its use.
Dummy Activities are used to represent particularly complex relationships between activities.
Consider the following example.
Activity A and B must be completed before activity C can commence. In addition, activity D
is dependent on A being completed. An initial attempt at representing these activities might
produce the network diagram in figure 22.
However, this shows that activity D is dependent on not only A but also B being completed
before it can commence.
The only way these activities can be represented correctly is through the use of a Dummy
Activity, as shown in figure 23.
The Dummy Activity is identified by a dashed line, this activity does not actually exist in the
project itself, hence dummy activity, but is used to allow us to correctly represent the
relationship of the activities in a Network Diagram.
As the Dummy Activity does not really exist, it has no label or time duration. What it does
have is a direction, indicated by the arrow, showing us in which direction the dependency
flows. In this case, the arrow tells us that C is dependent on A being completed, as it leads
from the End Node of activity A to the Start Node of activity C.
Whilst the Dummy Activity is a device that exists only within Network Diagrams, to allow us
to portray all possible relationships between activities. They can however form part of the
Critical Path.
In the above example, we could discover through analysis that the Critical Activities in this
project are A and C, in our diagram this Path can be follow if we use the Dummy Activity
line, although the dummy activity is not listed when we state that the Critical Path is A,C.
The first step in the backward pass is to copy the Early Finish Time of the last activity in the
schedule to the Late Finish Time of the last activity in the schedule. If you have a project
completion date, then use the overall project completion date for the last activity’s Late
Finish Time.
Once the last activity’s Late Finish Time has been set, then you can calculate the activity’s
Late Start Time by subtracting the activity duration from the Late Finish Date. As you
proceed through the schedule the Late Finish Time of a preceding activity is the earliest of
the prior Late Start Times.
In this first example schedule, each activity has only a single following activity, therefore, the
schedule calculation is quite simple. In the second example there is an activity with multiple
priors. Notice that the earliest of the following Late Start Times are set as the Late Finish
Time of the prior activity.
multiple followers
Now let’s look at example that is a bit more complicated. In this example there are five
activities who do not share the same set of prior activities. Special care must be taken to
understand the purpose of the backward pass when such a situation is encountered.
Remember that the purpose of the backward pass is to determine the latest that an activity can
finish (or start) without impacting the overall project. When there is a question about which
possible late finish time for a given activity should be selected, the earliest time, is therefore,
the choice.
As before start the backward pass by finding the project end time and setting that late finish
time of all ending activities as the late finish time of all latest activities. In a real schedule, we
should have a single “end job” activity, but in this case we will find the latest finish time and
copy it over to the late finish times of the ending activities as shown in the diagram below.
Now we can calculate the late start times of each of these three ending activities. The
resulting arithmetic is shown in the figure below.
Given that there are multiple possible late finish times for Activities A and B, we have to
decide which one to select. According to our rule we select the earliest of the incoming Late
Finish Times. This is shown in the figure below.
Finally we can complete the backward pass calculation for Activity A and Activity B as
shown in the following figure.
total float notation & calculation
The third part of schedule calculation using the Critical Path Method is the calculation of the
Total [Link] is the amount of time that the activity’s path may be delayed without
delaying the overall project. The diagram below shows where float is placed on the
precedence diagram.
To calculate the total float for a Precedence Diagram, subtract the Early Finish Time from the
Late Finish Time.
Once this is accomplished for every activity, then the float calculation portion of the schedule
is complete. The diagram below show the location for the total float and provide an example
of a small schedule with completed total float calculation.
an example diagram that includes total float for a slightly more complex sequence of
activities is shown below. You may notice that the path of activities with the least float (i.e.
zero float) is Activity B and Activity D. These two activities are on the critical path for this
small project.
Typically the Late Finish Time for the last activity will be set to the project completion date.
If the float is positive then the critical path may be delayed without running the project past
the completion date. If the float is equal to zero, then any delay to the critical path will result
in a delay to the project. Negative float identifies a critical path that is behind schedule.
An example use of the Start-to-Start sequence is that of laying underground pipe. In such a
project a machine digs a trench in which the pipe is placed. Once the pipe is placed, then the
same machine may be used to backfill the trench. An effective project manager may want to
schedule this project such that the pipe installation can proceed before the whole trench has
been cut. Similarly, the backfill could begin before the entire length of pipe has been
installed. To show how the start of one activity can affect the start of another, use the Start-
to-Start sequence.
Notice that the logic sequence between activities using the Start-to-Start sequence may
include a time component. For example, we cannot start the pipe installation at exactly the
same as the start of the trenching operation. The first activity must get “ahead” a few days,
before the piping activity can begin. Adding a time duration to the sequence between
activities is a major innovation associated with the Precedence Diagram.
The diagram below shows how to draw the Start-to-Start sequence. To calculate the Early
Start Time of an activity with a prior Start-to-Start sequence, identify the possible incoming
value of an activity’s Early Start Time as the Early Start Time of the preceding activity plus
the “lead” duration identified with the decription of the sequence between activities.
Regardless of the type of incoming logic, the sequential (i.e. Finish-to-Start) or the parallel
(i.e. Start-to-Start), the value of an activities Early Start Time is the latest of all incoming
preceding times. These dates may be earlier activities’ Early Finish Times as well as the
Start-to-Start plus lead durations.
In the example schedule fragments below, notice how the Early Start Time of the following
activity is set based on the preceding Start-to-Start sequence. As a result the critical path
begins with the start of Activity A.
finish to finish logic
In the Precedence Diagram we have seen that the sequence between activities is explicitly
represented. The standard sequence where one activity precedes another is called Finish-to-
Start. Finish-to-Start sequence has an impact on the schedule calculation during both the
forward and backward passes. The sequence where one activity starts some time after the
start of the prior activity is called Start-to-Start. The Start-to-Start sequence has it’s impact on
the forward pass calculations.
In the backward pass there is another type of sequence that is complementary to the Start-to-
Start sequence. This new sequence is called the “Finish-to-Finish” sequence. Finish-to-Finish
can be thought of as linking the completion of two activities such that the completion of the
prior activity takes place a few days before the completion of the second activity.
Consider a three activity project where a trench is cut, a pipe is laid, and the trench is back-
filled. We have shown how these activities could be connected using a Start-to-Start
sequence. They should also be connected through the Finish-to- Finish sequence such
completion of the pipe installation cannot occur until some time after the completion of the
trenching activity. Similarly, the pipe must all be installed prior to the completion of the
backfill activity. The time delay between the completion of the prior activity and the
completion of the following activity associated with Finish-to-Finish sequence is called the
“lag.”
The example schedule below shows the calculation of Finish-to-Finish sequence with
multiple prior activities. As noted previously, when conducting the backward pass the latest
of the incoming Late Start Times is used as the Late Finish Time of the prior activity.
The figure below shows the impact of the Finish-to-Finish logic on the calculation of the two
prior activities, Activity C and Activity E. In each case the Late Finish Time of the activity is
the Late Finish Time of the prior activity, less the lag duration.
The figure below completes the remainder of the schedule calculations and includes the total
float for each activity.
checklist for precedence diagrams
1. provide a legend that shows location of:
a. activity name
b. activity duration
c. early event time
d. late event time
e. activity total float
2. neatly draw each activity arrow from left to right
3. there should be one single starting activity
4. there should be a single ending activity
5. include nodes for project milestones
6. try to horizontally align activities on the same path
7. redraw the diagram, as needed, to eliminate crossed logic arrows
8. after calculating the network clearly identify the critical path
9. use complementary finish-to-finish logic for each start-to-start sequence
arrow diagramming
Arrow Diagramming, also called the Arrow Diagram Method is one of the two versions of
the Critical Path Method. Arrow Diagramming was originally called “activity on the arrow.”
Arrow Diagramming provides model of project that combines the representation of sequence
and duration. The Arrow Diagramming is useful because there is a clear link between the
work to be accomplished and the diagram that represents that work. In addition, arrows are a
common metaphor for time lines. Thus, Arrow Diagramming is, initially, very intuitive.
The Arrow Diagram was the project planning method developed after the Bar Chart. Arrow
Diagramming was first used in the 1950's on mainframe computing systems. One of the terms
introduced as part of the Arrow Diagram was the term "activity."
The two elements of Arrow Diagramming are arrows and nodes. One arrow is created for
each activity to be accomplished. The tail of the arrow is the start of the activity. The head of
the arrow is the end of the activity. While there is no requirement to do so, the length of the
arrow is often scaled to be proportional to the duration of the activity.
At the tail, or start, and head, or end, of the activity arrows are nodes. Nodes are used to
graphically show where activities end and begin in sequence. The starting node for a given
activity is referred to as the activity’s “i-node.” The ending node for a given activity is called
the activity’s “j-node.” This nomenclature was used since the mathematics behind the
development of the Arrow Diagrams requires the use of the summation. Typically the terms
of a summation include counting all the “I’s” and “j’s.”
Nodes are used to illustrate when activities precede or follow other activities. Nodes are
placed at the start and end of each activity arrow. Since projects are defined by a specific start
and end, there should be a single starting “i-node” and a single ending “j-node” for each
project. The set of all activities, starting from the first activities’ i-node and ending with the
last activities’ j-node is called a “network.” An Arrow Diagram for an entire project may also
be called a Network Diagram. Despite advances in network theory and practice there are
examples of large owners who continue to require “Network Analysis Systems” for their
project schedules.
To illustrate how Arrow Diagrams are constructed, the diagram below provides several
schedule fragments. First, the activities, durations, and sequence are listed. Next, the Arrow
Diagram corresponding to that schedule fragment is displayed.
example one
example three
Arrow Diagramming is intuitive because arrows are a common metaphor for timelines. This
combination of sequence and duration, however, causes unintended consequences for the
scheduler. The reader should consider the following cases that are fully described later in the
detailed description of the Arrow Diagramming Method.
precedence diagramming
Precedence Diagramming, or the Precedence Diagram Method, alleviates the difficulties of
combining the representation of sequence and duration. Precedence Diagramming was
originally referred to as “activity on node.”
In Precedence Diagramming the activities are identified by “nodes” or blocks. The sequence
between activities is shown by arrows. The example below shows the schedule fragments
previously shown for Arrow Diagrams.
example one
example two
A precedence diagram without any network calculations, such as that shown in the figures
above, may be called "layout" diagrams. The layout diagram is a simple drawing that allows
you to quickly sketch the sequence of activities in a network. Once the network has been
sketched, then you can identify and correct lines that cross over and aesthetically organize the
position of each.
While scheduling software is able to produce diagrams showing the activities and sequence,
projects with complex sequence will require significant “tinkering” with the ordering of
activities to generate a computer-generated printout that clearly communicates the sequence
of the project.
exercises
Exercises are self-motivated activities to keep fit. Here at the CPM tutor, exercises are
provided to assist you to practice what you have learned in previous sections of the tutorial.
The exercises in Chapter 7 are provided to assist you to assess your understanding of
sequence and duration as described by arrow diagrams, precedence diagrams, and fenced-bar
charts.
Using the set of tasks, their sequence and duration, shown below, build an arrow diagram, a
precedence diagram, and a fenced-bar chart.
exercises
Exercises are self-motivated activities to keep fit. Here at the CPM tutor, exercises are
provided to assist you to practice what you have learned in previous sections of the tutorial.
The exercises in Chapter 7 are provided to assist you to assess your understanding of
sequence and duration as described by arrow diagrams, precedence diagrams, and fenced-bar
charts.
exercise 3 - roadwork
Using the set of tasks, their sequence and duration, shown below, build an arrow diagram, a
precedence diagram, and a fenced-bar chart.
Extra Credit
How would you modify this schedule if you were doing the same work for 15 miles?
exercises
Exercises are self-motivated activities to keep fit. Here at the CPM tutor, exercises are
provided to assist you to practice what you have learned in previous sections of the tutorial.
The exercises in Chapter 7 are provided to assist you to assess your understanding of
sequence and duration as described by arrow diagrams, precedence diagrams, and fenced-bar
charts.
Using the set of tasks, their sequence and duration, shown below, build an arrow diagram, a
precedence diagram, and a fenced-bar chart.
Following
Duration
ID Activity
(work hours)
Activity
1 Make Door 2, 3 4
2 Install Lock on Door 6 1
3 Install Hinges on Door 6 1
4 Assemble Door Frame 5, 6 5
5 Install Doorbell on Frame 7 2
6 Hang Door 7 3
7 Clean-up Site none 2
8 Deliver Door Template 1, 4 2
9 Deliver Lock Hardware 2, 4 3
10 Deliver Hinge Hardware 3, 4 4
Extra Credit
Assume that the workers on an 8-hour day. How many days will the project require?
What difference would it make if there were only one worker, only two workers. Show the
answer by modifing the schedule logic as needed?
exercises
Exercises are self-motivated activities to keep fit. Here at the CPM tutor, exercises are
provided to assist you to practice what you have learned in previous sections of the tutorial.
The exercises in Chapter 7 are provided to assist you to assess your understanding of
sequence and duration as described by arrow diagrams, precedence diagrams, and fenced-bar
charts.
Using the set of tasks, their sequence and duration, shown below, build an arrow diagram, a
precedence diagram, and a fenced-bar chart.
Following
Duration
ID Activity
(work days)
Activity
1 Order and Deliver Rebar 8 25
2 Order and Deliver Structural Steel 11, 14 20
3 Order and Deliver Windows 13 55
4 Order and Deliver Equipment 14 70
5 Deliver Site Trailer 6 5
6 Clear and Grade Site 7 5
7 Excavate Footings 8 10
8 Place Rebar in Footings 9 5
9 Place Concrete in Footings 10, 11 10
10 Cast and Cure Slab on Grade 13, 14 20
11 Erect Walls 12, 13 25
12 Erect Roof 14 10
13 Install WIndows 14 5
14 Install Equipment 15 10
15 Final Inspection none 5
Extra Credit
Assume that the you are building 3 warehouses. How many days will the project require?
If you assumed that all 3 buildings were close to each other, what difference would it make if
the buildings were several miles apart?
Would there be a difference in construction method if you built the project in the summer or
winter?
Conceptually, float represents the amount of time an activity may be delayed without
impacting the overall completion of a project. For example, if two tasks were to be
accomplished simultaneously and one task took 10 days and the other took 20 days, it should
be obvious that: (1) the entire project will take 20 days to complete, and (2) that you do not
have to start the 10 day task right away since the overall project takes 20 days. An activity
may not need to start on its early event time is the idea behind float
total float calculation
In this page we describe the third part of arrow diagram calculations, the "float" calculations.
The objective of the Forward Pass and Backward Pass is to allow the float to be calculated. In
this tutorial we will be discussing only the Total Float. Sometimes you may see the term
“slack” used in the place of float.
Total Float is the time an activity may be delayed without impacting the overall project
completion time. Let’s look at a Fenced Bar Chart example, below, to see the graphic
presentation of Total Float. In the figure below the earliest the overall project can finish is the
middle of June. You can see this by looking at Activity 4. Notice that Activity 4 depends on
Activity 2.
A delay of to Activity 2 as the result of also delaying Activity 4. A delay to either Activity
delays the planned completion for the whole project.
When a delay to an activity impacts the time when the overall project is complete, this set of
activities is identified as the “critical path.” A more formal definition of the critical path will
be provided a bit later.
Here's another Fenced Bar Chart example. You may recall this example from the Fenced Bar
Chart page. Notice that the activties are listed in order 1, 2, 4, 5, 2 to ensure that the graphical
layout of the fences is clear. In this example Activity 2 and Activity 4 are again on the critical
path.
One final example using Fenced Bar Charts. Look at Activity 5 in the figure below. Activity
5 is shown to finish the week of 22-Jun-2008. Since the overall project will not complete
until two weeks later, you can see that we can delay the start, or extend the duration of
Activity 5 up to an additional two weeks without delaying the overall project.
To demonstrate that Total Float is a property of a path of activities, and not just a single
activity consider Activity 4 and Activity 5. A total delay of two weeks could be experienced
by any combination of delays in these two activities. If, however, the combined delays
exceed two weeks, then the entire project will be delayed and the critical path would move
from Activity 1, Activity 2, and Activity 3 to Activity 1, Activity 4, and Activity 5.
The amount of time you can delay an activity (either through late start or increased actual
duration) without impacting the overall completion of the project is the total float
Okay, now back to the arrow diagram. In the arrow diagram the total float for each activity is
the Late Event Time minus sum of the Early Event Time plus the Activity's duration. What
we are looking for is the difference between the earliest the activity can finish and the latest
the activity can finish.
Note that dummy activities also have float. Since the duration, by definition, of dummy
activities is zero (0), you will be able to use the formula above to calculate the total float on
the dummy activities.
Use the Arrow Diagram total float formula to calculate the total float for each of the activities
in the network below.
One question for you to consider is why won't total float for an activity on an arrow diagram
simply be the Late Event Time minus the Early Even Time at the end of an activity?
A more formal definition of a critical path is that set of sharing the following characteristics
(1) all activities in the critical path sharing the minimum float in the schedule and (2) the
activities share a logical sequence from the start to the end of the project.
There are several practical issues that should also be noted regarding the critical path. First,
there may be multiple critical paths in large networks. Second, if there are milstone dates
placed in the middle of the network the activities in the critical path may not share the same
minimum total float.