Using COTS solutions
When to Choose COTS
In some cases, if there is a COTS system that will fit your requirements, then there may be an opportunity for cost savings.
Fully assess whether commercial off-the-shelf (COTS) solutions fit your projects’ needs.
In choosing whether the COTS system is right for your project, make sure to include following factors in your analysis:
- The transition from legacy systems
- Ongoing operations and maintenance costs
- Costs related to being locked in to a single vendor
- Costs associated with maintaining customizations
Modifying COTS solutions can have unexpected costs.
Almost inevitably, COTS solutions require modifications in order to meet your needs. Configuring a COTS product to meet your needs is not inherently a problem, but we often see modifications to the underlying code base grow to the point where the system cannot handle any updates from the COTS provider. This poses security risks and can be a risk to the long-term viability of the tool.
If you can already see the ways that the COTS tool does not meet your needs, it’s worth asking if your process could be adapted to meet the way the software already manages it.
Alternatively, if process changes aren’t feasible, states can explore requiring the COTS provider to offer a plug-in or bridge API that would allow independently-developed custom code to meet the state’s unique business need without creating unique interdependencies that will compromise the maintainability of the COTS solution.
If the problem domain is core to your work and is where you would like to innovate rapidly, it will not make sense to choose COTS. On the other hand, if it is auxiliary to your work and you can adopt the process implemented by the COTS product, COTS would make sense.