How do we decide what’s most valuable to the organization, and then how do we make trade-offs with scarce resources to pull from to achieve our most valued goals?
To figure out how to deal with this and find the answers, we need some sort of governance model. Governance speaks to how we coordinate and manage the flow of work, decompose requirements, and make prioritization decisions and economic tradeoffs—all in the face of uncertainty.
Unfortunately, our industry tends to focus on implementations at the team or enterprise level. But the reality is that, if we try to blindly implement practices like Scrum or SAFe without creating the context via things like a governance, structure, and metrics, within which our chosen method can actually work, what we end up with is a lot of methodology that isn’t actually delivering the business benefits we want.
Managing and Eliminating Dependencies
Almost anytime we’re doing something like this that appears more complicated than it needs to be, it’s because there’s some sort of organizational impediment in the way that’s forcing us to do something we don’t want to do to get the outcomes we really want. Dependencies are a perfect example of this. Almost any kind of organizational impediment is a dependency in some form.
What we want is Business Agility, not just team-level Agility or enterprise-level Agility. But we need to start at the team level to be able to have that kind of conversation because what’s driving the need for governance is the level of dependencies between teams.
If you don’t have any dependencies between your teams, then you probably don’t need a lot of governance. If you have some or many dependencies between teams, then you have to entertain some level of governance. Although we would like to get to a place where we don’t need to have governance across the entire stack, we have to start somewhere.
Scrum basically says all dependencies are going to be encapsulated within the team. But if we can’t and don’t have dependencies encapsulated within a particular team, we have to utilize governance to coordinate and balance trade-offs and look ahead to deal with dependencies and cross-cutting concerns.
So in the early stages of Transformation, you might organize around business capabilities, then put in enough governance to deal with some of those business capabilities—then you can start to see where some of the dependencies are, and you can start to break those dependencies.
Sometimes we get greater business Agility by breaking dependencies. But some of the dependencies can’t be broken in the current state they’re in, or it doesn’t make sense to break them, it’s not cost justifiable, or we’re just not willing to make the investment. Maybe it’s too risky. But we break all the ones we can.
Utilizing Compensating Controls
In the presence of dependencies we can’t break because of the presence of ill-suited organizational design, ill-suited governance, and ill-suited control mechanisms for Agility, we must establish compensating controls to help the organization begin to start making things into smaller pieces and operating more autonomously. Compensating controls become a way of almost preparing the field, getting the impediments out of the way, proactively getting some of the design decisions made so that teams can establish stable, predictable velocity.
And then once we’ve done that, if we recognize we have some waste and in the system, we’re going to reorder our business capabilities and make it a value stream. So even though there are dependencies in the system, they’re able to be more locally managed.
If we have dependencies between a product owner and the rest of the organization, or even between the teams, we have to have some sort of mechanism for getting in front of that because the late resolution of dependencies gets in the way of everything when it comes to Agile delivery at the enterprise level.
If we’re able to break dependencies and reorganize the structure from its starting place, then we have a shot of starting to deprecate some of that control and allowing those teams to operate with greater Agility, which can get us started on the path to business Agility.