Software customization is a great way to get what you need out of today’s software. But how much is too much?
Many applications right out of the box don’t do what a company needs. Tweaks are needed here and there to make the software do things the way the company does things.
The hidden (and surprising) costs of software customization
We had one client years ago that needed a different security scheme to support multiple physical locations.
They wanted a location view, a division view and a rolled up HQ view that the application could not support natively. So they paid a firm several thousand dollars to build a custom security model for their financial system.
Now, every time the company has to update the software to the new version, they have to pay this same firm to perform the upgrade and re-add all the custom code back into the system.
This happens every year. And, as new technologies and integration methods come to market, the impact of this software customization ends up costing the company tens of thousands of dollars more.
As it turns out, the last three versions of the software supported the security requirements of the company. It took a little more money to remove the customization initially, but the payback period was less than three years.
Using automated update routines produces predictable results—this is good news. Results that the software vendor is able to test vigorously before releasing the update to its customers.
Additionally, the company can now adopt a more aggressive update/upgrade cycle to take advantage of new features as they are released.
Lessons about software customization
- Make sure you really need the software to do something different than the way you do things. Validate against a “Nice To Have” vs. “Must Have” decision criteria.
- It’s not just the cost of the initial software customization you have to think about. Ongoing maintenance and testing with every software upgrade can cost as much, if not more than the original development of the customization…and it happens every time you upgrade!
- The fewer the number and lesser the complexity of system customizations, the easier and less expensive (and less error-prone) updates and upgrades become.
Do you own or run a small business? Be sure to read 4 Reasons Why Your Small Business is an Easy Target for a Cyber Attack next.
Questions to ask before software customization
Of course, there are times when software customization is simply unavoidable. Before you go this route, be sure to ask these questions.
- How will software upgrades affect customizations?
- Will upgrades break (override) or preserve customizations?
- Is there an existing software that performs what I need without requiring customization?
That last question is especially important. It’s worth doing extensive research to find software that would require fewer, (or zero!) customizations.
Extensive customizations can slow software down, often defeating the purpose of the customizations in the first place. And like we mentioned, the more complex the customizations, the more expensive and difficult the updates and upgrades are.
(While you’re here, don’t miss this post on the top five cybersecurity trends of 2021.)
We advise our clients to perform regular systems architecture reviews that take into account these customizations.
As software matures, custom code can usually be removed and functionality returned to the native code of the application. This keeps updating and upgrading simple and much less expensive over the long term.
Is your organization secure? Is your critical data protected from both inside and outside? Click here for a free preliminary Cybersecurity Analysis from CloudNexus to find out.
Want to learn more?
If you learned a lot from this post, here are three more to check out next:
- Cyber-Security Insurance- Does Your Healthcare Facility Need a Policy?
- Replacement Screens to Hijack Phones
- VPN for Healthcare Workers who work from Home – Security Risks
This post was first published in 2010 and has been updated in 2021.