When two people have to share information there is a set of steps that need to be followed. For one, there needs to be a message and preferably worth hearing. This message is then sent to a another person who listens, filters out noise and interprets the message - if necessary, a response is sent. This is the basis for simple communication. We all do it - daily. For those of us that don't - there is a picture, the 'Shannon Diagram' or 'Schematic Diagram of a General Communication System'. The interaction between complex enterprise systems are no more difficult to understand as a simple conversation between two people.
EAI = Enterprise Application Integration
Enterprise systems are no different then people - in the case of the IBM Watson computer, they are people too! They want to talk. In order for them to talk, they need to share messages/information. This information needs to be cleansed (see scrubbing and de-dup below) , transmitted (ODBC, Web services, CSV, XML etc.) and received by the destination system.
Sound Simple? Well it is - almost...
From a security, content and technical aspect, make sure all parties are on side with the transmission of data as this is where the project difficulties usually lie. Complications in expectations can and will occur. As the project manager, you will need to identify all shareholders that 'own' the data and systems involved in the transmission. This will assist in mitigating any risk that your team(s) will rely on incorrect definitions or encounter roadblocks (ie Legal). Another complication arises in complexity of the discussion between systems - will the communication between two systems be Unidirectional or Bidirectional (round-trip). The difference?
Unidirectional is like a dictator forcing its data onto the other system (easier).
Bidirectional - this is a conversation between two systems - issues such as timing (real-time, nightly, weekly etc) and data ownership come into play. Both systems will be required to import and transmit the required shared data in the same way (ODBC, Web services, CSV, XML etc.).
Spend some time and get this process right the first time! And for the love of <Insert Deity Here> don't skimp on testing.
Scrubbing / data cleanse
Before you send a message, take the time to ensure it makes sense. This is why we 'scrub' data. Cleansing is referring to identifying crucial records/data, duplicates, merging records, updating key data, and resolving data issues. We clean it up so where ever we send it, the information will make sense. Don't kid yourself - if you are undertaking a data scrubbing exercise, it'll be a manual boring and grueling job that only those most familiar to the data can really do well. Sure you can get the contractor to write a query, perform magic/voodoo; however, the data will not be a complete, thorough and accurate unless you have the right people taking the time to cleanse (not purge) the data.
I hate the term - hate it. But. It is actually widely used so you'll need to be familiar - it just means de-duplicate or to remove duplicates. I prefer the term: singularity-ify (thank-you Star Trek :P )- ok so "de-dup" is better - for now.
Booyah - you're knees deep into a EAI discussion now!
Ok let's review - you've identified the Enterprise Applications that require Integration, the data to be shared and all the parties that could be effected. Next, the team identifies what is to be shared and how. This step will determine how much scrubbing, cleansing and de-duping is required. Finally, the process of communication between two systems will it be Unidirectional or Bidirectional (round-trip).
- Is there a real need?
- For whom (get the parties in at ground zero)
- What is to be transmitted (be thorough)
- How - think this through
- Prep - clean up the data
- TEST TEST TEST
- TRAIN - give your team a fair chance
- How did it go? (post-mortem)
Hope this helps and not hinders, Enjoy!