This article aims to provide a brief of defining task dependency types in Default, Simple, and Advanced Scheduling.

Skip Ahead to:

Overview

Dependency Types

How do Task Dependencies affect the Project Schedule?

Steps to Link Tasks

Steps to Remove Linked Tasks

Overview

In many projects, there are certain tasks that cannot start until another task has been completed. This can be particularly challenging to manage when the project is complex and includes tasks that rely on the successful completion of other tasks.

To help manage these dependencies, it is important to identify which activities are predecessors and successors. A predecessor is an activity whose start or finish affects the start or finish of another activity, while a successor is an activity whose start or finish is dependent on the start or finish of another activity.

For instance, if you want to paint a wall, you first need to apply primer to the wall. Therefore, “applying primer on the wall” is the predecessor activity, and “painting the wall” is the successor activity that depends on the completion of the former activity.

Simple and Default Scheduling supports only Finish to Start (FS) dependency. It doesn’t support any other dependencies like Start to Start (SS), Start to Finish (SF), and Finish to Finish (FF). Whereas Advanced Scheduling supports all dependency types.

Dependency Types

Using Task Dependency, you can manage the project schedules in a better way. You can use task durations and lag times to calculate start and finish dates for tasks. You can set task dependencies for normal and milestone tasks, but not summary tasks.

Note: Advanced Scheduling supports all four types of dependencies, whereas Default and Simple Scheduling only support the Finish to Start (FS) dependency type.

Link

Description

Finish to Start

In the finish-to-start dependency, the dependent (successor) task (B) doesn’t begin until the task on which depends (predecessor task) (A) completes.

For example, you need to prepare a presentation and show it to your manager. In order to show the presentation, the presentation must be prepared. So the activity “showing presentation” cannot begin until the activity “preparing presentation” is done. Here “preparing presentation” is the predecessor and “showing presentation” is the successor.

Start to Start

In the start-to-start dependency, the dependent (successor) task (B) doesn’t begin until the task on which it depends (predecessor task) (A) begins.

For example, you need to create a user manual and add the relevant images/screenshots to it. Here the activity “adding screenshots/images” cannot begin until the activity “writing user manual” begins. These two activities can go parallelly and thus these are start-to-start activities. Here “writing a user manual is the predecessor ” and “adding screenshots/images to it” is the successor.

Finish to Finish

In the finish-to-start dependency, the dependent (successor) task (B) doesn’t complete until the task on which it depends (predecessor task) (A) completes.

For example, consider a scenario where one needs to write code for a module and do the unit testing of the code. Now the activity “unit testing of the code” cannot be completed until the activity “writing code for the module” is completed. Here “writing code for the module” is the predecessor and “unit testing of the code” is the successor.

Start to Finish

In the start-to-finish dependency, the dependent (successor) task (B) doesn’t complete until the task on which it depends (predecessor task) (A) begins.

For example, consider a scenario where two guards – morning and night guards are posted on duty. Now the duty of the night guard cannot finish until the morning guard starts his duty. Because he (the nightguard) cannot leave the post vacant until the other guard joins. Here “duty of the night guard” is the successor and the “duty of the morning guard” is the predecessor.

How do Task Dependencies affect the Project Schedule?

Task links show the relationship of tasks with one another in time. The linking of tasks is also called Task Dependency. When you link tasks, a chain of tasks is set up. The long chain of tasks helps you decide the length of the project as well as the project end date.

Task Dependency is important as it impacts the project schedule. When you make any changes to a predecessor, it affects the successor which further affects the next successor, and so on.

Notes: In Advanced Scheduling –

  • When you set links between tasks (define task dependencies), the project creates a critical path of the links. This critical path helps you determine the finish date of your project. Read more about the critical path from this page.
  • The manually scheduled tasks are driven by the dates defined by the user and not by the dependencies defined on them. For example, if a predecessor manual task has a planned start and planned finish date of 1 January and 5 January as its successor manual task with FS dependency has a planned start and finish date of 6 January and 12 January. Now, if the predecessor task finishes on 7 January instead of 5 January then too, the successor task will start on 6 January and not on 8th January (as per dependency).

Steps to Link Tasks

You can link tasks (set dependencies between tasks) in a project. After you set links between tasks, if you make any changes in the predecessor task, it impacts the successor task which further impacts its successor, and so on.

To link tasks in a project, perform the following steps –

  1. Open the task listing view in Checked Out mode and select the task that you wish to link.
  2. In the Predecessor column, specify the Predecessor in the format mentioned below:
    <Task ID> Dependency Type ± Lag/Lead
  3. If you need to add multiple Predecessors, separate them with a comma. For example, 15FS+2, 16FS+1, and so on.
  4. Once you have entered all the required Predecessors, click the CHECKIN TO SAVE button.

Where,

  • Task ID – The Numeral value of the Task. For example, if the Task ID is TSK1, then the numeral value is 1, and you should add 1 in the format.
  • Dependency Type – Specify the type of dependency, which can be FS, SS, SF, and FF.
    Note: Advanced Scheduling supports all four types of dependencies, whereas Default and Simple Scheduling only support the Finish to Start (FS) dependency type.
  • Lag/Lead – This is entered as a numeral and can be either positive or negative. The default value is 0.

Example

Suppose you want to set a dependency relationship for a task TSK5 where the predecessor task is Task4, and the relationship type is ‘FS’ with a lead of 2 days. In this case, you need to enter “4FS+2” in the Predecessor field.

Similarly, If you want to set TSK7 as the predecessor for Task 11 with the start-to-start dependency and add a 3-day lag between the predecessor and successor task, you should write “7SS+3”. Here, 7 is the task ID, and SS is the start-to-start dependency.

You can define the leg/lead between the tasks in decimal values (for Advanced scheduling only). For example, to define a three and a half days lag between the tasks TSK10 and TSK11, you can write 10FS+3.5. You can specify up to two numbers after the decimal point, such as 11FS+2.25 (to define 2 and one-fourth days leg between the tasks.)Task Dependency

Notes:

  • You can also define the task dependency in the Gantt chart view by simply dragging the pointer from the predecessor task to the successor task. By default, it will create the finish-to-start dependency in the Gantt view. You can create only FS dependency in the Gantt view, however, all types of dependency are visible in the Gantt view.
  • If task A is linked to task B and task B is linked to task C, then task C cannot be linked to task A as it creates circular dependency which is not allowed in Advance Scheduling. In this case, the project notifies the user about the circular dependency and shows a message on the screen.

Rules to remember when defining a Task dependency:

  • The task for which a predecessor is being defined, cannot be added as a ‘Predecessor’.
  • For the selected task, other tasks with pre-existing dependencies are not available again for selection as a predecessor.
  • The user can only define the ‘Predecessor’ tasks, the successor tasks are auto-driven by the reverse logic.
  • The successor task details are visible under the Dependencies Section of the Task Details module as well.
  • If any Task is changed to a summary task, the dependency relationships defined earlier are dropped.

Steps to Remove Linked Tasks

To remove link tasks in a project, perform the following steps –

  1. Open the task listing view in Checked Out mode and select the task that you wish to remove the link.
  2. In the Predecessor column, clear the dependencies value and click outside the cell. The task dependencies or links are removed.

Note: You can’t remove the dependencies from a task from the Gantt chart view.

  • Was this helpful?
  • Yes   No