Critical Path Method (CPM) and Program Evaluation and Review Technique (PERT) are the two most important network-based project planning and control tools. Both were developed in 1957–58 and remain fundamental to construction project management. For civil engineers and project managers, mastery of these techniques is essential for GATE, ESE, and professional practice.
CPM vs PERT — Key Differences
| Aspect | CPM | PERT |
|---|---|---|
| Developed by | DuPont / Remington Rand (1957) | US Navy (Polaris missile, 1958) |
| Activity duration | Deterministic (single estimate) | Probabilistic (3 time estimates) |
| Best for | Repetitive construction (roads, buildings) | R&D, defense, non-repetitive projects |
| Crashing | Yes (cost-time trade-off) | Not directly |
| Probability | No | Yes (probability of completion on time) |
Network Diagrams
Activity-on-Arrow (AOA / Arrow Diagram)
- Arrows represent activities; circles (nodes) represent events
- Dummy activities (dashed arrows) show dependencies without consuming time
- Each activity uniquely identified by i-j notation (tail node → head node)
Activity-on-Node (AON / Precedence Diagram Method)
- Nodes represent activities; arrows show precedence relationships
- More intuitive; used in Microsoft Project, Primavera
- Allows FS, SS, FF, SF lag relationships (not possible in AOA)
CPM Calculations — Forward and Backward Pass
Worked Example
Project with 5 activities:
| Activity | Duration (days) | Predecessors |
|---|---|---|
| A | 4 | — |
| B | 6 | — |
| C | 3 | A |
| D | 5 | B |
| E | 2 | C, D |
Forward Pass (Early Times)
EST (Early Start Time) = maximum of (EFT of all predecessors)
EFT (Early Finish Time) = EST + Duration
- A: EST=0, EFT=4
- B: EST=0, EFT=6
- C: EST=4 (after A), EFT=7
- D: EST=6 (after B), EFT=11
- E: EST=max(7,11)=11, EFT=13
Project Duration = 13 days
Backward Pass (Late Times)
LFT (Late Finish Time) = minimum of (LST of all successors)
LST (Late Start Time) = LFT − Duration
Starting from project end (LFT of last activity = project duration = 13):
- E: LFT=13, LST=11
- D: LFT=11 (LST of E), LST=6
- C: LFT=11 (LST of E), LST=8
- B: LFT=6 (LST of D), LST=0
- A: LFT=8 (LST of C), LST=4
Float (Slack)
Total Float (TF)
TF = LST − EST = LFT − EFT = Maximum delay allowed without delaying project
| Activity | EST | EFT | LST | LFT | TF | Critical? |
|---|---|---|---|---|---|---|
| A | 0 | 4 | 4 | 8 | 4 | No |
| B | 0 | 6 | 0 | 6 | 0 | YES |
| C | 4 | 7 | 8 | 11 | 4 | No |
| D | 6 | 11 | 6 | 11 | 0 | YES |
| E | 11 | 13 | 11 | 13 | 0 | YES |
Critical Path: B → D → E (13 days)
Free Float (FF)
FF = EST (successor) − EFT (current activity)
Delay allowed without delaying any successor's early start.
Activity A: FF = EST(C) − EFT(A) = 4 − 4 = 0; Activity C: FF = EST(E) − EFT(C) = 11 − 7 = 4
Independent Float (IF)
IF = max(0, EST(successor) − LFT(predecessor) − duration)
Delay allowed even if all predecessors are as late as possible and all successors as early as possible. Always ≤ FF ≤ TF.
PERT Time Estimates
For each activity, three time estimates:
- to (optimistic): Minimum time if everything goes right
- tm (most likely): Mode — most probable duration
- tp (pessimistic): Maximum time under worst conditions
Expected time: te = (to + 4tm + tp) / 6
Variance: σ² = [(tp − to) / 6]²
Project Completion Probability
Variance of project = Σ variances of critical activities
Standard deviation σp = √(Σσ²)
Z = (T_target − T_expected) / σp → P(completion by T_target) from Z-table
Project Crashing
Crashing reduces activity duration by adding resources (overtime, extra crew) at increased cost. Optimal crashing maximises time savings per unit cost increase.
Crash cost slope = (CC − NC) / (ND − CD)
where CC = crash cost, NC = normal cost, ND = normal duration, CD = crash duration
Procedure:
- Calculate crash cost slope for each activity on critical path
- Crash activity with lowest slope first (cheapest per day saved)
- After crashing, check if critical path changes; continue crashing new critical path
- Stop when target duration reached or all paths become critical (further crashing has no benefit)
Resource Levelling
Resource levelling aims to smooth resource requirements over project duration without extending schedule:
- Shift non-critical activities within their float to reduce peak resource demand
- Goal: Avoid hiring/firing workers, uniform equipment utilisation
- Resource allocation histogram: Plot daily resource demand vs time; aim for uniform or bell-shaped profile
Bar Chart (Gantt Chart) vs Network
| Feature | Bar Chart | CPM Network |
|---|---|---|
| Dependencies | Not clearly shown | Explicitly modelled |
| Critical path | Not identified | Identified |
| Float | Not shown | Calculated for each activity |
| Ease of understanding | High (visual) | Lower (requires training) |
| Updating | Difficult for large projects | Easy (software) |
| Best for | Simple projects, communication | Complex projects, control |
Software Tools for Construction Scheduling
- Primavera P6: Industry standard for large infrastructure projects (NHDP, metro, power plants)
- MS Project: Widely used for medium-scale construction
- Asta Powerproject: Common in UK construction projects
- AutoDesk Construction Cloud: BIM-integrated scheduling
Frequently Asked Questions
Can a project have more than one critical path?
Yes. When two or more paths through the network have equal total float (typically zero), all of them are critical. In such projects, the schedule has zero flexibility — any delay on either path delays the project. Multiple critical paths increase project risk and require extra monitoring.
What does negative float mean in a project schedule?
Negative float means activities are already behind schedule — the project cannot be completed by the target date even if all remaining work proceeds on schedule. It indicates a schedule overrun; recovery requires crashing, scope reduction, or deadline revision.