When large organisations build software to support complex business processes the results are often disastrous. The problem is not helped by outdated procurement approaches.
For complex builds with significant uncertainty, there’s an increasingly broad consensus that Agile methodologies deliver better results, yet we continue to end up with sequential, ‘Waterfall’-style delivery processes on large projects, driven by traditional fixed-price contracts. Why?
Waterfall places an emphasis on detailed requirements gathering and documentation as the initial phase of a sequential process. It tries to anticipate everything the software will need to do months or years from now. It’s rarely successful for complex software because it’s rare that anyone gets the requirements 100% right; business needs also change and evolve after the requirements spec is developed. Agile processes allow feedback from stakeholders and customers at the time a feature is being built, to make sure it meets the actual need. Almost all successful software projects are built using this approach. However, there’s a perception that agile means ‘open-ended budgets and time frames’, so organisations are understandably wary.
‘Hybrid Agile’ is an approach that can preserve both budgets and competitiveness while also offering better risk management. The thought process around new software projects in a large organisation is often the following:
The net result of this is becoming locked into a Waterfall project, even though it’s a terrible model for delivering complex software.
We end up here because there are implicit assumptions driving how procurement ‘should’ work. The core objective of a procurement process is to provide value for money and transparency while solving the problem(s) the project addresses as efficiently as possible. There should be some flexibility in how this is achieved.
At Intranel, we call the process of teasing out the feature set for an MVP (and beyond) and quantifying the build effort ‘hybrid agile’ as it offers flexibility while providing the client with more certainty than a ‘pure’ agile approach:
- Hybrid agile provides a prioritised set of ‘deliverable’ features to specify in a contract, along with a range of costs and a timeframe for delivering core features that make up the MVP.
- As needs evolve clients have the flexibility to swap features and change priorities. Providing the overall complexity remains similar, we can stay within budget.
We’re aware agile has its own challenges, and that not every project is suitable, but we find this approach gets clients to market faster, with a better return on investment.