Which software approach is right for my business – Commercial Off-The-Shelf vs. Custom Software Solutions?
The key pros and cons and what to consider before moving ahead with a software project.
Is your business looking at updating or implementing a new software system to improve business productivity and processes? If so, the questions you are asking is should you buy a commercial off-the-shelf software solution, or engage a custom software development agency to build a solution to meet your business needs. This decision is not an easy one and should not be made lightly, as both options have benefits and pitfalls.
Commercial Off-The-Shelf Software solutions:
There are a number of vendors that offer Commercial Off-The-Shelf Software (COTS). What is COTS you ask, COTS is ready-made software that delivers specific business functions which will most likely meet your core businesses needs, but also require work-arounds or for you to purchase additional COTS software, to meet your business needs and day to day operations. COTS solutions are mass produced so that they can cater to a wider market, usually to meet the needs of different business types and industries. As they are widely available, they are most likely being used by your competitor as well, this can mean that your clients (and staff) will have the same pain points regardless of who they choose to do business with.
Custom Software solutions:
Custom software development agencies, like Code Brewery, create software solutions specifically for your business. This means the software will deliver the functionality you need to operate your business day to day, as well as meet your customers needs. With custom software development solutions you never have to find alternative products or manual workarounds which will give you an edge over your competitors.
Key Business Decision Areas:
Setup and Implementation Cost
- COTS solutions – lower upfront costs. COTS is mass produced so the vendor recoups development cost via sales volumes and ongoing maintenance costs. In most cases COTS software solutions will be less expensive in regard to upfront costs, but as there are usually ongoing licence fees, usage costs and customisation costs, in the long run are the more expensive option. Also if your business requires a lot of customisations, or additional COTS software solutions to meet your business needs, the upfront cost can end up similar to custom software solutions.
- Custom software solutions – higher upfront cost. As the software solution is a custom business system solution that has been tailored to meet your business needs, the upfront cost will be more expensive. The custom software developer will need to scope (define) the business requirements and processes, understand the existing pain points, and identify the best software approach to meet your business needs before moving to bespoke design, develop and implementation (deployment).
- COTS software solutions – faster to implement. As COTS software solutions have already been scoped, designed and developed, they are usually operational for your business in a shorter timeframe than a custom software solution. If you require a lot of customizations, or additional COTS software solutions to meet your business needs though, integrating and customising COTS software solutions can end up taking longer than custom software solutions.
- Custom software solutions – slower to implement. As custom software solutions usually require a project to be established, and go through the full development lifecycle (Scope, Bespoke Design, Development, Testing and Implementation), they can take longer than a COTS solution.
Support and Training Complexity
- COTS solutions – provide generic training material and support. As COTS solutions are mass produced, there are a number of ways you can get support for you or your staff – training material, community forums, COTS help and support services etc.
- Custom software solutions – provide customised training material and support services. As custom software solutions are built to meet your specific business requirements, and you are involved with the software development, the user interface, system workflows, etc, custom software solutions are more intuitive and user friendly for you and your staff. Software Development Studios will also provide you with customised training material and support services as required.
Long term relevance of the solution
- COTS solutions – limited to the COTS vendors investment in the product. COTS Vendors will update the software when they deem it is required, and they are issued based on the COTS Vendors schedule. Some COTS Vendors issue updates frequently which can be positive and negative, frequent updates may provide you with additional functionality but it also may introduce functionality that does not meet your business needs, or remove critical business functionality without consulting you. When these updates impact your business processes, you have a few options, change your business process to meet the new software workflows, or customise the COTS software to meet your business requirements, or find a new software solution. All of these options come with financial and business productivity impacts.
- Custom software solutions – driven by your business needs. As custom software solutions are built specifically for your business, you are in control of when the software is updated or changed. For example, if a security exploit is identified, you and the custom software development agency will discuss and agree on the best solution for your business to remove or resolve it.
Also any business changes or improvements you wish to implement in the custom software solution can be developed as you require, meaning the custom software solution evolved to continually meet your evolving business requirements.
Software Solution Ownership
- COTS solutions – owned by the COTS vendor. If your business ever wants to move away from the COTS software solution or vendor, you will have to either rebuild the software (custom software solution) or purchase new COTS software. Also some COTS vendors have limitations on the data you can export from the system, and/or there may be compatibility issues with the data from the existing COTS software to the new software solution.
- Custom software solutions – Owned by you and/or the custom software development agency. Depending on your agreement with the software development agency, you can negotiate to have full ownership of the software and its IP. This means if you need to change development agencies, for any reason, you won’t have to start from scratch like you do with COTS software solutions outlined above, saving you time and money in the long run.
Software Solution Security
- COTS solutions – the responsibility of the COTS vendor. The COTS vendor will implement and maintain the software and any supporting systems (such as hosting environments etc) to the level of security they deem appropriate. This means if your business has specific security needs that are implemented by the COTS vendor you will either have to pay to have the software hosted separately, or find other ways to secure your businesses data and software. Also, some COTS vendors will not provide full visibility of what security measures are in place and you are left taking the COTS vendor’s assurance that your business data is safe.
In the event that the COTS software’s security controls are exploited, it is up to the COTS provider to investigate and resolve (usually by releasing an updated) in their own timeframe. There have been a number of instances in the recent past where COTs vendors have been compromised and hundred and thousands of customers have had their data stolen due to insufficient security within the code or hosting environment etc. COTS products tend to be targeted by hackers, over custom software solutions, because they are mass produced and marketed, meaning exploiting them may be more monetarily rewarding due to the larger user base.
- Custom software solutions – responsibility of the custom software development agency but customised to meet your business needs. The custom software development agency will work with your business to identify the security requirements needed to protect your business data. This means that the code and hosting environment will be “locked down”, as much as possible, to ensure your business data is highly secure.
In the event that the custom software solutions security controls are exploited, the custom software development agency will work with your business to agree on the best solution for your business to address the security breach and within your agreed timeframes.
As you can see, there are a number of benefits and disadvantages to both COTS Solutions and Custom Software Solutions and determining the best approach for your business will depend on your business. Your business’ software requirements, security needs, budget and timeframe, ownership needs, etc need to be considered before making a decision, and making the right decision can not only save you money, but also a time and headaches in the future.
As a custom software development agency, Code Brewery works with you to find the right solution to meet your business needs, timeframe and budget. Contact us for advice or help with your next COTS or custom software solutions project.