Why we need another agile framework

90% of features fail to deliver the expected business value. Clearly something is wrong.

Insanity is doing the same thing over and over again and expecting different results.

Research by Ron Kohavi shows that only 10% of features developed at Netflix were delivering the expected business value and only 8% at Airbnb. And these are industry leading tech companies. The results in other industries are likely to be even worse.

Agile is the dominant methodology for building software but it has been over 20 years since the agile manifesto was released and we still have terrible performance.

Clearly something is wrong.

The wrong process for the job

Before assembly lines were invented, manufacturing was done by craftspeople who would build the entire product from start to finish. The greatest management innovation of the 20th Century was the separation of activities that craftspeople used to do into small, repeatable steps that could be done by unskilled workers. This allowed for mass production of goods at a fraction of the cost as well as a way to scale production.

Because it was so successful in manufacturing, we applied the same principles to software development. We broke the software development process into separate activities performed by different specialists such as analysts, designers, developers, testers, etc. The assembly line model of software development is how work flows from one specialist to the next; from analysis to design to build to test.

Software development as an assembly line

But there is one big difference between mass manufacturing and software development. In manufacturing we are repeatedly building the same thing but in software we are always creating new things. We can copy and paste code so it doesn't make sense to build the same thing twice.

With mass manufacturing they were lucky that they had centuries of craftspeople building products so they knew there was demand for the products they were building - they just need to make the products cheaper. We’re not so lucky in software because we are now creating things for the first time.

The upfront design process is a more flexible process involving iterative testing of ideas with customers to validate that they really want the product. So if we more accurately map the software development process onto the assembly line all of the design, build and testing steps happen before we get to the factory. The assembly line then just consists of the compilation and distribution of our code. And the good news is we have largely automated those steps already.

Product development is a design process not a delivery process.

The problems with the current frameworks

Our challenge is that all of the frameworks currently on the market treat software development as a delivery process and not a design process. They focus on how to efficiently manage the assembly line to build a predefined solution when we really need a framework that helps teams iteratively develop solutions that customer really care about.

This requires different team structures, different skillsets, different ways of funding work, different governance models and more. Making such large and wide scale changes is difficult and people are too busy running their companies to try to think about all of these internal processes. Frameworks are supposed to help companies by advocating for best practice ways of implementing the changes but as we discussed the current frameworks don’t offer this advice. So companies just stick to the status quo which is why Water-Scrum-Fall is the most popular implementation of agile today.

ZeroBlockers is a framework that actually helps companies implement real business agility. It treats product development as a design problem and defines all of the processes that companies need to more effectively build products that customers love, and work for the business.