Dependency Management in an agile setup

Niroshan Madampitige
4 min readJun 28, 2022
Dependencies can destroy your value delivery!

A dependency is a potential impediment that can impact your delivery — Some dependencies can distract the teams and prevent them achieving their milestones — You may try to #avoid or #minimize dependencies, yet, they might not be fully avoidable.

Let’s learn how to tackle them.

There are three types of dependencies that your team may encounter during your sprints — they could become absurdly challenging to manage.

First, Intra-team Dependencies

The least challenging dependencies is where your team has all what you need to produce a potentially shipable product backlog item. They have no external dependencies. Yet. you may still encounter PBIs that are dependent on each other.

Ho do you tackle such intra-team dependencies?

A Cross functional, self-managed team with a sensible scrum master would be able to figure this out for themselves. For product backlog dependencies, developers make technical dependencies clear to the product owner, and the product owner uses this information to (re-)order the product backlog. If you come across task dependencies in the sprint, developers are responsible to coordinate these tasks.

If you come across such dependencies:

✅ Rework and decompose PBIs to be more independent of each other. Ideally, before sprint planning in a product backlog refinement discussion, but may also be tackled during sprint planning.

✅ In sprint planning, understand the potential risks created by dependencies and agree on how they will be handled during the sprint.

Second Type of Dependency: Inter-team Dependencies

This is more challenging than the first type — Multiple teams work together on the same product backlog. Each team can consume and deliver product backlog items to their completion, but sequencing or technical coordination across teams might be required to deliver meaningful value. Each team can be dependent each other teams.

What can you do to solve these dependencies? well, without any complex thinking, start simple with self-managed cross-team coordination.

If you come across such dependencies:

✅ Ensure, you have only one product owner to minimize conflicting messages

✅ Ensure the product owner is working with the teams to understand how to distribute work

✅ Ensure you do the daily planning for each team and between teams. Evaluate the dependencies daily — Pick a representative form each team to be accountable for timely coordination with other dependent teams. After each team’s Daily Scrum, have a daily stand-up with team representatives to agree on the way forward — ideally, day in day out, all dependent teams are clear the way forward.

✅ Remember that the sprint review is open to any interested party, and members from dependent teams might be interested. Invite them to your review

✅ create sufficient transparency among the dependent teams using the scrum cadences. Inspect and adopt together with your dependent teams —

The third type of dependency is, the most challenging — External Dependencies

Finally, the most challenging case is where a scrum team cannot complete all of the required work necessary to deliver a product backlog item. They need assistance or support from a) another scrum team, b) another department, or c) an external vendor.

Here is how you may tackle these External dependencies

✅ First thing first, ensure these external teams are aligned with your agile mindset and practices — if not, you got to discuss and agree the best way possible to help your scrum team.

✅ Ensure that the hours required for dependency oversight are subtracted from the developer’s sprint capacity.

✅ Ask for delivery commitments from external contributors. Get specific dates and delivery expectations to plan your commitments.

✅ Stay on top of this. Invite external team representation to daily scrums. Inspect frequently that the dependent area is still on schedule. Ask periodically, “Are you on track to meet your commitment?

Retrospect on the external dependency’s performance. Have a fall-back plan to delivery value if they won’t deliver their commitments on time. E.g. an alternative API until the final API is delivered

✅ Finally, do not bring a PBI into the sprint if there’s an external dependency without any clear commitment of delivery. The product owners should be fully involved and accountable to help navigate these external dependencies.

Remember, dependencies can destroy your consistency and value delivery. Look at each dependency as a potential impediment — Focus and put the best possible effort to remove or mitigate their impact.

Happy Scrum!

Source: resources.scrumalliance.org. (n.d.). Scrum Alliance Resource Library. [online] Available at: https://resources.scrumalliance.org/

--

--

Niroshan Madampitige

“Changing the world starts with you…” | Co-founder, Scrum Meetups in Colombo | Agile Coach @ Vetstoria | Speaker