Welcome to Critical Path Analysis!
Ever wondered how massive projects like building a skyscraper, launching a new smartphone, or even planning a music festival stay on track? They use a technique called Critical Path Analysis (CPA). In this chapter of Decision Mathematics 1, you will learn how to break down a big project into smaller tasks, find out which tasks are the most urgent, and calculate the minimum time needed to get everything done.
Don't worry if this seems like a lot of data at first—it’s essentially just a "to-do list" turned into a logical map. Let's dive in!
1. Modelling a Project: The Activity Network
Before we can calculate anything, we need to represent the project visually. We use an activity network. In this course, we use the Activity on Arc (AOA) method.
Key Terms
- Activity: A task that takes time and resources (represented by an arc/arrow).
- Event: The start or completion of an activity (represented by a node/circle).
- Precedence Table: A list showing each activity and which tasks must be finished immediately before it can start (its immediate predecessors).
The Rule of Dummies
Sometimes, we have to draw a dotted arrow called a dummy. Dummies have a duration of zero. We use them for two reasons:
- To show dependency: If Activity C depends on both A and B, but Activity D only depends on B, we use a dummy to link B to C without linking A to D.
- Uniqueness: Each activity must be uniquely identified by its start and end nodes. If two activities start and end at the same events, we use a dummy to give them separate paths.
Analogy: Think of getting dressed. You must put on socks before shoes. "Socks" is an activity, "Shoes" is an activity, and the moment you finish putting on socks is an "event."
Quick Takeaway: An activity network is a map of a project where arrows are tasks and circles are milestones. Dummies are just "invisible" connectors to keep the logic straight.
2. The Forward and Backward Pass
Once your network is drawn, you need to find the Earliest Event Time (EET) and the Latest Event Time (LET) for every node. We usually draw a box divided into two for this at each node.
The Forward Pass (Calculating EET)
We start at the beginning (Node 0) where the time is 0. We move left to right through the network.
- For each node, look at all activities leading into it.
- Rule: EET = \( \text{max}(\text{EET of previous node} + \text{duration of activity}) \).
- Why max? Because a milestone isn't reached until the slowest required task is finished.
The Backward Pass (Calculating LET)
We start at the final node (where EET and LET are the same) and move right to left.
- For each node, look at all activities starting from it.
- Rule: LET = \( \text{min}(\text{LET of next node} - \text{duration of activity}) \).
- Why min? To ensure every activity starting from this node can still finish on time.
Common Mistake: Students often pick the smallest number during the forward pass or the largest during the backward pass. Remember: Forward = Max, Backward = Min.
Quick Takeaway: The forward pass tells you the earliest you can start things; the backward pass tells you the latest you can finish them without delaying the whole project.
3. Identifying the Critical Path
The Critical Path is the sequence of activities that dictates the project's total duration. If any activity on this path is delayed by even a second, the whole project is delayed.
How to find it:
- Look for Critical Activities. An activity (from node \( i \) to node \( j \)) is critical if:
- The EET at node \( i \) equals its LET.
- The EET at node \( j \) equals its LET.
- \( \text{LET at node } j - \text{EET at node } i = \text{duration of the activity} \).
- The Critical Path is the continuous path from start to finish made of these activities.
Did you know? A project can have more than one critical path! If two different routes both take the same maximum time, they are both critical.
Quick Takeaway: The critical path is the "no-slack" zone. It is the longest path through the network.
4. Total Float
For activities not on the critical path, there is usually some "leeway." This is called Total Float.
The Formula
For an activity starting at node \( i \) and ending at node \( j \):
\( \text{Total Float} = \text{LET of node } j - \text{EET of node } i - \text{duration of activity} \)
Think of Total Float as your "buffer time." It’s how long you can delay a task without making the whole project take longer.
Key Point: Critical activities always have a Total Float of zero.
5. Gantt Charts (Cascade Charts)
A Gantt Chart is a visual way to display the project schedule against a timeline.
- Each activity is represented by a horizontal bar.
- The bar's length equals its duration.
- Critical activities are usually listed first and drawn as solid blocks.
- Non-critical activities show their duration, followed by a dotted line representing their Total Float.
Top Tip: Always start each activity at its Earliest Start Time (the EET of its start node) when drawing the initial chart.
Quick Takeaway: Gantt charts make it easy to see when tasks are happening and which ones have "wriggle room."
6. Resource Levelling and Lower Bounds
In the real world, you don't have infinite workers. You need to calculate the minimum number of workers required.
Calculating the Lower Bound
To find the minimum number of workers needed to finish the project in the critical time, use this formula:
\( \text{Lower Bound} = \lceil \frac{\text{Sum of all durations}}{\text{Critical time of the project}} \rceil \)
Important: The symbol \( \lceil \dots \rceil \) means you must round up to the nearest whole number, because you can't hire half a worker!
Quick Takeaway: The lower bound gives you the absolute "best-case scenario" for staffing. In reality, you might need more if many tasks happen at the exact same time.
Summary Checklist
Before your exam, make sure you can:
- Draw an activity network from a precedence table (and use dummies correctly!).
- Perform a forward and backward pass to find EETs and LETs.
- Identify the critical path and critical activities.
- Calculate the total float for any activity.
- Construct a Gantt chart.
- Calculate the lower bound for the number of workers.
You've got this! Just take it one node at a time.