A week or so ago, I did a post called Agile Adoption and Scaling Patterns. In that post, I introduce a five phase framework for bringing agile into an organization. This adoption and scaling framework is going to guide the fundamental structure of our upcoming book. We haven’t decided if these phases will be chapters or entire sections… right now I am thinking sections… but the primary story is going to be around incremental adoption and scaling in the enterprise.
There are going to be several major themes that run orthogonal to the primary adoption and scaling discussion… ideas that cut across all the chapters. The most important of these ideas is something Dennis calls Capability Analysis. Our premise is that at each level of your agile transition, there are a series of conversations that have to take place. Fundamentally… these conversations are around identifying the most important capabilities we need provide back to the business.
The word capability is pretty overloaded… untangling the language is something that we are working through right now. As I see it, organizational capabilities come in three major flavors:
First, we have Value Capabilities. This is the stuff we provide back to the business that the business might sell to an actual customer. Here I think about things like Projects, Epics, Features, and User Stories. Value can be defined in several ways depending on the environmental context and the consumer of that value.
Second, we have Core Capabilities. These are the things that we have to do well and directly impact our ability to create Value Capabilities. Here you have things like defining requirements, prioritizing requirements, architecting systems, writing software, testing software, frequent delivery, and deploying builds.
Last, we have Supporting Capabilities. Supporting capabilities are things like managing the project, communicating status, building CI environments, invoicing customers and collecting payment. These are the capabilities of your business that enable the Value Capabilities and the Core Capabilities.
Like I said, we are untangling this a bit right now… so we might shift our thinking around as the book becomes more concrete. Categorization might shift around depending on your context and we want to be really clear about that context when having the discussion. The point is… our conversation about agile transitions shouldn’t start with what practices we want to adopt… that is how we fall into process thinking. We’ve got to start thinking about what capabilities are most important to focus on first.