Understanding Dependency: Logical Connection of Tasks
What is Dependency?
No matter how much manpower and unlimited budget you have, you cannot magically start all project tasks at the same time. This is because some tasks have physical constraints that they can only start after a previous task is completed. The logical constraint relationship between these two tasks is called Dependency or Predecessor-Successor Relationship in project management.
For example, in a construction site, you cannot 'Erect steel pillars (Successor task)' in thin air before the 'Foundation work (Predecessor task)' is finished. In software development, it is the same reason you cannot start 'Coding' before the 'Planning specification document' is out.
[Figure 5] Dependency arrows connecting predecessor and successor tasks on a Gantt chart
4 Types of Logical Dependency Relationships
The method of connecting tasks is not simple. The international project management standard (PMBOK) classifies dependency types into four categories.
| Dependency Type | Abbreviation | Description & Practical Example |
|---|---|---|
| Finish-to-Start | FS | The successor task can only start after the predecessor task finishes. The most common and widely used form (over 90% of all dependencies). Ex) Wall painting (A) must be completed before hanging a picture (B) can start. |
| Start-to-Start | SS | The successor task can only start after the predecessor task starts. Ex) Pouring foundation concrete (A) must start for concrete leveling (B) to start. |
| Finish-to-Finish | FF | The successor task can only finish after the predecessor task finishes. Ex) Code development (A) must be fully completed for the entire system test (B) to finish. |
| Start-to-Finish | SF | The successor task can only finish after the predecessor task starts. (A very rare case hardly used in practice) |
Lead and Lag
Even after connecting two tasks with an arrow, a physical waiting time may be required. In schedule management, these are called Lead and Lag.
- Lag: When you must wait for a certain period after the predecessor task finishes before starting the successor task. For example, to paint (B) after pouring concrete (A), you need a '3-day waiting time (Lag=3)' for the concrete to cure.
- Lead: When you start the successor task early before the predecessor task is fully finished. This is the core of the Fast Tracking technique used to shorten the overall construction period.
The Magic of Dependency Settings: Auto-Scheduling
Beginners easily mistakenly think, "I draw a line because the tasks are arranged in order," but the true purpose of dependency is 'automatic response to changes'.
What if the predecessor task A is delayed by a week due to an unexpected problem? If the dependency arrows are properly connected, the moment the bar for task A is pushed back by a week, all subsequent tasks like B, C, and D connected by arrows will sequentially slide back like dominos, automatically calculating the new deadline. In Rudia Online Gantt, you can enjoy this powerful auto-scheduling feature simply by dragging your mouse once to connect the arrow.