No task or project operates in a vacuum. Project managers know the inevitability of dealing with project dependencies. There are a lot of factors, both internal and external, that can affect a task or project’s flow. Task and project dependencies when not managed can lead to project failure.
The PMI Pulse of the Profession 2018 report showed that resource dependency contributed to 26% of project failures, while task dependency contributed to 12% of project failures. While they are lower on the list of common project failures based on PMI’s 2018 survey, not managing project dependencies still pose a challenge for teams and project managers. In this article, we aim to clarify what these dependencies are and how to deal with them efficiently.
Project Dependencies Examples and Types
The fifth edition of the PMBOK® guide defines four attributes of project dependencies. These are also referred to as the types of dependencies in project management.
- Mandatory dependencies – those that are legally or contractually required or inherent in the nature of work. It’s also referred to as hard logic or hard dependencies.
- Example: Requirements Approval and Sign-off cannot be started without completing Requirements Documentation.
- Discretionary dependencies – those that are defined based on knowledge of best practices and is determined by the project team. It’s also called preferential logic or soft logic. When there’s more than one way to sequence activities, the team can choose one sequence over the other.
- Example: Developing Feature B can be done at the same time as Developing Feature A. Feature B is not necessarily dependent on Feature A’s completion.
- External dependencies – relationships between project activities and non-project activities. These are often outside the project team’s control.
- Example: Client Approval before Project Kick-Off.
- Internal dependencies – relationships between two or more project activities and are within the project team’s control.
- Example: Develop Feature before Test Feature.
For all project dependencies, the project team decides which activities are mandatory, discretionary, external, and internal. Activities can have two dependency attributes at the same time in the following manner: mandatory-external dependency, mandatory-internal dependency, discretionary-external dependency, or discretionary-internal dependency.
It’s important to note that both mandatory and external dependencies cannot be changed easily, if at all. For efficiency, project managers should focus first on dealing with both discretionary and internal as these are more in their control. After this, they can tackle mandatory and external dependencies.
Dependencies for Scheduling
One of the main goals when identifying dependencies is to prepare the project schedule. The PMBOK® guide discusses a technique to visualize the dependency between activities which is used to plot the project schedule. This is called the Precedence Diagramming Method (PDM). This technique is also the basis of most project management software when plotting and linking activities within a project.
There are four types of dependencies used in PDM. These four types denote the logical relationships between the predecessor activity and the successor activity. For our examples below, we’ll use two activities – A and B – to illustrate the scheduling dependency between them.
Tips to Manage Dependencies
Here are some tips on how to manage project dependencies efficiently.
- Identify and Visualize – Gather your team and brainstorm on all possible dependencies and relationships among tasks. Create a diagram to show these. You will then use your dependency diagram to schedule and prioritize your project activities.
- Build Cross-functional teams – When you have a cross-functional team, it eliminates the possibility for resource-based or cross-team dependencies to occur.
- Ensure Quality is Embedded in the Work – Train your team to produce quality output e.g. clean code. This is especially crucial for cross-team projects.
- Avoid Complex Architecture – Aim for modular and flexible system architecture and framework. Aside from enabling seamless deployments, this also helps teams simplify work and eliminate dependencies.
- Track and Monitor Dependencies – Use a project management tool that lets you track relationships between activities. Project dependencies are tricky and when not tracked can delays and other project issues.
Show Dependencies on a Kanban Board
When it comes to project dependencies, visualization is key. Using a Kanban system will help surface these dependencies as well as any constraints in your project and workflow.
If you use an online Kanban board, which I highly recommend you do, you can take advantage of its card linking features to keep track of your dependencies and task relationships. If you’re working with more than one team on a specific project, you can link cards within a board or between multiple boards. This way your tasks and their related tasks are visible in one space and easily accessible to you and your team.
Project dependencies are inevitable. But it doesn’t mean that we are helpless. With the right mindset, techniques, and tools, we can deal with them efficiently and successfully deliver on our project goals.