To build or not to build? Maximise outsourcing to deliver MVP quickly
You’ve heard it a million times: “there’s no need to reinvent the wheel”. Yet, we often find that considerable resources have been poured into building another version of a software tool that already exists on the market, says Craig Cook, principal engineer at Agile consultancy, Catapult.
A digital presence never comes cheap, even a barebones mobile app costs a median of £140,000 to develop, according to B2B services directory Clutch. For an organisation modernising its systems, building something that’s already available could deal a blow to the bottom line and for a startup with limited seed funding, it could be fatal.
There is software that are common and important to almost every business, such as customer relationship management (CRM), enterprise resource planning (ERP), or HR onboarding. From Asana to Zoom, all have corresponding off-the-shelf tools available, many of which are open source and some of which are even free.
Whether starting a new business or modernising an existing one by moving away from legacy software, organisations can choose between using these existing software tools or building their own solutions.
This was clear in an investors call held last week by Air India which is currently attempting to shed decades-old bureaucratic processes and software to recapture customers from its rivals.
Reuters quotes chief executive officer Campbell Wilson, saying, perhaps unwisely, that, "Frankly the system is almost so bad it's good," adding that this offered the chance to start from scratch rather than "jerry-rig" existing architecture.
"What they are saying is absolutely right – they should go back to a blank piece of paper but saying it and actually doing it are two very different things," said Keith McMullan, a partner at Aviation Strategy, a specialist strategic consultancy for the airline industry. “The danger is that you keep on fighting legacy-related fires.”
Clearly, if an organisation strikes the wrong balance between building tools and delivering products, it can cause problems. For example, a startup with a development team that gets bogged down in building custom tools, such as a customer login mechanism, may miss out on opportunities because delivery of their minimum viable product (MVP) is delayed.
The login tool example illustrates another potential issue with bespoke software: security. Protecting customer accounts from constantly evolving threats can consume significant resources that could otherwise be used to improve customer experience, launch new products, and develop new markets.
“Login mechanisms can be a target for cyberattacks such as SQL injections or cross-site scripting,” says Alex Fishlock, CEO at Catapult. “A security service provider might find an issue with the cryptographic cypher it uses and release a patch to update the software. If an organisation has built its own login tool, it should be doing the same thing, regularly assessing security, and releasing updates, which is a pain and takes time and resources. By outsourcing services like security, businesses can free up these resources and focus on developing what’s critical to the organisation and missing from the market.”
But there are cases where the specific needs of a business cannot be met by off-the-shelf services. For example, if an organisation needs a custom mapping solution that integrates its CRM or ERP system, it may have to develop its own.
“That’s where the latest principles of good software engineering come in,” says Louise Cermak, principal consultant at Catapult. “When developing software, we find lean, agile, incremental delivery gets the best results. But good software engineering is more than just buzzwords like DevOps, Lean or Agile. It means when you build, you build the right thing – you understand it, your customers want it, it brings them value and it's easy to iterate in the future.”
We all know there’s no need to reinvent the wheel, but you’d be amazed how much we see people doing it. For further detail on whether to upgrade or replace a legacy system, read Catapult’s case study on its work with the MCA (Maritime Coastguard Agency), digitalising the UK’s ship register.