Forward and Backward Scanning
Projects often use weighted edges in their activity networks, where the weight typically represents the time required to complete an activity. This information is included alongside the activity label, separated by a comma for clarity. For instance, if Activity A takes 3 units of time to complete, it would be denoted as “A, 3” on the corresponding edge.
Optimising a schedule involves forward scanning and backward scanning, two key techniques used to calculate critical project planning variables:
- Earliest Starting Time (EST): This is the earliest time an activity can begin. It is determined by the completion time of its immediate predecessors, specifically the one with the longest duration up to that point. The EST ensures that no activity starts before all its prerequisites are met.
- Latest Starting Time (LST): This represents the latest time an activity can begin without delaying the overall project. It depends on the time taken by subsequent activities. As other activities progress, the LST adjusts to ensure the project remains on schedule without unnecessary delays.
- Float time: This is the difference between the LST and EST. It indicates the amount of flexibility an activity has before it affects the project's overall timeline.
Forward Scanning
The process of forward scanning involves the following steps to calculate the EST for each activity:
- Draw two boxes side by side at each vertex. The left box will represent the EST, and the LST box will later be used for the LST.
- At the starting vertex, write 0 in the left box, as the first activity begins at time 0.
- Move through the network.
- For a single edge going into a vertex: add the duration of the activity (the edge weight) to the value in the left box of the preceding vertex and write this sum in the left box of the current vertex.
- For multiple edges going into a vertex:
- Add the previous vertex’s left box value and the edge weight for each edge going into the vertex; and write them (labelled with the corresponding edge) above the left box.
- Select the highest value and write it in the left box of the current vertex.
- Continue moving through the network, repeating step 3, until the end vertex is reached.
Worked Example
Perform forward scanning for the activity network shown below to calculate the Earliest Starting Times (EST) for each activity.

Check your understanding
View
Backward Scanning
The process of backward scanning involves the following steps to calculate the LST for each activity:
- Complete forward scanning
- At the end vertex, copy the final value from the EST box to the LST box. This represents the latest time the project can be completed without delay.
- Move through the network backwards
- For a single edge going out of the vertex: subtract the duration of the activity (the edge weight) to the value in the LST box of the preceding vertex and write this sum in the LST box of the current vertex.
- For multiple edges going out of the vertex:
- Subtract the previous vertex’s LST box value and the edge weight for each edge going out of the vertex; and write them (labelled with the corresponding edge) above the LST box.
- Select the lowest value and write it in the LST box of the current vertex.
- Continue moving backward through the network, repeating step 3, until the start vertex is reached.
Worked Example
Perform backward scanning for the activity network from the result of the previous worked example, shown below, to calculate the Latest Starting Time (LST) for each activity.