How Dependencies Work
If a dependency defines Task A as dependent upon Task B, Task B's start and finish date do not change as a result of this dependency. Only Task A's dates can change and the change is a result of two components of the dependency:
Dependency Type
There are four types of dependencies:
FS (Finish-to-start). The selected task cannot start until this one finishes. This is the default task dependency.
SF (Start-to-finish). The selected task cannot finish until this task starts.
FF (Finish-to-finish). The selected task cannot finish until this task finishes.
SS (Start-to-start). The selected task cannot start until this task starts.
You can add dependencies for a task in the Create or Assign state. You cannot modify the dependency type of an existing dependency.
You can add up to 4 different dependencies on the same task.
Once you insert a sub-task under a task, the task becomes a summary task (meaning it has children that determine its start and end dates). In that case, if the summary task has an FF or SF dependency, that dependency becomes invalid. In the case of other dependencies, the scheduling of the Summary Task depends on the scheduling of its sub-tasks.
If a milestone or gate has a successor task, once that milestone/gate is promoted to the Completed state, the successor task gets auto-promoted to the Draft state.
The scheduling is aligned with Microsoft Project scheduling.
For example, for a Summary Task with zero duration tasks as sub-tasks, the behavior will be as follows:
Name | ID | Duration | Dep | Start Date | End Date |
---|---|---|---|---|---|
T1 | 1 | 1 Day | 20Feb2017 8am | 20Feb2017 5pm | |
T2 | 2 | 1 Day | 1:FS | 20Feb2017 5pm | 21Feb2017 5pm |
...T1.1 | 3 | 1 Day | 21Feb2017 8am | 21Feb2017 5pm | |
...G1.1 | 4 | 0 Day | 20Feb2017 5pm | 20Feb2017 5pm |
In the above example, for the Summary Task T2, the start date is set as the earliest date among sub-tasks (G1.1) and the end date is the latest date among the subtasks (T1.1).
Slack Time
The number of days or hours before or after the date determined by the dependency type. For example, if the dependency type is Finish-to-Start, then the dependent task should start when the dependee task finishes. If you specify a slack time of +1.0 day, then the dependent task should start 1 day after the dependee task finishes. A slack time of -1.0 day means that the dependent task starts 1 day before the dependee finishes. You can also use hours to define slack time, such as +4.0 hours. But if the dependent and the dependee task with an estimated duration of 0 days, and having an FS dependency with slack time of 1 day, has the same start and end date, but the time component of the date will be different.
Below are examples of how dependency types and slack times impact task dates.
For each of these examples, assume the dependent task (the task the dependency is added to) is a task with a 2-day duration. Also assume the dependee task (the task specified in the dependency) is called FIXED TASK (indicating that its start and finish dates do not change as a result of the dependency). FIXED TASK is also a 2-day task and has these dates:
Start: Thur Jul 24, 2014
End: Fri Jul 25, 2014
The dependent task has this Dependency Type and Slack Time: |
Will have this Estimated Start Date |
And this Estimated Finish Date |
Because the dependent task: |
---|---|---|---|
FS+0.0 d |
Mon Jul 28, 2014 |
Tues Jul 29, 2014 |
cannot start until FIXED TASK finishes |
FS+1.0 d |
Tues Jul 29, 2014 |
Wed Jul 30, 2014 |
can start 1 day after or after the completion of the dependee FIXED TASK finishes |
FS-1.0 d |
Fri Jul 25, 2014 |
Mon Jul 28, 2014 |
cannot start until after FIXED TASK finishes minus one day, which means it starts the day the task finishes |
SF+0.0 d |
Tues Jul 22, 2014 |
Thur Jul 24, 2014 |
cannot finish before FIXED TASK starts so the system enters the earliest date allowable for the finish date: the day FIXED TASK starts |
SF+1.0 d |
Wed Jul 23, 2014 |
Fri Jul 25, 2014 |
cannot finish before FIXED TASK starts plus 1 day, so the task's finish date is 1 day after FIXED TASK starts |
SF-1.0 d |
Mon Jul 21, 2014 |
Wed Jul 23, 2014 |
cannot finish before FIXED TASK starts minus 1 day, so the task's finish is 1 day before FIXED TASK starts |
SS+0.0 d |
Thur Jul 24, 2014 |
Fri Jul 25, 2014 |
cannot start before FIXED TASK starts so the system enters the earliest start date allowable, which is the same as FIXED TASK's start date |
SS+1.0 d |
Fri Jul 25, 2014 |
Mon Jul 28, 2014 |
cannot start before FIXED TASK starts plus 1 day |
SS-1.0 d |
Wed Jul 23, 2014 |
Thur Jul 24, 2014 |
cannot start before FIXED TASK starts minus 1 day |
FF+0.0 d |
Thur Jul 24, 2014 |
Fri Jul 25, 2014 |
cannot finish before FIXED TASK finishes so the system enters the earliest date allowable for the task's finish date, which is the same as FIXED TASK's finish date |
FF+1.0 d |
Fri Jul 25, 2014 |
Mon Jul 28, 2014 |
cannot finish before FIXED TASK plus 1 day |
FF-1.0 d |
Wed Jul 23, 2014 |
Thur Jul 24, 2014 |
cannot finish before FIXED TASK minus 1 day |