Learn how to identify which tasks control your project timeline
Imagine you're planning a dinner party. You need to:
Question: If guests arrive in 4 hours, will you be ready on time?
Some tasks must be done in order (you can't cook before shopping), while others can happen anytime (setting the table). Critical Path Method (CPM) helps you figure out which tasks control your timeline and which ones have flexibility.
Let's start with a simple software project where all tasks must be done in order:
| Task | Description | Duration | Must Wait For |
|---|---|---|---|
| A | Requirements gathering | 2 days | Nothing |
| B | Database design | 3 days | Task A |
| C | Backend development | 5 days | Task B |
| D | Frontend development | 3 days | Task C |
Task A: Start = 0, Finish = 0 + 2 = 2
Task B: Start = 2, Finish = 2 + 3 = 5
Task C: Start = 5, Finish = 5 + 5 = 10
Task D: Start = 10, Finish = 10 + 3 = 13
Project Duration: 13 days
Critical Path: A → B → C → D
In a purely sequential project, every task is critical. Any delay in any task delays the entire project. There's no flexibility (no "float)."
Now let's make our project more realistic. Some tasks can happen at the same time:
| Task | Description | Duration | Must Wait For | Critical? |
|---|
Duration: 12 days
The database design and backend development still control the timeline because they must be done sequentially.
Task C Float: 1 day
Task E Float: 1 day
UI design and frontend development can be delayed without affecting the project end date.
By allowing some tasks to run in parallel, we:
Float is the amount of time a task can be delayed without delaying the project. Let's calculate it:
Float = Latest Start - Earliest Start
or
Float = Latest Finish - Earliest Finish
Earliest Start: 2 days
Latest Start: 3 days (project still finishes on time)
Float = 3 - 2 = 1 day
Earliest Start: 6 days
Latest Start: 7 days (project still finishes on time)
Float = 7 - 6 = 1 day
Let's see what happens when we add just one dependency: Task C (UI/UX Design) must be completed before Task D (Backend Development).
(Maybe the backend team needs the UI specifications to understand the API requirements)
Critical Path: A → B → D → F
Project Duration: 12 days
Task C Float: 1 day
Task E Float: 1 day
UI and Backend work can happen in parallel.
New Critical Path: A → C → D → F
Project Duration: 13 days
Task C Float: 0 days
Task E Float: 0 days
UI design is now critical! Project is 1 day longer.
As a project manager, you need to ask: