5 Reasons Why Software Integrations are Difficult, And The Magic behind Them

Created on January 16, 2015
Last updated on December 14th, 2021 at 8:25 am by CurtisWeldon


If you are one of the lucky individuals that have found yourself reading this article then you probably know that doing any type of integration between different types of software can be desperately painful.  If you are an end user, you expect systems and programs to flow seamlessly.  If you are a project team member that is involved with new software then you may or may not understand the process of integrations.  Let’s start with the understanding that it’s, well….. Not magic.  Even David Copperfield doesn’t have a magic wand for integrations. Here are five tips to help make the process slightly less painful.

1.  Understand how Integrations work – there are different kinds of integrations and a large variety of file formats.  There are API’s, SFTP sites, .xml, pipe-delimited, code, field values, and the list goes on and on.  It can take years to learn and understand all the various pieces and possibilities.  So, take a step back and just focus on the type of integration you are involved in.  Make sure to understand all systems involved, how data is transferred and when, and exactly what data will be included and expected.  Review the file specs and field mapping if they are available.

2.  Understanding field type and field values – software products make various types of fields that contain data.  They can be String or Text Fields, Date and Time, Drop Down or Pick Lists, Check Boxes and Radio Buttons.  Think about the software you are working on and what type of fields are in your system and consider the type of data that you would normally expect to see.  Sometimes data leaving one system is not the same as how it would need to enter the next system.  Translations sometimes need to occur so that data can match up between systems.   While reviewing file specs look at each field type and what is expected in that field.  Compare both system specs together by lining them up side by side for a full review.

3.  Not spending enough time planning – in real estate it’s all about “location, location, location”.  In software, it’s about “planning, planning, planning”. From the very start, you need to have a strong project plan in place with contingencies built into the plan.  Lack of planning is the 2nd reason why projects fail.  The number #1 reason projects fail is not having a contingency plan.  System to system integrations are difficult even for the most experienced.  They require a lot of time and proper communication within the entire team.

4.  Not allowing yourself enough time – you can’t rush perfection and integrations simply take time to build.  Adding additional resources to speed up a project is almost never the answer.  A cake takes X amount of time to prep and bake.  If you reduce that amount of time the result is a bad tasting and undercooked cake that no one will eat at the party.  If you add additional chefs in the kitchen the baking time will still remain the same.

5.  Unrealistic expectations for testing – let’s lay the facts out on the table.  You will have issues when you start testing.  Testing will not be easy and it will not be perfect.  This is why we test.  There is simply too much information and data to understand all aspects of an integration within 1 round of configuration.  The very nature of software contains bugs and issues.  Remember that interpret information.  Understand that there will be mistakes and software restrictions.

End users of software often never consider how data moves through various systems.  To them, it’s magic.  In reality, the project team is the magic behind the curtain.  If you focus on these 5 rules then you can become the magician.

By the way, you can learn a neat magic trick by watching this little video.

Talk to a Rizing Expert

Whether you’re just getting started or are well on your way, we can help.