The debate around the advantages and disadvantages of commercial off-the-shelf (COTS) software versus fully Customised Software has raged since the first COTS solutions were released to the mass market in the 1990s. Since then a third option – Platform Software – has become a popular alternative.
Platform Software offers the best of both, explains Denis Bensch, chief information officer of FlowCentric Technologies
"Think of the three software alternatives on a spectrum of development, with COTS on the left, Platform Software in the middle and Custom-Built Software on the right. There are clear differences between them, with each having its own set of pros and cons."
Bensch uses a simple motorbike analogy to explain the differences between them.
Customising Your COTS Solution
On the left, in the COTS corner, is the motorbike you would purchase off the floor at a motorbike dealership. It would be fit for purpose, either on-road, off-road, standard, cruiser etcetera, as designed by any one of the popular motorbike manufacturers. You may be able to customise it slightly, but any modifications would need to be done by the original manufacturer.
In the same way, COTS can be purchased from a computer store or downloaded from a vendor’s website. The user's ability to change its aesthetics or functionality would be limited to what the manufacturer had originally intended, with no other modifications or upgrades allowed.
Managing Your Custom-Built Software Solution
Continuing with the bike analogy, in the Custom-Built corner is the specialist bike builder who produces one-off motorcycles from scratch. Everything from the frame to the paint-job are intended for one specific bike. Because the bike is unique in virtually every regard, it cannot be serviced at just any motorbike dealership, but rather a highly skilled specialised bike technician.
Custom-Built Software is the same. It’s developed for a single business that doesn’t want to adjust its systems to fit the constraints imposed by COTS, instead, it requires the software to conform to the way its business works. So, a software development house needs to develop software from scratch and according to unique specifications. There will be no other system like it.
Tailoring Your Platform Software Solution
Between the two extremes is the customised bike. This bike is built from a basic design but its frame, wheels, possibly the fuel tank and mirrors, can be sourced from one of the commercial bike models. Once the customised bits have been stripped off, the bike remains recognisable as a bike from one of the popular motorbike manufacturers, and could likely be services by one of the manufacturer’s qualified mechanics
In the IT world, the equivalent to a customised bike would be Platform Software, which delivers some functionality in a ready-made format, but is not a complete solution. It requires programming and additional input to complete it.
"A lot of people opt for Custom Off-The-Shelf Software, and in many instances, this make sense," Bensch says. "However, depending on one's requirements, budget, or total cost-of-ownership concerns and other factors such as access to resources, and time-frame, there are many businesses that want a solution which can be partially or wholly customised."
Factors to consider when deciding between COTS, Platform, or Custom-Built Software
Resources Needed to Build, Deploy and Maintain the Solution
- With a COTS option, you don’t need many people to implement or maintain the software, so human resourcing costs are the lowest with this option and resources require minimal management.
- For Platform or Custom-Built Software your company will need at least one programmer to build your solution, and great developers are costly resources. To get the solution that you want, personnel will need to contribute to initial scoping sessions.
Initial Costs vs Long-Term Costs
The purchase price of any software solution, which may not cover the cost of future upgrades, is an important consideration when deciding between the three options.
- COTS solutions normally come with an annual licensing fee over which you have no control. In some instances, this fee could result in you paying the full purchase price for the software every few years.
- There are no licensing fees associated with Custom-Built Software, but the initial cost of building the solution from scratch can be very high, depending on how many programmers are required and how long it takes to develop the software.
- In the Platform Software scenario, the licence fees tend to be manageable while the initial development costs may be high, the time needed to build the solution will be considerably less than for a wholly custom-built solution.
Scalability of the Software Solution
- There is seldom much scope for scalability with COTS solutions, which are invariably built to accommodate a set number of users, departments, or tasks. As your business expands and your needs grow it is likely that you’ll have to replace the COTS solution.
- The same scalability restrictions could also apply to a Custom-Built solution. Unless the initial specifications included the ability to scale the software to accommodate future growth and changes, the cost of scaling the software could be prohibitive.
- The scalability of a Platform Software solution will depend upon the development stack on which it’s built. For example, if it’s built on the Microsoft development stack, it could have the ability to scale significantly. It all depends on the nature of the base product.
Agility and Flexibility
- The speed with which a software solution can be altered in response to strategic, legislative, or environmental changes can differ considerably between the three options. In the COTS scenario, the user is wholly dependent on the manufacturer to roll-out a new version or provide a patch to accommodate changes. These changes are normally only deployed when the bulk of the software’s users require the modification, such as an increase in value added tax.
- With Custom-Built Software, making changes could take considerable time and effort. Or, if the required changes are relatively easy to effect and your developers are available, it could be done rapidly.
- In the case of Platform Software, it may be possible to simply change the application that is built on the platform. This is an easier process than changing the underlying code. Changes could thus be implemented quickly and cost effectively.
- Using stock-standard COTS means that the processes you use to run your business are the same ones that your competitors are using, and thus provide no kind competitive advantage. However, certain processes, such as financial processes, are standard and simply need to be handled as efficiently as possible.
- Custom-Built Software and Platform Software are more likely to deliver a competitive advantage when they are designed to support specific processes, provided that these procedures have been correctly specified. If any of the processes need to be modified it will likely be easier and more affordable to effect changes to the solution built on Platform Software.
"When it comes to deciding which software route to take, the key is for the organisation to balance its immediate business needs with its long-term strategy and growth goals," Bensch says.
"Find the processes in your organisation that are unlikely to change and buy the appropriate packages for those. Furthermore, identify the processes that are likely to change or need more flexibility as the business grows, and ensure that your software solution can adapt to these needs.
"In addition, only purchase from reputable vendors that are likely to support the product for the foreseeable future. It is critically important to ensure that the solution can easily integrated into other systems and technology solutions.
"The final step is to explore how you can optimise your business processes and decide whether these changes will require customisation. The trick is to find the sweet spot between the way that prospective COTS products work, your need for customisation, and your financial and human resources capabilities."
To find out more about the Platform Software or Development Services that
FlowCentric Technologies offers, simply request a call, we’d be happy to help!