At one of my previous employers, we had systems.  Loads and loads of systems. Financials System (COTS), License Code system (Custom), Incident tracking System (Custom), CRM (COTS), and shipping software (COTS).  That was just in the Americas. The other regions had their own financials, their own incident tracking, their own CRM’s. The only thing which saved the company was employee tenure.  The average career at the company was well over a decade. Because of that, no one bothered to integrate the systems as everyone already knew everything about all the customers and all the nuances in the systems were overcome with institutional knowledge.  The people became the systems. It worked fine until the company was sold and the employee exodus began. Its been well over a year and they are still recovering. This is a cautionary tale.

In American Football, most all agree the quarterback is the most important position on the team.  The success and failure of each club depend on everyone working together, but its the quarterback who controls the destiny of the club.  Because of this many teams have active competitions for the position. Some coaches will go on record and say, “we have two starting quarterbacks.”  They believe both possess the skills to get the job done.  

There is another old saying in football.  “If you have two starting quarterbacks, you don’t have one.”  The thesis is if you don’t have one you implicitly trust, one who is head and shoulders above the others than you have two bad quarterbacks, not two good ones.  Let’s take this case to the world of IT and back to paragraph one. Each of those systems at my old employer had its own customer master file. Each one. Each one had different main contacts, different mail to and ship to addresses, each one had different emails.  Some of them agreed. Most did not. The product was sent to the wrong place. Contacts were never updated in a timely manner and emails bounced back all the time. Customers didn’t pay their bills. Not because they refused, but because the bill was sent to the wrong person over and over again.  Once again, that was only for the Americas. The global accounts had their own set of billing and shipping and contacts, completely different than the ones stored in the Americas. Global accounts had numerous people internally do deal with and were incredibly frustrated. Marketing could never gain insights into companies we had in other countries who owned our software and campaigns faltered. So let’s put this in context.  “If you have two customer master files, you don’t have one.”


It’s never too late to find your SPOT


Your core system needs to be the starting QB.  It needs all the updated data sent to it in real-time.  Your core needs to be the Single Point Of Truth (SPOT). This should be the data that everyone uses and trusts.  To make that the case, the SPOT needs to be fed from all surrounding systems. This is critical.

The good news about integration projects is they rarely change the UI and don’t need to involve lots of user disruption and interaction during the project.  They continue using the systems they use today, but now the data is getting updated bi-directionally from the SPOT.

If you are near the latest release of your ERP, most major COTS vendors have certified ways to move data back and forth from their systems, you merely need to reach out and ask what standards they follow.  Normally XML or RESTful services will work in those areas. What holds most companies up from accomplishing projects of this nature is the custom systems on which they rely. Many times the systems were written years ago in architectures that don’t support moving data out of the system in any easy format.  

I’m going to dedicate another blog post to discuss the choices you need to make with legacy systems so we won’t wander that decision tree in this space.  That said, when you have older custom systems you need more than a simple ETL solution to keep the fidelity of the data. Most of these applications will give you easy access to the data, but you’ll need to re-create some if not all of the logic required to make sure the data is clean going in and coming out.  You’ll need a solution that can accommodate both integrating into a database and applying logic. Then you’ll have to go through the common flows to find what’s getting validated. Finally recreate the logic to ensure everything going in and out is pristine.

Projects like this aren’t easy, but they’ll never get easier the longer you wait.  Once data is corrupted, trust in the system starts to wane and people stop using it for its intended purpose.  Without the data, reports, forecasting, demand planning, and countless other metrics will not jibe with how the business is performing.   It all cascades down and then no one knows who to trust. Finding your starting quarterback is critical to success. Don’t have two, cause then you won’t have one.