True agility comes by breaking dependencies between teams across the organization. It all begins by defining a rational system of delivery for the enterprise. Next, healthy culture and solid practices should emerge within that rational delivery framework. For those who wish to transform their organizations, solving for the issues that get in the way of effectively practicing agile is what should guide you. First, focus on the fundamentals of agile delivery, while systematically and methodically breaking dependencies. In this way, we can achieve true enterprise agility. So, what are the dependency types we should be looking out for?
May emerge when the backlog does not sufficiently meet the definition of ready, when there is too much work in process, or requirements are being shared across teams. Often, multiple teams can be dependent on each other to deliver a single feature.
May originate from highly matrixed organizations, not having instantly available people, or having limited access to SMEs (subject matter experts). Though companies try to keep people busy, sharing people between teams often results in delays.
May originate from large products with diverse technology, too much technical debt or defects, or low cohesion and tight coupling.
Where Dependencies come from
- Lack of clarity. Your system of delivery needs to be well understood. Your backlog must be clear and ready. There must be a shared understanding of governance.
- Lack of accountability. People must know what they are responsible or accountable for. Ensure you have the proper organizational structure.
- Lack of progress. You need metrics and tools to measure the system of delivery. At scale, a physical team board is not enough to provide real-time progress. Make sure you are leveraging the proper metrics to ensure you can see value flowing through the system of delivery and there is a balance between capacity and demand.