Ref 73Integration is important because applications cannot live isolated from each other -Martin Fowler
THE NEED FOR INTEGRATIONEnterprises are typically comprised of hundreds, if not thousands, of applicationsthat are custombuilt, acquiredfrom a third party, part of a legacysystem, or a combination thereof, operating in multiple tiers of different operating system platforms. It is not uncommon to find an enterprise that has 30 different Web sites, three instances of SAP, and countless departmental solutions4Ref 7
ERP SYSTEMS ARE ONE OF THE MOST POPULAR INTEGRATION POINTS IN TODAY’S ENTERPRISESThe advent of XML, XSL, and Web services certainly marks the most significant advance of standards-based features in an integration solutionProtocol Buffers –recent addition5Ref 7
6Integration solutions have to deal with a few fundamental challengesNetworks are unreliableNetworks are slowAny two applications are differentDifferent programming languages, operating platforms, and data formatsChange is inevitableRef 7
7Four main integration approachesFile Transfer —One application writes a file that another later reads. The applications need to agree on the filename and location, the format of the file, the timing of when it will be written and read, and who will delete the file.Shared Database —Multiple applications share the same database schema, located in a single physical database. Because there is no duplicate data storage, no data has to be transferred from one application to the other.Remote Procedure Invocation —One application exposes some of its functionality so that it can be accessed remotely by other applications as a remote procedure. The communication occurs in real time and synchronously.Messaging —One application publishes a message to a common message channel. Other applications can read the message from the channel at a later time. The applications must agree on a channel as well as on the format of the message. The communication is asynchronous.Ref 7
8File Transfer Need to define file formatWhen to produce them and consume them - nightly, weekly, quarterly?Advantage of files is that integrators need no knowledge of the internals of an applicationFile Transfer simple is that no extra tools or integration packages neededThe applications must agree on file-naming conventionsIssueswith File Transfer is that updates tend to occur infrequently, and as a result systems can get out of synchronization Ref 7
9Shared DatabaseTo make data available more quickly and enforce an agreed-upon set of data formats, use a Shared Database Biggest challengewith Shared Database is coming up with a suitable design and unified schema for the shared database.