Is it more cost-effective for a company to develop custom software or to buy a standard off-the-shelf package? by making the right decision, you will enhance your business performance.
The direction taken by most IT companies is clear: why should we reinvent the wheel every time? If the solution to a problem already exists, and is widely used, why should we behave any differently? But is that always true? Or is it that sometimes the uniqueness of a company's processes (which then also makes its competitive advantage) deserves an entirely customized solution?
Custom software vs. standard package: this is a complex and debated issue, so we won't even try to give an unambiguous and definitive answer, but simply provide some metrics for taking decisions, with the aim of helping decision makers to face the dilemma with a rational approach.
Custom or standard? Higher cost and more control or lower cost but less control?
This is certainly the standard paradigm on which the "buy or make" dilemma moves: on the one hand, tools that cost more (because they are purpose-built) but that fit our processes like a glove, and on the other, solutions that tend to be lower in cost but that require us to revise our processes (the supplier can amortize the costs of making the product over thousands of customers).
Clearly, there is no right or wrong choice (we cannot say that standard software is always preferable to custom software, nor vice versa), but we can reflect on some aspects that, from time to time, from problem to problem, can help us to make an efficient decision. So, let's start by isolating the problem: each software project is different and deserves dedicated consideration & deep analysis. Now, let's try to examine three aspects that IT managers can't fail to consider whenever they have to decide whether to buy a market software or make a custom one:
The first point to question is, without a doubt, cost. Literature and common sense tell us that the cost of a custom software product is higher than the cost of a standard package. But are we so sure? Sometimes the licensing costs that must be paid annually or monthly to the supplier are likely to weigh heavily (and lastingly) on the budgets of companies. Careful reading of the contracts is a must;
Let's try now to approach the question from another point of view: what is the total cost of ownership of a software?
It is not enough to take into account the start-up costs of the project; a long-term approach must be maintained and operational and recurring costs must also be included (training, support, maintenance, software upgrades, constraints with respect to needs arising after product implementation, etc.). But, even considering all these aspects, are we really sure that the cost is a sufficient parameter to give us a complete vision of the problem and to orient us on the best choice?
Even on the subject of risk, common sense and the literature teach us that the risk of a custom software project is undoubtedly more significant than that generated by a standard product.
Budgets and delivery schedules are not always kept within budget and this is undeniable. But even using software that we don't directly control, whose source code we don't have access to, is a risk. The security vulnerabilities that important vendors have discovered in the last years are well known. Also, when we decide to purchase a software package, do we have absolute confidence that it will be able to support our processes well into the future?
Should they, as is natural, change and evolve? The risk of having to replace the package some time after its integration exists and this necessity would lead to a doubling of costs. In the end, even the risk parameter doesn't allow us to provide an unambiguous answer. Probably the most relevant aspect in choosing whether to buy a standard product or invest in a custom solution is the following: What is the problem we want to solve? Does it have a major impact on the company's core processes, or is it a service on the side?
This, as anticipated, is undoubtedly the crucial point: every company is born with the objective of solving one or more problems of its customers and on this builds its value proposition. Is the software to be implemented intended to solve or help solve any of those problems? Does it add value to the service or product we offer to our customers? These are the most important questions to ask.
It's clear: we wouldn't even consider creating a customized email service in-house (unless our firm was an email provider). It would mean allocating energy and resources to a marginal aspect of our business. The same concept applies to other standard aspects of running a business: accounting, for example. In these cases, the only goal we need to set ourselves is to reduce costs and standardize processes. Nothing more.
But this changes when the software we are considering purchasing directly impacts our production process and our business, determining our grip on the market. One question immediately clarifies the issue: would we use the same software as our competitors to solve our customers' problems?
Sure, there are customizations: but are we sure that it is economically convenient and operationally efficient to take our software and modify half of the code to meet the needs of our business?
Not only that, with the purchase of a software package, all those characteristic processes of our company that differentiate it from competitors and make it unique in the eyes of customers should inevitably be adapted to the software itself. As we did in the introduction, let's try to rephrase the question: every time we need to implement new software, we need to ask ourselves if we are going to adapt our processes to the software or if we prefer to adapt the software to our processes.
In short, we must evaluate how difficult (and convenient, on the business side) it would be to modify our workflows to adapt them to a generic technological platform. But, above all, we must take a long-term view: if my company changes, will that software be able to evolve accordingly?
There is no doubt about it: every company is characterized by specific and particular processes, which determine its competitive advantage over its competitors. Here, on these, really, it is worth to carefully evaluate the solutions proposed by the market and understand what would be the costs and operational savings resulting from the adoption of a customized software.
Wanting to sum it up: buy software on the side and build custom software for those core processes that set you apart from the competition.
Choosing between a custom software product and a standard one is not easy and there is not always a right answer.
However, we can adopt a bit of logic to try to make as rational choice as possible:
Most IT companies would not publish an article like this. They have vendor ties such that they have no interest in highlighting to prospective customers the benefits of adopting custom software solutions.
Onectus is traditionally focused in the development of custom software with cutting-edge technology standards. Discover our technology standards for custom development
Our working method always starts from the analysis of the business processes to be digitized: only after this, we identify the most suitable technological solutions to meet the needs of customers. At the center of our approach, therefore, is the customer and his business. The software comes next. So, if you're looking for a solution to digitize your processes and can't choose between packaged products and custom solutions, ask us for advice. We will be happy to support you, analyzing together with you which choice is more efficient for your context.