Business & Marketing
The hidden costs of custom software development
By Jimmy Palatsoukas
Over the last several months, acquisitions of PSIM (Physical Security Information Management) manufacturers by various industry players have brought PSIMs heightened attention.
By Jimmy Palatsoukas
There is no doubt that the industry is looking for greater integration between different security systems. End users are increasingly seeing the benefits of one user interface monitoring their entire security apparatus and greater co-operation between systems. As a result, the demand is growing and video system vendors, access control system vendors, and other security manufacturers are adjusting their focus to varying extents. Unified security platform and PSIM manufacturers are working to create a category of their own.
One of the functionalities PSIMs offer is to consolidate data from various third-party systems, be they access control, video surveillance, intrusion, fire, or building management systems. The added value of consolidating data is there, but what about the cost? PSIMs can offer off-the-shelf functionality, but more often than not, they are associated with a higher degree of custom software development. The need for custom development by any security solution and its ensuing impact on cost and maintenance is regularly overlooked. When recommending a supervising software or unified platform to one of your customers, one of the decisions you may be faced with is whether you should go with an off-the-shelf solution or a highly customized one. Your client has various requirements that may be very specific to them. It is natural that you will want to provide them what they ask for, but have you explained the shortcomings and long-term costs of custom development?
Often times, software development can seem trivial to some when compared to hardware design and manufacturing. However, this can be a deceiving line of thought. In fact, software development is quite labour intensive. Coding, finding and fixing bugs, documenting everything, and reviews with customers are just some of the software engineering activities that make for an intensive process. Simply stated, software development has what has been coined by others in the past as emerging complexities. What this means is that bits of software can seem trivial, but when brought together to form a greater whole, a growing level of complexity can emerge. As a result, software engineering can be quite expensive; custom software development more so. This is why PSIMs or any designed-to-order security product for that matter, when customized for a specific client, can be a labour intensive.
When faced with a customer requesting a high degree of customization, two discussions need to take place. The first discussion is about the benefits of off-the-shelf (OTS) software. Customers who purchase OTS solutions are in fact sharing the cost of feature development, which in turn can also lead to affordable solutions with much added value. This is very similar to the concept of economies of scale in production: a security feature developed for the mass market is designed and tested as part of an official release, deployed across hundreds and thousands of organizations, and vetted by all. Furthermore, any enhancements that improve functionality and robustness are also shared by all. The manufacturer’s efficiency level is also improved as they are not engaging in developing one-off features and custom solutions for each potential client, but rather core features for the market at large.
In the case of custom functionality for a single client, most if not all of the cost of the feature development is taken on by that customer. Issues found in a live operating environment will usually be faced by this one customer. In other words, the burden for a designed-to-order solution is taken on by one organization, not by the masses. Your customer needs to be aware of these implications. Furthermore, any enhancements to a custom feature will incur a cost, which is usually not the case for OTS solutions.
The second discussion you will need to have is about the maintenance of custom functionality. Once a feature is developed, be it for a customer-specific workflow or a custom integration, your clients may find that they have little room to manoeuvre when upgrading their solution. More often than not, integrations between systems or custom features will be based on specific versions of the product(s) involved. Upgrade the main system or a sub-component, and the custom feature may be broken. Once broken, there are several options you will have as an integrator: you can roll back the upgraded system to a previous version if at all possible, or you can chase down the manufacturer(s) to make changes. All this to say that unforeseen or unplanned costs can come up in the future and drive up overall costs for you and your end user.
Some of your customers may not mind paying large sums for custom development; after all, it is personalized to their needs. That being said, initial purchase price may hide restrictions and limitations, as well as the added costs for long-term maintenance and stability; concerns that off-the-shelf security platforms don’t have to deal with on a regular basis. Driving your customer towards an OTS solution which can be customized to some extent is the most prudent choice, both for you and your client.