As a growing number of daily tasks and complex enterprise processes require automation, organizations are confronted with the sometimes daunting task of finding the right digital solution within a wide variety of digital transformation options available on the market. In order to understand how Custom Software and Commercial Software differ, we first ought to provide a definition for each of them: A Commercial Software is a piece of software that was designed and developed for the purpose of sale through licensing to an end-user or for commercial purpose. A Custom Software is a piece of software that is especially developed for an organization according to their specific requirements. Now that we have defined Custom and Commercial Software, we can look at a number of examples. Microsoft Office and Google Apps are good examples of Commercial Software. Indeed, many users buy those commercially available software products off the shelve in order to produce documents, spreadsheets and presentations. A customer relations management system that fits the needs of a successful commercial activity or an online medical patient interface that supports the activity of a clinic are examples of custom software development. A software can be evaluated according to 5 key dimensions:
- Efficiency
- Cost
- Time
- Maintenance
- Security
Efficiency
The efficiency of a software is measured in the amount of support for the operation, and increase in productivity it will generate. Commercial software are built as a finished product to be sold in large quantity to a target market. The companies behind those software use heavy marketing to promote their brands and to get the software known. As they become widely accepted by the industry, they tend to follow standards. It is also likely that current and future staff are already familiar with the software. This provides an advantage in terms of user software acceptance, and ability to work with the software. In addition, as many people use the same software the software name is familiar to many, which gives a feeling of reassurance when buying it. Also, the many user base plays in favour of debugging as more bugs are being detected and corrected. On the other hand, commercial software can be heavy to run due to the complexity of their features. They tend to get over-complicated as they cater to a wide range of users within an industry with various business models or across industries, and there is a concern to be sure all items of all businesses ever using the software are included. At the same time, they can become very limitative since they are designed as a finished product rather than an on-going process. As a result, it is many times the business model that needs to adapt to the software rather than the software that is designed to support an existing and successful business activity. Successful business models usually are unique in a number of ways. A commercial software will not be adaptable or even exist for it. Custom software are designed together with the end-user, after a thorough analysis of the needs. This offers two advantages. First the software is tailor-made for the need of the business, without the unused features present in commercial software; which results in a lean, and easily approachable interface. Second, the research and analysis steps are a good introspection opportunity for the teams. It allows them to discuss, review and potentially improve some of their business processes at the time the software company is creating new structures to support them. Custom software allow for increased efficiency and to achieve business goals faster as it is adapted to a specific business without limitations, and it is highly scalable. Custom software provide an organization with the set of tools it needs. While standardization is crucial when selling a car or a handbag where the product needs to be identical in its essence every time, when it comes to support a business with many unique features, innovations and a fast growing pace, customization of the supporting tools is vital. It is nevertheless important to note that a custom software should be developed by a reputable company with track record, that have a high degree of listening and understanding of business processes. A software company that has the ability to transform business needs and ideas into workable, efficient and user-friendly software products.
Cost
Commercial software tend to have lower upfront costs. Since the cost of development is spread amongst a large number of users, it makes more sense for those software companies to offer an attractive entry price. That said, an organization should be aware of how the many upgrades, service fees, yearly maintenance fees, and installation fees add up in the long run. Cost of customization, when possible, also comes at a higher price tag. Commercial software often provide free trials, which is a good way for the user to evaluate the software. That said, this process will make the user go through the implementation and data migration process. This can often create a bias when choosing the right software in the way that it creates an early switching cost. Indeed, as users have accomplished a considerable amount of work with the trial version, and the data has already been transferred there, settling for the current software often appears as an easier option than restarting the process all over again. As a finished product a commercial software will partly work for your company as it is now within the size and parameters of a given time. As businesses grow and change, so do their support and automation needs. As commercial software do not really adjust, the business must adjust to the software. As a result, slowing productivity, and missing functionalities can become quite costly. More often than not organizations purchase a piece of commercial software only to discover that it does not work for them. Custom software carry higher upfront costs, which can sometimes deter organizations from taking a step into that direction. When going for the custom software option an organization must see it as an investment into efficiency, higher productivity and reduced costs in the long run. There is no doubt the higher upfront costs alleviate over time, making the custom software option the less costly of both options. As custom software are built using well-known technologies, first there is not a risk of getting stuck because a development company ceased its activity or decided to discontinue a product; a custom software can always be upgraded and amended. Second, the end-user is free to carry the software product to another developer. Those two reasons alone ensure that there are very little to no switching costs but also a wider range of choices for affordable, enhancement development, support and maintenance.
Time
Commercial software are more or less ready to use when bought as they are designed as a finished product. For an organization that cannot afford to wait, this present a clear advantage, even if time gained at the beginning can turn out to become very time consuming in the long run as the needs of an organization evolves and the commercial software is unable to cope with the new business requirements. While it takes time to build a custom software, the resulting software product is often leaner and adapted to the organization’s needs. The research, design and conceptualization undertaken by the software development company together with the organization is an exercise that usually provokes a good introspection on all the processes and structure of the company. It offers the opportunity to re-examine, and enhance the way things are done, which in turns makes the organization more productive and profitable. The time it takes can also be seen as an advantage as the organization will be able to see the project as it is being built, which means that the collaboration between the developer and the organization lead to a better scoping, scheduling and development of the software, which can then be tested and tweaked as per the organization’s needs.
Maintenance
Commercial software sold by serious companies often come with serious and steady support. While customization is sometimes possible it usually comes at a very high price. Sometimes the programming language is bespoke or only know by few developers, which makes maintenance difficult and costly. Bespoke technologies also present a considerable issue when it comes to integration. An organization will be required to use a range of software to conduct their operations. With commercial software, it is unlikely that those various software products integrate and talk with each other. For example an organization’s eCommerce site might not work with the features available in the commercial software. Good software company will use repositories, documentation, widely used frameworks and technologies. This will ensure that the software is maintainable by the developing company but also by any other or the organization’s internal IT team if required. New platforms, software, modules can be developed, enhanced and integrated with the existing software.