Managing Dependencies Between Scrum Teams
“We can’t start this task because the API team hasn’t delivered the endpoint yet.” If this is a frequent conversation on your team, dependencies are blocking your agility.
Types of Dependencies
Team Dependency
“We need Squad B to build the checkout frontend.”
Technical Dependency
“This feature depends on the database migration.”
Knowledge Dependency
“Only Ana knows how the fraud module works.”
External Dependency
“Waiting for the partner’s API to become available.”
Strategy 1: Eliminate Dependencies
The best way to manage dependencies is to not have them.
Before: “Squad A builds the frontend, Squad B builds the API.” After: “Squad A owns checkout end-to-end (frontend + API).”
Cross-functional teams naturally reduce dependencies.
Strategy 2: Align Proactively
Don’t wait for the sprint to start to discover dependencies:
During refinement
- “Does this task depend on something from another team?”
- “If so, have we already talked to them?”
- “Do they have capacity in the same sprint?”
During sprint planning
- Make dependencies explicit on the board: “Depends on: Squad B — /payments endpoint”
- Assign a point of contact on the dependent team
Strategy 3: API Contracts First
If Squad A needs an API from Squad B:
- Define the contract together — schema, endpoints, response types
- Mock the contract — Squad A develops against a mock
- Develop in parallel — both squads work simultaneously
- Integrate when ready — swap the mock for the real API
This eliminates the “waiting on the other team” problem.
Strategy 4: Feature Teams vs. Component Teams
Component teams (creates dependencies)
- Squad A: Frontend
- Squad B: Backend
- Squad C: Database
A feature needs all 3 squads → guaranteed dependency.
Feature teams (reduces dependencies)
- Squad 1: Checkout end-to-end
- Squad 2: Catalog end-to-end
- Squad 3: Users end-to-end
Each squad delivers end-to-end → dependencies minimized.
Visual Tools
Dependencies: Squads and Dependencies
Dependency Metrics
- Block time — hours/days that items were stuck waiting for another team
- % of blocked deliveries — how many sprint items experienced dependencies
- Dependency SLA — agreements between teams: “if we request by Monday, delivery by Wednesday”
When Dependency Is Unavoidable
- Document it — write the dependency on the board
- Notify early — don’t wait until the day you need it
- Have a plan B — “if Squad B doesn’t deliver, we can do X”
- Escalate if necessary — Scrum Masters negotiate across teams
Conclusion
Dependencies between teams are agility’s greatest enemy at scale. Eliminate them with cross-functional teams, align them proactively, and mitigate them with mocks and contracts. Every dependency removed is speed recovered.