Marty Cagan recently offered a nuanced perspective on what happened to agile. Let’s try to understand why.
Marty breaks down the value stream into three buckets: strategy, discovery, and execution. He asserts that too many agile projects focused on the execution. Bob Martin stated that agile was a creation by technical people and co-opted by project managers. That helps explain why execution eventually became the focus. Both rightfully point out that Agile has increasingly become about the process, and less about the principles.
The question, then, is why has agile come to focus on process and execution?
Agile first upended waterfall processes in the late 90s and early 2000s. Digital consumer products weren’t nearly as pervasive, and we were largely solving well-defined operational problems for enterprises, e.g. transaction processing, inventory management, etc. Having “the business” in the same room as “the devs” was radically simple and allowed us to optimize for communications and to embrace change. The results outperformed waterfall-led projects.
Today, in SaaS and mobile apps, the context is very different. Problems aren’t as well-defined. We’re not automating processes, we’re developing products. Your users are no longer the settlement operations team down on floor 23 of Willis Tower. Instead, your audience is an entire global market (and hopefully a well-defined segment thereof!).
We’re no longer co-creating solutions with our captive users. To be fair, the Agile Manifesto uses the term customers instead of users — but in the 90s and early 2000s these customers were largely internal stakeholders. Cagan points out that delivering “working software” to our users, as the Manifesto states, is no longer sufficient. We need to deliver outcomes to a market where the cost of change is low, competition is high, and the barrier to entry is signing up for AWS’s free tier.
When focused on delivering valuable outcomes to a fickle audience, execution is necessary but insufficient. A well-tuned execution machine allows you to embrace the change inherent in sensing and responding to market conditions and customers’ needs. But that doesn’t mean you’ll deliver value, precisely because the problems being solved for are no longer well-defined. Strategy and discovery, two thirds of Cagan’s value stream, become the stars in this context.
Agile has failed to provide a solution for this new reality. That is the why. Agile lived up to its promise of providing a better way to build software for internal stakeholders. But to develop sellable products — to deliver outcomes to a market — you need to consider the entire value stream.
But there’s surely not a singular root cause. What do you think contributed to the why?