Developing Activity Logic
A list of tasks isn't a plan — the links are. Activity logic is the wiring that turns a pile of activities into a living network the CPM can solve for dates, float, and the critical path. Four relationship types, leads and lags, hard vs soft. Built on AACE 24R-03.
What activity logic is
Logic is what makes a schedule dynamic: change one duration and a properly-linked network recalculates every downstream date automatically. A bar chart with no logic is just a picture — it can't tell you what a delay does, because nothing is connected.
The four relationship types — plus leads and lags
Every dependency is one of four types, defined by which ends of the two activities are tied together:
| Type | Means | Typical use |
|---|---|---|
| Finish-to-Start (FS) | B can't start until A finishes | The default — pour can't start until formwork finishes |
| Start-to-Start (SS) | B can't start until A starts | Overlapping work — start backfill once excavation starts |
| Finish-to-Finish (FF) | B can't finish until A finishes | Paired completion — testing finishes when installation finishes |
| Start-to-Finish (SF) | B can't finish until A starts | Rare — shift handovers; use with caution |
A relationship can also carry a lead or lag — a time offset. A lag adds waiting time (FS+3d = start 3 days after the predecessor finishes, e.g. concrete cure). A lead (negative lag) lets the successor start early (FS−2d = overlap by 2 days).
Relationship explorer
Tap a relationship type to see what it means, when to use it, and how the two activities line up in time.
Relationship explorer
ExploreSee what it means, when to use it, and how the two activities line up in time.
Finish-to-Start
B can't start until A finishes. The most common and most robust link — true sequential work. Pour the slab only after the formwork is complete.
Hard, soft, and external logic
Not all dependencies are equal. Knowing why a link exists tells you whether it can be changed to recover time.
| Kind | What it is | Can you change it? |
|---|---|---|
| Hard (mandatory) | Physically or contractually required — concrete must cure before loading | No — it's the nature of the work |
| Soft (preferential / discretionary) | A chosen sequence or resource preference — paint room A before room B | Yes — re-sequence to accelerate or level resources |
| External | Depends on something outside the schedule — a permit, an owner-supplied item | Manage it, but you don't control it |
Open ends, dangles, and constraint abuse
A healthy network is fully connected and logic-driven. Three faults break that:
- Open ends — an activity with no predecessor (start dangle) or no successor (finish dangle). It floats free, doesn't pass delay along, and corrupts float calculations. Every activity except the true start and finish should have both.
- Constraints instead of logic — hard-pinning a date ("must start on") to force a result, rather than wiring the real dependency. Constraints override the CPM and hide the true critical path. Use them only for genuine external dates (contractual milestones).
- Redundant or circular links — duplicate paths that add nothing, or loops where A depends on B and B on A, which the CPM can't solve. Keep logic minimal and acyclic.
Ten things to remember
- Logic is the wiring — it turns a list of activities into a network the CPM can solve.
- Dates are an output of logic + durations — not values you type in.
- Four relationship types: FS (default), SS, FF, SF — defined by which ends are tied.
- Lag adds waiting time; lead overlaps — but long lags hide unresourced work.
- Prefer FS — it's the most robust link; reach for SS/FF/SF only when the work truly demands it.
- Hard logic is fixed; soft (preferential) logic is where recovery flexibility lives.
- External logic (permits, owner-supplied items) you manage but don't control.
- Eliminate open ends — every activity but the true start/finish needs a predecessor and a successor.
- Don't substitute constraints for logic — they override the CPM and hide the critical path.
- A clean network is fully-linked, mostly-FS, constraint-light, and acyclic — and defensible.
Glossary
- Activity logic
- The relationships defining the order activities must be performed in.
- Constraint
- An imposed date that overrides logic; use only for genuine external dates.
- Finish-to-Start (FS)
- The successor can't start until the predecessor finishes — the default.
- Hard logic
- A mandatory dependency from the physical or contractual nature of the work.
- Lag / lead
- A time offset on a link: lag adds delay; lead (negative lag) allows overlap.
- Open end
- An activity missing a predecessor or successor — a network fault.
- Predecessor / successor
- The activity before / after another in a dependency.
- Soft logic
- A preferential/discretionary sequence that can be re-arranged.