Build vs. Buy Software
Four Questions to Consider Before Deciding On Management Software for Your Business
When deciding which workplace technology is most appropriate for them, some organizations, particularly those with plenty of in-house expertise, consider creating custom-built software to meet their specific requirements.
Building a homegrown solution is almost certain to cost more than buying one — both in the short and longer term — but will other factors, such as getting the best fit for the business, justify the expense?
Here are four questions to consider before deciding which route to go down.
What is the start-up cost? Compare the cost of developers’ time to the software license cost.
The major expense involved in building software is the time that it takes for developers to look at what is required and create a robust and reliable solution.
There is also a secondary decision of whether to build on-premise software or a cloud-based app. Doing the former will also incur costs of buying and maintaining the necessary hardware, whereas building a cloud app involves specific skills and requires the company to be using a cloud platform.
In contrast, the major cost of buying a solution that is already on the market will be the price of software licenses.
What are the operational costs? Who will provide support? How much time will the system take to administer?
Once the software is implemented, whether home-grown or bought, how much time will it take to administer? Will it take half of a person’s time per year, a full time person, or maybe even a small team?
One way to get an idea of the operational costs of existing on-market solutions is to check reviews and get references from other businesses that already use the system, and simply ask how much effort it will take to run.
A few more things to consider:
- Will users of the system require technical support?
- Will successful implementation of the new software require training, change management or adoption initiatives? How much will this cost?
- What about enhancing and improving the software, developing new features and adjusting old ones? Who will do that and how much developer time will that take?
When buying software supplied by a vendor, it is important to establish what kind of customer support is available. When building a home-grown system, it is important to include this vital feature in the cost.
A major differentiator is that a software provider will typically offer customer support. For a home-grown system, this will need to be supplied. Will the development team who built the software be available to provide user support? How much will that cost?
Another consideration is the opportunity cost. Tying up software developers and analysts from your IT or consulting teams to create, enhance, and maintain software means they are less available for other internal work or for more lucrative external projects. Also, if it takes three times as long to build a solution versus buying one then what will the effect of that delay be on business performance?
What are the business requirements? How well will the new software meet them?
Procuring new software, whether by buying or building it, requires a thorough investigation of what the requirements are. It is sensible to check these against existing solutions that are already available because, as we have seen, an existing solution will usually cost less.
One reason for deciding to build homegrown systems may be because business leaders conclude there is nothing out there that fits the bill. This may be because their operational processes are very different from those of other similar businesses.
One question to ask would be, why are our processes so different? A good answer would be that working this way creates a competitive advantage. But sometimes individual businesses’ unique processes have grown up over many years, in part in response to limitations of the existing technology.
Look at how successful businesses in the same sector operate. Rather than focusing on what the existing requirements are of different functions within your business, focus on the outcomes you want to drive.
If the business currently works very differently from other similar businesses, consider what the cost is of working this way.
- Is it justifiable?
- Will continuing down this road create extra administrative burdens?
- Could introducing new software be an opportunity to overhaul and improve the way the business works today?
How ‘future-proof’ will the solution be? How well will it integrate with other software the business uses now and in two, or ten years time?
Some businesses look at building their own solution because they want to control it—deciding what enhancements are introduced and when, and tailoring integrations to other apps or solutions used by the organization. They may also want to create a tightly-coupled integration with other apps or solutions the business currently uses.
But one thing to consider is that in a rapidly-changing business world, flexibility is important. In two years’ time, you may decide to change one of the systems that you use. Are the new technological solutions you are adopting flexible? Do you think they will be able to grow along with your business?
Technological solutions that can integrate smoothly with a wide range of other software applications will allow the business to adapt more easily to changing conditions.
Creating a wholly-owned home-grown solution enables the business to have complete control over what is built in the short-term. But this may be less true in the long term. If the developers who built it move on, then it may not be easy to continue enhancing and developing the system. That tightly-coupled solution which may have seemed so perfect when it was built may be limiting and inflexible two years down the line.
Buying a solution from an established software company that has a long-term development program means the business won’t have sole control. But technology companies today work closely with their customers. They establish customer communities. These customers influence the future direction of the product, they provide references and reviews, they attend customer conferences, and they ask for product enhancements that meet their needs, but which also end up benefiting other customers. Choosing a software vendor who is providing a solution for the long term may give the best chance of a future-proof solution.
Since the emergence of the Cloud, building homegrown software has become much less common. Few companies consider this today, and these tend to be those with an engineering mindset and deep technological expertise. However, even for these companies, the case can rarely be made for building a solution. There are a wide range of software apps on the market today. They tend to integrate well with each other, offering the ability to choose best of breed solutions and fit them together, changing individual apps out as the business develops and grows. In addition, it is almost always more expensive to tie up developers’ valuable time in building workforce management apps for their own business.