Short answer

The critical path is the longest duration path through a project’s dependency network under its stated scheduling assumptions. Critical-chain scheduling also considers resource dependencies and uses buffers to manage uncertainty. The difference matters when apparently parallel tasks need the same person or equipment. Calculate the dependency-only case, check resource feasibility, then make the uncertainty allowance explicit. A buffer is a managed planning choice, not a promise that every project finishes faster.

Key takeaways

Distinguish a dependency path from a resource-feasible sequence.

Recalculate a small project before adding a buffer.

Avoid treating a generic buffer percentage as schedule evidence.

ExcelDownload the Excel worksheet

Editable fields and the article’s worked example, with clear units and checks. Open in Excel or another spreadsheet app.

Dependencies are necessary, but resources can add another constraint

The critical path method, or CPM, calculates the dependency network using durations and calendars. In the simple case below, the longest path determines the earliest project finish. A delay on that path delays the finish unless the plan changes.

PMI’s scheduling standard describes critical-chain scheduling with resource allocation and buffers as well as dependency logic. Critical-chain project management, or CCPM, is a wider way of managing that resource-constrained work and its uncertainty. Simply adding a buffer to an ordinary chart does not establish that the whole method has been applied.

An eight-day critical path, with assumptions visible

In a fictional project, task A takes 2 working days. Then B takes 4 days and C takes 3 days; D takes 2 days and waits for both. Assume no other work, no holidays and enough separate resources for B and C.

A-B-D lasts 2 + 4 + 2 = 8 days. A-C-D lasts 7 days. The first is critical because it controls the earliest finish under these assumptions. C has one day of total float in this simple network; that does not mean its resource is freely available.

A fictional dependency-only project lasts eight working days, while the same B and C tasks sharing one specialist require eleven before an illustrative buffer.
The resource calendar changes the feasible finish, even when no dependency arrow changes. Open the full-size diagram
TaskDuration, working daysPredecessor
A2Start
B4A
C3A
D2B and C

A buffer needs a reason and a review rule

An illustrative two-day project buffer would make the planning allowance 13 working days after the eleven-day resource sequence. Two days is a chosen teaching value, not a recommended size or an estimate of completion probability.

Buffer sizing depends on uncertainty, task relationships, calendars and the organization’s method. Do not apply a universal half-duration rule without its assumptions. Keep the unbuffered sequence, allowance and commitment separate so later reviews can see what changed.

Illustrative allowance, not a confidence claim11 resource-feasible days + 2 chosen buffer days = 13 days

Check resource contention across projects too

A schedule can fit one project while assigning the same specialist to another. Inspect the actual shared calendar, handoff readiness and interruptions. Do not count nominal parallel capacity that is already committed.

The project bottleneck guide follows shared-review queues, while the portfolio guide examines competing work. Use those records before blaming a task owner for a delay created by simultaneous commitments.

Keep the schedule useful when conditions change

Log which dependency, duration, resource or priority changed. Recalculate the remaining work rather than quietly moving the baseline. A missed date and its revised recovery plan are different records.

This small network explains the distinction. It does not cover every calendar rule, feeding buffer or portfolio-release policy in CCPM. Start with the decision your team must make and use the capacity-planning checks where shared resources govern the promise.

  1. Draw the dependencies

    Specify durations, calendars and actual predecessor conditions.

  2. Calculate the paths

    Find the controlling duration under the declared assumptions.

  3. Resolve resource conflicts

    Use the real calendar across all committed projects.

  4. Manage uncertainty explicitly

    Record the buffer method, review rule and authorized response.

A related example from Abolfazl

See why individually approved projects can still overbook the same team.

Read the companion note

In English, on founder Abolfazl’s personal blog. This is related reading, not an independent technical source.

Practical checklist

  • Define start, finish and completion conditions.
  • Use consistent working calendars.
  • Check every predecessor relationship.
  • Calculate dependency paths before adding allowances.
  • Identify shared people and equipment across projects.
  • Resolve conflicts into a feasible sequence.
  • State buffer assumptions without invented confidence.
  • Preserve the baseline and reason for each revision.

FAQ

FAQ

Sources and further reading

Authoritative references used to research and verify this guide.