Custom vs. COTS

What’s the best way to achieve all of the requirements of your new system? Should you go down the bespoke route and develop custom built hardware and software that fits the bill perfectly, or should you go for Commercial Off The Shelf (COTS) hardware and software and maybe compromise on some of the non-functional requirements? Zircon has been involved in both camps and has formed the following views.

Our experience of bespoke systems has come from the rail industry where safety approval means that systems have very long lifetimes. Type approval of road systems provides the same scenario and every industry has its reasons for not updating. The systems become reliable as they start to climb the later end of the bathtub curve, and obsolescence means that spares become as rare as rocking horse droppings.

Software that is completely bespoke, right down to operating system or scheduler or whatever, rapidly becomes a black art. The engineers that understand the software leave (retire) and replacements that can, and are willing to, work on old software, are very hard to find. Fixing and adding functionality to this software is extremely difficult.

COTS is not a clear cut answer! The “Betamax syndrome”, backing the best but not taken up technology, is common. How many Multibus 11, STEBus and VME Bus systems are still in operation, clinging onto life only due to the dedication of a technician? In safety critical systems, can the level of testing required be achieved if the system includes a COTS operating system?

A custom built solution means that you are in complete charge of every facet. You can tailor the hardware and software to the minimum required functionality, and nothing more. This level of control comes at a high price if you are building low volume, high availability, long life systems.

Provided you avoid the Betamax, the problem of obsolescence is eased and spares are readily available.  COTS hardware also gives you the advantage of having someone else do the R&D necessary to exploit technology advances.  The amount of work required to enhance the functionality of a system is greatly reduced.

Picking the right operating system, one that provides the required functionality and safety, means that your software can also keep up with technical advances. Open standards may mean that you can import software functionality that has already been tried and tested. Also, of course, the task of finding engineers to develop, maintain and enhance software running under a COTS operating system is greatly reduced.

So to conclude, if you are developing a high volume, low functionality, short life system then bespoke is for you. If you have to develop a system that you know will outlive you and will need to be enhanced, COTS is the smart choice.

More From The Blog

IR35, Here it Comes Again…

IR35, Here it Comes Again…

IR35, Here it Comes Again...In 2021 the reform to IR35 Off-Payroll rules is to be rolled out to the private sector. As before the reform will only affect companies that do not meet the following attributes: an annual turnover below £10m fewer than 50 employees or a...

Solving the Resource Conundrum

Solving the Resource Conundrum

Solving the Resource ConundrumPicture this. One minute all is fine and dandy, you have access to all the resources you could possibly need, then bam an unexpected challenge arises. Suddenly you find yourself lacking the capacity to meet the new need. What are your...

Quality – An Aid to Produce Consistent Rubbish

Quality – An Aid to Produce Consistent Rubbish

Quality - An Aid to Produce Consistent RubbishAnother year has passed, and myself and a colleague have hosted a BSI auditor for our annual ISO9001/TickITplus check-up, and in fact this was more than the regular check, in that it was our 3-year re-certification audit,...

The Hazards of Legacy Systems

The Hazards of Legacy Systems

The Hazards of Legacy SystemsBeing the owner of a software system with a dedicated customer base sounds like the kind of position one would like to find themselves in. At least until it gets superseded and you have to face dealing with a legacy system. Many developers...

How to Test Without Access to The Test Environment

How to Test Without Access to The Test Environment

How to Test Without Access to The Test EnvironmentIn many of our previous articles, we have expressed the importance of achieving a high standard of testing. Potentially blocking this achievement, several factors can come together to affect the quality of your...

The Technical Workshop – How To Make Them Work For You

The Technical Workshop – How To Make Them Work For You

The Technical Workshop - How To Make Them Work For YouAnyone experienced in product design will understand just how valuable a facilitated workshop can be. Bringing together a project's key stakeholders into a single space allows for the exploration of diverse...

Developing Software for Safety Related Systems

Developing Software for Safety Related Systems

Developing Software for Safety Related SystemsSoftware systems should always be both robust and reliable, however the moment you introduce a safety element, this need for reliability increases significantly. The level of safety required is governed by the severity and...

How to Choose an Outsourcing Partner

How to Choose an Outsourcing Partner

How to Choose an Outsourcing PartnerHaving recognised a need to outsource, and worked your way through the initial preparations, you are now in a strong position to seek out a suitable partner. Choosing an outsourcing partner is no trivial affair, so taking the time...