Software – Build or Buy

“If the best software application you can find has any less than a 95% match with what you need it’s probably going to be more cost effective to develop bespoke software. If the best software application you can find has less than a 90% match then it’s definitely better to develop your own software.”

New businesses attract and retain customers by offering products and services which are superior to the market or offer superior value propositions. They achieve this by implementing new operational processes which yield design or quality improvements or cost reductions in relation to the market.

How does a business find the new functionality they need from existing software applications?

Well, the answer, unfortunately, is they often cannot.

They can often find 90% of what they want within the software which they can buy “off the shelf” but it’s the extra 10% which are the very features which differentiate them from their competitors in the market. So if they compromise their requirements within that 10% then they reduce their ability to win new customers. Usually this becomes apparent 6 or 12 months after the decision to purchase was made. By that point, a large investment has already been made and it’s too late to turn back. They have only 3 options:

  1. To constrain new ideas and focus only on the features that the new system can handle
  2. To implement new ideas outside the new system
  3. To pay for bespoke enhancement of the new system

Well, the first option is clearly the worst and anyone who has worked in a company where the IS department is known as the “sales prevention department” will agree.

Option 2 will happen if the business has managers with the willpower to see their ideas reach the market “come what may…”. But it causes quality control problems and ultimately leads to instability and inefficiency.

Ultimately Option 3 will be deployed and the cost of doing so will be significantly greater than it would have been if only the bespoke development option had been chosen at the beginning of the process.