Planning & Decision Making · Topic 2 of 11
Precedence Tables
Theory
Any project, whether it is baking a cake, building a house, or developing software, can be broken down into a set of separate, manageable activities. However, you cannot always do everything at once.
1. Dependencies and Constraints
Some activities cannot be started until others have been completely finished. For example, when building a house, you cannot put the roof on before you have built the walls.
When an activity relies on another being finished, this is called a dependency. A dependency only refers to the activity that must happen immediately before the task in question.
2. What is a Precedence Table?
A precedence table helps you organise all the activities within a project. It clearly lists each task, its duration, and its constraints (which specific tasks must be completed before it can begin).
Tasks with "None" in the preceding task column are your starting points. These can begin immediately.
3. Drawing Basic Activity Networks
You can turn a precedence table into a visual diagram (an activity network).
Strategy: Always find your starting point(s) first. Draw a node (a box) for each task containing its letter and its time duration, and use arrows to link them together in the correct order based on their dependencies.
Worked examples
Example 1
Example 1: Interpreting a Precedence Table
A local cafe is preparing a large batch of homemade soup. The tasks involved are listed below.
| Task | Description | Preceding Task | Time (mins) |
|---|---|---|---|
| A | Chop vegetables | None | 10 |
| B | Prepare meat | None | 8 |
| C | Boil stock | None | 5 |
| D | Fry meat and vegetables | A, B | 6 |
| E | Combine ingredients into pot | C, D | 2 |
| F | Simmer soup | E | 45 |
(a) State the tasks that can be started immediately.
(b) Identify all the tasks that must be completely finished before the ingredients can be combined into the pot (Task E).
(a) Tasks A, B, and C can be started immediately because they have no preceding tasks.
(b) Task E immediately depends on C and D. However, because D depends on A and B, all four tasks (A, B, C, and D) must physically be finished before Task E can begin.
Example 2
Example 2: Drawing a Network Diagram
A student is setting up a new desktop computer. The table below lists the tasks and their dependencies.
| Task | Description | Preceding Task | Time (mins) |
|---|---|---|---|
| A | Unbox computer and monitor | None | 5 |
| B | Connect monitor to power | A | 2 |
| C | Connect computer to power | A | 2 |
| D | Connect monitor to computer | B, C | 3 |
| E | Connect keyboard and mouse | A | 4 |
| F | Turn on and run setup | D, E | 15 |
Create a diagram showing the list of tasks, their durations, and their dependencies in the correct order.
Start with a single box for A. Since B, C, and E all depend on A, draw three arrows coming out of A leading to three separate boxes. D needs both B and C, so arrows from B and C will merge into D. Finally, F needs D and E, so arrows from D and E will merge into F.
Example 3
Example 3: Calculating Total Time from a Diagram
Using the computer setup scenario from Example 2, calculate the minimum time it will take for the student to completely set up the computer.
To find the total time, we must find the longest path through our activity network, because all parallel tasks must be finished before moving on.
- Path 1 (via Monitor): A → B → D → F = 5 + 2 + 3 + 15 = 25 minutes.
- Path 2 (via Computer): A → C → D → F = 5 + 2 + 3 + 15 = 25 minutes.
- Path 3 (via Peripherals): A → E → F = 5 + 4 + 15 = 24 minutes.
Because F cannot start until all preceding tasks are done, we must wait for the longest path to finish. Therefore, the total time taken is 25 minutes.