How to Determine the Critical Path
After you have drawn a network diagram and understand the flow the work needs to follow, you can begin to compute the duration of the project. How long will it take to complete all of the work? To answer this question, you will need to add the duration of the activities along each path of the network. This will also allow you to identify the critical path.
The critical path:
- Is the longest path through the network
- Is the shortest project length
- No event on the path has slack time
- Slippage on any event on the path will cause slippage for the entire project
By computing the critical path for the project, you will also compute the desired duration. Using the network diagram and the estimates provided, you can determine when each activity can begin and finish.
Computing the critical path:
- Conduct a forward pass through the network, from the first activity to the last, adding the durations of activities to determine the earliest each activity can start and finish.
- Conduct a backward pass through the network, from the last activity to the first activity, subtracting activity durations to determine the latest time each activity can start and finish.
- Use the calculated start and finish times to determine whether an activity has slack.
- Identify the critical path comprised of those activities that have no slack.
Consider the following network diagram.
On each node representing an activity, the following attributes have been identified:
|ES –||Early start. The earliest time an activity can start.|
|EF –||Early finish. The earliest time an activity can finish.|
|LF –||Late finish. The latest time an activity can finish without impacting the project schedule.|
|LS –||Late start. The latest time an activity can start without impacting the project schedule.|
|DU –||Duration. The number of work periods (days) required for completion of an activity.|
The Forward Pass
To calculate the ES and EF times of each activity:
- Start with those tasks that have no defined precedents.
- These activities can start immediately.
- ES, the earliest they can start is time period 0.
- In the network diagram above, Activity A is the first activity, and the only activity with no precedents.
- As indicated, the ES is set to 0.
- To calculate the EF time, add the estimated duration for the activity.
- ES + DU = EF, (0 + 10 = 10.)
Activity B can start as soon as Activity A is complete, so the ES for Activity B is equal to the EF of Activity A. With the ES of 10, adding the duration of 15 results in the EF of 25.
Continuing through the path:
- Activities C and F can both begin when Activity B is complete.
- Each has an ES of 25.
- Add the duration of each to arrive at the EF times of 29 and 41 respectively.
- The process continues as we work through the network.
Note that there is an 8-day lag between activities F and G.
- Activity G must wait 8 days before starting.
- To calculate the ES of Activity G, the lag is added to the EF of activity F.
Also note the impact on the ES for an activity with multiple precedents.
- Activity E has an EF of 50.
- Activity G has an EF of 61.
- Activities E and G must both be complete before Activity H can start.
- Thus, the earliest Activity H can start is time 61 – the EF for Activity G.
- This results in an ES of 61 for Activity E.
Completing the computations shows that the earliest we can complete the project activities is 66 days based on the current network diagram.
The Backward Pass
The LS will identify the latest time the activity can start without causing a delay in completing the entire project. The LF indicates the latest the activity can finish without delaying the project schedule. To calculate the LF and LS times:
- Work backward through the network.
- Subtract the duration from the LF to calculate LS.
- The LF of predecessor activities is the LS of the successor activity.
Since we have already identified that we can complete the project in 66 days, this becomes our target time for completing the project. Beginning with the last activity, Activity H, we set the LF equal to the activity's EF. This makes sense because, if Activity H finishes any later than day 66, the project will obviously be delayed.
Subtracting the duration of the activity from the LF results in the LS (66 - 5 = 61.) Moving from right to left through the network, if the latest Activity H can start is time 61.
- The preceding activities, E and G, must finish by that time.
- The LF for each of these activities is equal to the LS of the successor activity, 61.
- The LS = LF - DU.
- LS for Activity E = 61 - 13 = 48.
- LS for Activity G = 61 - 12 = 49.
To complete the calculations for the remaining activities:
- Continue working from right to left through the diagram.
- Note the impact of the lag between Activities G and F.
- Also note that since Activity B is a predecessor to both activities C and F, the LF for Activity B is the earlier of the LS times of the successor activities.
- Activity B must finish by day 25, or Activity F, and thus the entire project, will be delayed.
Slack, also known as float or total float:
- Represents the amount of time an activity can slip, or be delayed, without impacting the overall project schedule.
- Can be calculated as LS - ES.
- Can also be calculated as LF - EF.
In the network diagram with times shown above, slack is represented as TF. Only activities C, D, and E have slack. Any one of these activities can be delayed by up to 11 days without delaying the project past 66 days. Alternatively, all three activities can be delayed, so long as the total number of days does not exceed 11, and the project will still achieve the 66 day schedule.
The Critical Path
As indicated above, any activity in the network with slack equal to 0 is considered to be on the critical path. In the network diagram with times shown above, activities A, B, F, G, and H have TF = 0. Should any of the activities be delayed by even one day, the project schedule will be delayed.
Identifying the critical path:
- Identifies those activities that must be managed closely to ensure the project completes on time
- Allows for more accurate tracking of the overall project schedule
- Identifies those activities where flexibility exists should changes need to be made
- Provides information for the project team to make decisions on resource allocations
- Enables the project team to easily understand the impacts of proposed changes on the project schedule