How to Define Task Relationships in Microsoft Project

How to Define Task Relationships in Microsoft Project
Page content

What Is a Task Relationship?

In the first lesson on Getting Started with Microsoft Project, we saw how to define tasks in the MS Project application. We also pointed out that Microsoft Project will, by default, assume that all tasks start on the Project start date.

Then in the second lesson, where we talked about task Insertions and amendments, we briefly touched upon task relationships, and we said that we would take the topic up later. Now, let us understand what we mean by task dependencies or task relationships, and what their role in defining a project is. The very purpose behind breaking a project down into smaller, manageable tasks is that this process of work breakdown makes project planning easier. After having defined a project in terms of the planned tasks, we also need to address the more important part of project management - the part related to project scheduling. As you are aware, any scheduling activity will need to take the constraints into consideration in order to come up with a practical and meaningful schedule.

The question then is how do we indicate the constraints that need to be considered while scheduling the tasks in a project to the MS Project application. The two major constraints that we will indicate to Microsoft Project are:

  • Sequencing constraints
  • Capacity constraints

We will take up capacity constraints in a later lesson after we define resources in our project. The sequencing constraints are indicated in Microsoft Project using Task Relationships.

Note: When finished with this lesson, be sure to check out the other Microsoft Project tutorials available at Bright Hub.

Types of Task Relationships in Microsoft Project

To understand the different types of task relationships that can be defined in Microsoft Project, and to learn how to define these

relationships, let us create a new sample project, using the following steps:

  • Open Microsoft Project.
  • Create a New project (File->New).
  • Insert four Tasks with the names and durations in days as follows: Task 1 (7 days), Task 2 (10 days), Task 3 (8 days), and Task 4 (11 days).
  • Save the project as “Sample For Task Dependencies” in your tutorial folder (File->Save As).

Now your project should appear as shown alongside, with all four tasks starting on the default project start date.

(Note: Please click on the image to view a larger size for all images in this article.)

Task Information Dialog Box

Let us now start defining the relationships between the tasks. In earlier lessons, you were defining task relationships by using the mouse and dragging a relationship line from one task to another. Here we will do this using Microsoft Project’s Task Information Dialog Window.

  • Highlight Task 2 (either click on the task in the task pane or in the Gantt chart pane).
  • Click on the Task Information icon in the Standard toolbar. (The Task Information Dialog window will pop up.)
  • Click on the Predecessor tab.
  • Under Task Name, select Task 1, and under Type, select Finish-to-Start.
  • Click on OK.

As you can see, the drop-down box for Type has four Task Relationship types available as follows:

  • Finish-to-Start (FS)
  • Start-to-Start (SS)
  • Finish-to-Finish (FF)
  • Start-to-Finish (SF)

We will come to the meaning of each of these in a moment. In the meantime, complete the relationships for Tasks 3 and 4 as follows:

  • Choose Task 3. Open the predecessor tab in the dialog window. Enter Task 1 with type as SS. Also enter Task 2 in the second row and define the relationship type as FF
  • Choose Task 4. Open the predecessor tab. Enter Task 3 with type as FS. Enter Task 1 in the second row with type as SF.

Thus for Tasks 3 and 4, we have defined two predecessors each. The idea is to see for ourselves and understand how they show up on our project and in the Gantt chart.

Continue to Page 2 to learn more about the meanings of task relationships in Microsoft Project.

Meanings of the Four Types of Task Relationships in Microsoft Project

Once you have completed entering the task relationships as mentioned, your project should appear as shown in the image below.

Dependencies Defined

Now let us understand what these relationships mean. To begin with, we need to understand that all relationships are defined between a successor task and a set of (one or more) predecessor tasks in Microsoft Project. Thus, in each of the above case, the task you first chose is the successor and the tasks you entered in the rows in the Dialog window are the predecessor tasks for any given relationship. To view the relationships you have defined, you can check on the arrows appearing on the Gantt chart. Another way to see the relationships is to increase the width of the Task pane by moving the Divider line (between the Task pane and the Gantt chart pane) to the right, until the Predecessor column becomes visible in the Task pane. You will see the relationships with the two-letter codes as shown in the image here.

Dependencies with Predecessor column visible

You can notice that the default task relationship type (FS - Finish-to-Start) is not indicated with code by Microsoft Project.

Essentially the relationships have the following implications:

  • Finish-to-Start: The successor task cannot start until the predecessor task has finished
  • Start-to-Start: The successor task cannot start until the predecessor task has started
  • Finish-to-Finish: The successor task cannot finish until the predecessor task has finished
  • Start-to-Finish: The successor task cannot finish until the predecessor task has started

Real World Examples

As you must have noticed, the most common task relationship type is the Finish-to-Start type, which also happens to be the default type in Microsoft Project.

All the task relationships we had used in the Concert Project were Examples of Finish-to-Start relationships

Among the other task relationship types, two are used occasionally to indicate scheduling conditions which are very relevant.

Start-to-Finish Examples:

Implementation of a new procedure and training for the employees on the new procedure are two tasks which can be related with a Start-to-Finish type. Although the new procedure may be ready for implementation after it has been designed, the procedure cannot be started until the employee training is completed.

Similarly, you can finish scheduling production crews only when you start receiving materials.

Start-to-Start Examples:

This relationship is used whenever we can see the possibility of overlap between tasks, though they appear to be sequential.

Thus, proof-reading for a book can be started as soon as the first few pages have been written, and we need not wait for the composition of the entire volume to be completed.

Coding for an application can be started as soon as the initial designs for some components are ready (as practiced in Agile methodology), instead of waiting for the entire design to be completed (as practiced in Waterfall methodology).

Finish-to-Finish is a very rarely used relationship. One complicated example can be the relationship between watering a garden and fertilizing the plants in the garden. As you can see, the plants have to be watered before fertilizing can start. However, the plants must be wet as long as the fertilizing process is going on. Hence we can impose a Finish-to-Finish relationship between the two tasks “Fertilize the Garden” and “Water the plants in the garden.”

Another example is the relationship between the tasks “Add wiring” and “Inspect electrical”. Here “Inspect electrical” cannot finish until “Add wiring” finishes. Thus, here again there is a Finish-to-Finish relationship between the two tasks. Thus, this kind of relationship, though rare, does exist between two tasks which are related to each other in such a way that one task cannot finish until the other task finishes.


It is important to understand how critical it is to establish the relationships between the tasks so that Microsoft Project can help in scheduling our project optimally. This also helps us understand the way the “lag” appearing in the dialog window will affect managing delays and overlaps between tasks as we get back to our Concert Project and start introducing additional features and constraints that will make the project more practical from the point of view of scheduling. In the meanwhile, spend some time looking at the effect of changing the relationships as defined by us between the four tasks. Experiment with the task relationships and see the impact.

In the next few lessons, we will understand more about the project and task calendars, and we’ll also introduce capacity constraints by defining resources available to complete the projects.

This post is part of the series: Step By Step Tutorials on Microsoft Project

This series of articles take you through the steps involved in building a complete project using Microsoft Project software. The series starts with a very simple project spanning just ten tasks, and the builds on the simple project by introducing new elements. A hands-on approach is used throughout

  1. Step-By-Step Tutorial on Microsoft Project: Getting Started in Twenty Minutes
  2. Task Insertions, Amendments and Other Features in Microsoft Project (Lesson 2)
  3. Getting to Know the Menus and Toolbars in Microsoft Project (Lesson 3)
  4. Toolbars Continued, Plus Tips and Tricks in Microsoft Project (Lesson 4)
  5. Types of Task Relationships in Microsoft Project (Lesson 5)