Skip to main content
Back to module
Project Management Fundamentals · Planning

Schedules and critical path

Reading32mLesson 2 of 3 in this module

What you'll learn

  • Find the critical path of a small plan
  • Calculate earliest finish times with a forward pass
  • Work out float for tasks off the critical path
  • Read a Gantt chart with milestones

Sequence tasks with dependencies, draw a Gantt chart and find the critical path that sets the project's length.

Why it matters

A list of tasks is not a schedule. Some tasks must wait for others; some can happen at the same time. Until you know the order, you cannot say when the project will finish or which delays actually matter. The critical path method (CPM) answers both questions, and it is used on everything from software releases to building projects.

Dependencies

A dependency links two tasks. The most common type is finish-to-start: task B cannot start until task A finishes. You cannot build the sign-up pages until the screens are designed.

Other types exist (start-to-start, finish-to-finish), but finish-to-start covers most beginner plans. Dependencies come from:

  • Logic: you must design before you build.
  • Resources: the same person cannot do two things at once.
  • External events: the food bank must supply photos first.

The network and the forward pass

Here is the food bank plan in working days:

IDTaskDaysAfter
AAgree requirements3(none)
BDesign screens5A
CSet up database2A
DBuild sign-up pages6B, C
EWrite volunteer guide2B
FTest and launch3D, E

The forward pass works out the earliest each task can finish. A task can start only when all of its predecessors are done, so its earliest start is the largest earliest finish among them:

A: start 0,             finish 0 + 3 = 3
B: start A = 3,         finish 3 + 5 = 8
C: start A = 3,         finish 3 + 2 = 5
D: start max(B, C) = 8, finish 8 + 6 = 14
E: start B = 8,         finish 8 + 2 = 10
F: start max(D, E) = 14, finish 14 + 3 = 17

The project takes 17 working days.

The critical path and float

The critical path is the longest chain of dependent tasks through the network. Here it is A -> B -> D -> F (3 + 5 + 6 + 3 = 17). Every task on it has zero float: if any of them slips by a day, the whole project slips by a day.

Tasks off the critical path have float (also called slack): time they can slip without delaying the end.

  • C finishes on day 5 but D cannot start until day 8 anyway, so C has 3 days of float.
  • E finishes on day 10 but F starts on day 14, so E has 4 days of float.

A backward pass (working from the end date back, subtracting durations to find latest start and finish) calculates float formally. Float = latest start minus earliest start.

Why this matters: if the database setup (C) takes 2 days longer than planned, nothing changes. If design (B) takes 2 days longer, launch moves 2 days. So you watch critical tasks closely and put your strongest people and earliest risk work there.

Gantt charts

A Gantt chart draws the schedule as horizontal bars on a calendar: one row per task, bar length equal to duration, with arrows for dependencies. It is the most common way to share a schedule because anyone can read it. Critical tasks are often coloured differently.

Day        1   3   5   7   9   11  13  15  17
A  Reqs    ===
B  Design     =====
C  DB         ==
D  Build           ======
E  Guide           ==
F  Test                  ===

Free tools include spreadsheet templates, GanttProject and many free tiers of online planners. The tool matters much less than correct dependencies.

Milestones

A milestone is a zero-duration marker for a significant event: "Design approved", "Go-live". Sponsors care about milestones more than tasks. Put them on the chart and in status reports.

Common mistakes

  • Missing dependencies, so the chart shows tasks overlapping that cannot.
  • Calendar dates typed in by hand instead of calculated from dependencies, so one change breaks everything.
  • Ignoring resource limits: two critical tasks assigned to the same person at the same time.
  • Treating the critical path as fixed. If a non-critical task slips past its float, it becomes critical.

Quick recap

  • Dependencies (mostly finish-to-start) set the order of tasks.
  • The forward pass gives each task's earliest finish; a task starts at the latest finish of its predecessors.
  • The critical path is the longest chain; its tasks have zero float and set the project length.
  • Gantt charts and milestones communicate the schedule.

Try it

Open the Do tab. The code for a forward pass is already written except for one line. Fill it in and the program finds the food bank project's length and critical path. No programming experience needed.

Key terms (6)

finish-to-start
The most common dependency: task B cannot start until task A finishes.
forward pass
Working through the network to find each task's earliest finish; a task starts at the largest earliest finish of its predecessors.
critical path
The longest chain of dependent tasks through the network; it sets the project's length.
float
Time a task can slip without delaying the project end, also called slack.
Gantt chart
A chart that draws the schedule as horizontal bars on a calendar, one row per task.
milestone
A zero-duration marker for a significant event, such as design approved or go-live.

Recap

  • Dependencies, mostly finish-to-start, set the order of tasks.
  • The forward pass gives each task's earliest finish; a task starts when its latest predecessor finishes.
  • The critical path is the longest chain; its tasks have zero float and set the project length.
  • Tasks off the critical path have float, but slipping past it makes them critical.
  • Gantt charts and milestones communicate the schedule.
Also in this lesson: