You’re about to replace an old software system with a custom-built one that can do a whole lot more. Great! You’ll finally have software that truly fits the needs of your organization.
You want to get the most out of this new system, but you’re not sure how. My first piece of advice? Get rid of systems with overlapping data and functionality. They could turn into costly problems, as I learned recently.
The Curse of Duplication
The idea that duplication devalues custom software came up on a recent project. The client’s organization was using two independent pieces of software to track information about its customers. Each piece of software independently calculated a monthly bill for customers. Nothing kept the data between the two applications in sync, so there were often discrepancies between the two systems.
While working to automate an audit showing discrepancies between the two systems, I recognized that the core issue was caused by the duplication of a single process. I came away from the experience recognizing three pitfalls that reduced productivity for the client. Each of these serves as an indicator that duplication is causing issues for your organization.
Pitfall 1 – Extra Work
The first major pitfall I recognized is that duplication creates extra work. In the scenario above, the client used a manual audit to keep the two software systems in sync. Each month, an employee painstakingly audited the data by hand. This audit took one to two full days of work. Even after my team and I automated the audit, our client still had to follow up with different billing departments to correct bills. We eased one pain point, but duplication still created extra work within the organization.
Pitfall 2 – When to Audit?
Having duplicated information also forces a difficult decision on how often to perform audits. For example, if you do daily audits, it becomes a full-time job for somebody. If you limit audits to only once per year, the organization is likely to lose a significant amount of revenue during that time. The truth is that there is no right time to sync data. If you eliminate duplication, you never have to make the tough decision of how often to audit.
Pitfall 3 – No Single Source of Truth
Last but not least, syncing multiple data sources requires a canonical source of truth. If Data A and Data B are different, which one is right? In most cases, you need to choose between always taking Data A instead of Data B, or constructing a complex set of rules to decide which data to choose. Both cases result in audits that are only an estimation of the correct data. When the same data exists in only one place, that data is the single source of truth. You can be confident that when you access the data, you’ll only get one answer back.
Custom software is a significant investment. If you’ve decided that it’s right for your company, be sure to look at your business processes surrounding it.
I recommend following an age-old programming adage known as the DRY principle—Don’t Repeat Yourself. Programmers use this principle because it makes our code more concise and prevents the many mistakes caused by duplication. Duplicated software is no different. If you have the same information in two pieces of software, there will be costly overhead.
Take the time now to get rid of tools that are replaced by your new software. You’ll save yourself headaches down the road, and you’ll make the most of your investment in custom software.