Custom software also known tailor-made software is software that is specially developed for some specific organization or other user. Since custom software is developed for a single customer it can accommodate that customer's particular preferences and expectations. Custom software may be designed in stage by stage processes, allowing all nuances and possible hidden dangers to be taken into account, including issues which were not mentioned in the specifications. Especially the first phase in the software development process may involve many departments, including marketing, engineering, research and development and general management.
Custom software development is often considered expensive compared to off-the-shelf solutions or products. This can be true if one is speaking of typical challenges and typical solutions. However, it is not always true; custom software development by a reputable supplier is often a matter of building a house upon a solid foundation and, if managed properly, it is possible to do this quickly and to a high standard.
The decision to build a custom software or go for a commercial off-the-shelf (COTS) implementation would usually reside on one or more of the following:
1.) Finances - Cost and Benefit: The upfront license cost for COTS products mean that a thorough cost-benefit analysis of the business case needs to be done.
2.) Time to market: COTS products usually have a lesser time to market.
3.) Size of implementation: COTS comes with standardization of business processes and reporting. For a global and national player, these bring in gains in cost savings, efficiencies and productivity.