Table of contents
- Types of Dependencies
- 1. Dependencies Based on Commonalities
- 2. Predecessor-successor relationships
- Task dependency management in different methodologies
- Dependency Management in Teamhood
Task dependencies is a tool that allows us to define and track complicated task relationships in projects.
Depending on the project, there are several types of task dependencies to choose from. However, they all have the same purpose. They define how tasks in a project relate and clarify their order.
Types of Dependencies
There are two main schools of thought.
The first way to define task dependency types is to look at how the tasks depend on each other. Is the dependency resource, people, project, or team-based? Managing such relationships will vary by type. It will require specific skills.
The second approach categorizes dependencies into 4 types. They are based on when a successor task follows a predecessor task. The four types are as follows:
- Finish to Start
- Finish to Finish
- Start to Start
- Start to Finish
This approach is found in most project management guides and is also closely related to visualizing projects on a Gantt chart.
Let’s discuss both these approaches in detail for more context.
Tools with flexible dependency management?
Here you will find a top3 short-list of tools which have best functionality around dependnecies. Detailed comparison can be found in best visual project management tools post. Read more in that writeup to find out how did we compare tools where each tool excelled the others.
- Teamhood – most flexible and versatile project plan tool with dependencies
- Jira – most powerful dependencies for Agile type of working
- Trello – most simple dependencies in trello board for tracking personal use or very small teams
Plan, visualize and track – all in one tool
Try fully customizable and adaptable software
1. Dependencies Based on Commonalities
One way to categorize it is by looking at what these dependencies talk about. In such a case, we can say that most tasks are dependent on one of the following 4:
- Resources
- Specific person
- Project
- Team
1. Dependencies Between Resources
Resource-based task dependencies talk about tasks that have to share the same resource.
For example, if a specific machinery is needed to complete tasks. In such a case, only a certain amount of tasks can be worked on at the same time. This creates a dependency. A new task can only start once the previous one has finished.
In such cases, teams usually draw visual links between tasks. Or, they use a Kanban board with WIP limits.
2. Task Dependencies Between People
Dependencies between people are similar to resource-based. In this case, however, certain tasks have to wait because there is a limited amount of manpower.
To picture these bonds, most project managers rely on advanced software for project or workload management. It allows us to understand the capabilities of each team member and assign adequate workload to each.
Learn more about workload management.
3. Task Dependencies Between Projects
Another type of relationship is found when there are dependencies between projects.
This task dependency in project management can happen due to various reasons. One project’s progress may be dependent on another project’s outcome. They may share resources or facilities. Either way, such projects become dependent on each other and must be coordinated.
To visualize dependencies like this, most teams use Gantt charts. They also use Timeline views. These views show many projects on one screen. Allowing them to understand their relationships and make well-informed decisions.
If you are looking for such a tool, take a look at the best project timeline management tools.
4. Task Dependencies Between Teams
Last but not least, the dependency type on this list is between teams.
Similarly to projects, teams often have to share resources and are closely related to each other’s work. Thus, it comes as no surprise that we can find task relationships between different teams.
Just like with the previous type, most teams use the workload view and Gantt charts to visualize such relationships. Teamhood offers all the above-mentioned features in the free version – you can try them out today.
Like what you see? Pick your solution from the best project planning tools list.
2. Predecessor-successor relationships
Another way to understand dependencies is to analyze the start and finish dates of the dependent tasks. The two important terms to know here are the Predecessor and the Successor.
A predecessor task determines the start or finish date of another task.
A successor is a task whose start or finish date is determined by another task. In short, a successor follows a predecessor.
Now that we got this terminology cleared up, let’s look into the 4 types of such dependencies.
- Finish to Start
- Finish to Finish
- Start to Start
- Start to Finish
1. Finish to Start dependency
Finish to Start is the simplest and most common out of the four task dependency types. As such, you will see the use of such task dependencies in most projects.
The Finish to Start dependency states that – the predecessor task must be finished before a successor task can be started. In other words, one task must be finished before the other task can start.
Finish to Start Example
Imagine you are responsible for the construction of a new building. In such a case, a finish-to-start task dependencies example could be the relationship between tasks ‘Get building permissions’ and ‘Lay foundation’. Before starting to lay the foundation of your new building, you would have to get all of the building permits. Or in other words, you would have to finish one task before starting another.
2. Finish to Finish relationship
The Finish to Finish task dependency is a little more complicated. It states that the successor task cannot be finished before the predecessor task is finished.
This is usually applied to tasks that are being worked on at the same time, but one of them cannot be truly finished before the other one is complete. Contrary to the previous task relationship, the use of this and the following two dependencies is sometimes debated between project management professionals. Raising the question of the necessity for such relationships. However, I will cover them to give you the full picture.
Finish to Finish Example
Now, let’s go back to the example of our building and, this time, think about working on the interior. At this stage, many things are happening simultaneously. For example, ‘Put in drywall’ and ‘Put in the electrical installation’. Both tasks will be done at the same time. But, the electrical installation can’t finish before the drywalls are in. This creates a finish-to-finish dependency.
3. Start to Start dependency
This third type of task dependency is similar to the previous one. Start to Start states that the successor task cannot be started before the predecessor task has been started.
This often relates to tasks being worked on at the same time. But, it is important to start one task before the other.
Start to Start example
In our building example, let’s say it is time to ‘Paint the exterior’. This task cannot start before the task ‘Assemble scaffolding’ has been started as well. Both tasks can be and are being worked on at the same time. But, scaffolding must start before the painting can begin.
4. Start to Finish dependency
Lastly, the Start to Finish task dependency states that the next task can’t finish before the first starts.
This is the most complicated and most debated dependency out of the four. Some project managers say it should not be used at all, and others defend its usage and benefit. I will leave it up to you to decide if this is something you would want to use. In short, this rule says the next task must continue until the previous task is ready to start.
Start to Finish example
In our building, tasks ‘Provide building administration’ and ‘Handover building administration’ have Start to Finish dependency. The first is the successor and the second is the predecessor. Here, the company that built the building must keep running it. They must do so until the chosen supplier is ready to take over. The successor task is completed before the predecessor. This is the hardest dependency to use and understand.
Task dependency management in different methodologies
Setting and managing task dependencies differs by the project management methodology you use.
Gantt chart dependencies
If you are after the traditional look, such as in the examples above, you will find the most use of the Gantt view. You can use the Gantt chart to plan out tasks or phases of a project in a calendar-like view. You can draw dependencies between them to show important relationships and order. This view is great for long-term planning. It shows the exact dates when the project will finish.
Better project management tools can set task dependencies. They can reschedule them. This way, if one task is late, the dependent tasks are rescheduled. This gives you a clear sense of when the project will be done. One thing to note with automatic rescheduling – most tools will stay true to the original slack. (The difference between the finish date of the predecessor and the start date of the successor)
So if Slack was first set at 2 days, it would stay at 2 days even after the rescheduling happens.
List View Dependencies
Another common view in the project management field is a List. Small teams usually use this approach to task management. It’s also used when managing part of a larger project. However, it can prove useful in various scenarios. This approach’s big advantage is seeing many fields of info for all tasks.
In tools like Teamhood, you can add fields. These include: status, schedule, assignee, estimate, budget, and dependencies. Also, the task creator, create date, item age, and any custom fields (like contract value). In this view, task dependencies use special symbols. These symbols show if a task is waiting on ❗ or blocking ⛔ another task. To see the task in question, you simply click on the icon.
Kanban Board Task Dependencies
Finally, more managers want to add dependency management to their Agile or Kanban boards. This visual management tool is very useful. It has proven especially helpful for helping teams manage their workload. So, it’s no surprise that Kanban board tools now also have task dependency features.
Like with the List view, on a Kanban board you will not see lines going from one task to another. They would define task dependency. Instead, the work item cards will have symbols. They will show if a work item is waiting on something ❗ or blocking something ⛔. To see more details on each dependency or add a new one, open the item details.
Task Dependency Benefits
Using task dependencies in your projects has several clear benefits.
- It will allow you to plan out the project. Listing your project tasks will help you set better estimates. It will prepare you for time-constrained projects. You will know what has to be done and when.
- Task dependencies will help calculate project length. You can calculate the project end date by knowing how tasks are related. You must also estimate their duration.
- They will help you adjust in case of delays. If any of the planned tasks are late, you will be able to see what other tasks it affects and adjust accordingly.
- Easier delegation and fewer scheduling conflicts. Set a clear plan. It will show which resources are needed for which tasks. This way, you can ensure the effort is always focused on the right things. More on task scheduling software.
- Context mapping. Project managers create and manage task dependencies. They can fully document each task, how it was done, and its relationships. This gives valuable information to the project manager and context for the team.
Continue learning:
Dependency Management in Teamhood
Curious to try out task dependency management for your project? Teamhood supports all three views discussed above—Gantt, List, and Kanban. This provides a good option for those wanting to mix Kanban Gantt in their application.
Moreover, you can use all three views for your project simultaneously.
Frequently asked questions
What are the 4 types of dependencies in project management?
In project management, there are four types of dependencies:
Finish-to-Start (FS): A task cannot start until the previous task is completed
Finish-to-Finish (FF): A task cannot finish until the previous task is finished
Start-to-Start (SS): A task cannot start until the previous task has started
Start-to-Finish (SF): A task cannot finish until the previous task has started
What is an example of a dependent task pattern?
An example of a dependent task pattern is when Task B depends on Task A. Task B cannot start until Task A is completed, and Task A cannot finish until Task B has started.
What is the most common type of dependency?
The most common type of dependency is the Finish-to-Start (FS) dependency, where a task cannot start until the previous task is completed.
How do I manage task dependencies?
To manage dependencies, you can use project management tools like Gantt charts or dependency diagrams. These tools help visualize the relationships between tasks and ensure that tasks are completed in the correct order. Additionally, you can use software development tools like npm or Yarn to manage dependencies in your codebase.