The market often defines enterprise application integration as the use of middleware that enables the rapid integration of legacy, packaged, and new applications into new business solutions. This definition can be broadened by removing the reference to any specific implementation, and by including concerns that reach beyond specific application solutions to pre-defined business needs. A meaningful definition must also include the significant fact that EAI addresses the context for application systems as well as the systems themselves.
Traditional forms of integration typically place the emphasis on the computer systems and their internals and how to combine the technical components for efficiency. EAI includes the collaboration of technical components, but shifts the emphasis to the context in which those computer systems must perform, including the business goals and models. Thus, a more comprehensive definition of EAI reads as follows:
To better understand this definition, I will break it down and discuss each idea in turn.
From the enterprise perspective, computer systems are the components that make up the overall architecture of a company’s systems. Ideally the computer systems will merge into the background and the business use of these tools of automation will come to the fore. This shift in focus requires that the computer systems act as components in a larger operation where the differences between the components have been resolved.
For instance, the application used by a company’s sales force to track customer leads, contacts, and sales might be one component. That one component can have several different versions in a large company, when different sales offices have implemented the same system differently, or have even installed different software. It’s not uncommon for sales offices in separate geographical locations to operate independently from each other, installing and maintaining their own computer systems separately. When such is the case, those systems will probably not be able to inter-operate and share data because their definitions for that data, and for the operations applied against it, won’t match. So a company’s sales systems in Omaha won’t be compatible with the same company’s sales systems in Akron.
Another component might be the software used by the marketing department to forecast customer demand for services or products and to track promotions, market trends, and customer behaviors. This type of software often uses an entirely different scheme to represent customer information, with definitions that are meaningful to marketing but not necessarily meaningful to sales. Marketing tends to look at trends among demographically defined groups of customers, for example, whereas the sales department is more likely to track information on contacts with a specific customer.
Both the sales and marketing software components store information about customers, but from two or more different perspectives, often with different definitions of what information is needed about customers. To say that the interfaces between these components are seamless means that in spite of their different relationships to the customer, the computer systems have been configured to use compatible definitions of important pieces of customer information. The operations or business rules applied against that data (such as calculations, transformations, and categorization,) are also compatible. In other words, they have seamless interfaces that basically become irrelevant to the business owner’s ability to use them to conduct business.
In 1996, David Newman in Data Management Review wrote "Data, data everywhere, but not a drop that’s uniform, consistent, or integrated." He was referring to the many issues that can make sharing data between systems a challenge. For example, each of the following presents its own issues:
All these issues must be addressed for data to be successfully shared and integrated.
When interfaces are seamless and data is shared, the resulting synergies tend to enable entirely new ways of doing business, furthering the evolution of the industries in which they occur. Synergy, in this context, can be defined as the combination of components working together to produce something more than the individual components could achieve on their own.
For example, 1:1 marketing is one new business model that’s received much attention in the industry press. Amazon.com has built much of its success upon the Internet implementation of this new model. The synergies amazon.com has achieved include integrating sales and service customization with the collection of customer information and the interactivity of the Internet. That interactivity has enabled Amazon to track customers buying behavior and juxtapose that information with customer profiling data. The resulting "something more" is the capability to predict customer behavior and intelligently recommend next purchases.
Enterprise Application Integration is the complex process of fitting hardware, software, and business process together to enable new business solutions. Its characteristics include
EAI represents the next logical step in the evolution of technology that started with the automation of isolated business processes and has grown to affect how business across an entire company is done. It has far-reaching consequences for the extended life of systems belonging to a company’s legacy. At the same time, EAI and the technologies it produces help define future possibilities for the growth of new systems.
(Reprint of an article by Laura Brown, first published on InformIT's guest expert page. For more information, contact: firstname.lastname@example.org. All rights reserved.)