The forward and backward passes
What the two passes find
- Forward pass — the earliest event time at each node: the soonest everything arriving there can be finished. It gives the project duration.
- Backward pass — the latest event time at each node: the last moment the event can occur without delaying the finish.
- The two sweeps go in opposite directions and must not be interleaved. Finish the whole forward pass, then start the backward pass.
The forward pass
- Start at node 1 with earliest event time 0.
- For each node in numerical order, take every activity arriving at it and calculate
- Where several activities arrive, take the LARGEST value.
- Why: the event is "everything arriving here is finished", and that cannot happen until the slowest of them is done.
- The earliest time at the finish node is the project duration.
- Record the largest value only, but do the comparison visibly — showing "max(13, 10) = 13" is evidence of the method.
The backward pass
- Start at the finish node, setting its latest event time equal to its earliest — the project is not allowed to run late.
- Work backwards in reverse numerical order. For each node, take every activity leaving it and calculate
- Where several activities leave, take the SMALLEST value.
- Why: the node must be early enough to allow every activity leaving it to finish on time, so the tightest requirement wins.
- The latest time at node 1 must come out as 0. If it does not, there is an arithmetic error — check the backward pass before going further.
The two rules, side by side
| Pass | Direction | Operation | At a junction |
|---|---|---|---|
| Forward | left to right | add the duration | take the largest |
| Backward | right to left | subtract the duration | take the smallest |
- Getting the max/min the wrong way round is the standard error in this topic. The check "node 1 must return to 0" catches it immediately.
Reading the results
- A node where earliest = latest is a critical event: it has no spare time at all, and any delay there delays the whole project.
- The critical path runs through the critical events, along activities that have no float.
- Nodes where latest exceeds earliest have slack, and activities between them may be able to move.
Worked ExampleBoth passes on the deck project
Complete the forward and backward passes for the deck project.
| Activity | Duration | Predecessors |
|---|---|---|
| A | 3 | — |
| B | 5 | A |
| C | 4 | A |
| D | 6 | C |
| E | 2 | B |
| F | 7 | D, E |
| G | 5 | F |
| H | 3 | F |
| J | 1 | G, H |
The network runs ; and ; and ; ; and ; ; .
Step 1 — Forward pass: node 1
Step 2 — Node 2, reached by A
Only one activity arrives, so there is nothing to compare.
Step 3 — Nodes 3 and 4, reached by B and C
Step 4 — Node 5, where the two chains merge
Two activities arrive:
- via E:
- via D:
Step 5 — Node 6, reached by F
Step 6 — Nodes 7 and 8
Node 8 has two arrivals:
- via G:
- via the dummy from node 7:
Step 7 — Node 9, the finish
Sense-check: the longest chain by inspection is ✓
Step 8 — Backward pass: node 9
Step 9 — Node 8, from which J leaves
Step 10 — Nodes 7 and 6
Only the dummy leaves node 7:
Two activities leave node 6:
- via G to node 8:
- via H to node 7:
Step 11 — Node 5, from which F leaves
Step 12 — Nodes 4 and 3
Step 13 — Node 2, from which B and C leave
- via C to node 4:
- via B to node 3:
Step 14 — Node 1, and the check
Step 15 — Tabulate the results
| Node | Earliest | Latest | Slack | Critical event? |
|---|---|---|---|---|
| 1 | 0 | 0 | 0 | Yes |
| 2 | 3 | 3 | 0 | Yes |
| 3 | 8 | 11 | 3 | No |
| 4 | 7 | 7 | 0 | Yes |
| 5 | 13 | 13 | 0 | Yes |
| 6 | 20 | 20 | 0 | Yes |
| 7 | 23 | 25 | 2 | No |
| 8 | 25 | 25 | 0 | Yes |
| 9 | 26 | 26 | 0 | Yes |
Step 16 — Interpret in context
The two non-critical events tell the story of the project's flexibility:
- Node 3 (materials ordered and ready to deliver) has 3 days of slack — the ordering chain finishes on day 8 but is not needed until day 11.
- Node 7 (handrails complete) has 2 days of slack — they finish on day 23 but the inspection is not ready to start until day 25.
Everything else is critical, so a one-day delay to the design, site clearing, foundations, framing, decking or inspection pushes the whole project back by a day.