Enterprise application integration (EAI) involves connecting internal applications, such as financial, enterprise resource planning, customer relationship planning and mainframe systems, with one another and with other transactional e-business systems, writes Dougal Watt.
EAI enables older applications that may be essential for running business systems to be re-used by integrating them with newer applications, without subjecting them to costly and high-risk rewriting. It can also rapidly integrate the internal enterprise systems of new companies or divisions acquired through mergers and acquisitions.
Another advantage to EAI is that it allows companies to remove time-consuming and error-prone manual processes, such as re-entering order data from transactional e-business systems to internal financial systems.
This makes it possible to automate the sale, manufacturing and distribution of products and services to customers, by wrapping a transactional, e-business front- end around existing applications.
Early EAI solutions used point-to-point architectures with customised code to integrate applications. However, this approach created fragile solutions unable to accommodate changes in applications without considerable re-coding and was unable to support high levels of traffic between applications. In order to overcome these limitations, middleware enterprise application integration solutions evolved.
These include a middleware software layer to manage and route messages between applications, which are integrated using specific connectors (or adapters) installed into the middleware product to translate between applications.
These solutions provide considerable flexibility for integrating new applications by plugging in the appropriate connector to the middleware layer. This process reduces development effort, as developers typically do not have to code multiple application-specific technologies which, in turn, considerably reduces project timeframes and costs.
Middleware EAI products include application server solutions, hub-and-spoke solutions, and message bus solutions, with each offering different levels of performance and scalability (see boxes for details).
E-business Implementation: A Guide to Web Services, EAI, BPI, E-commerce, Content Management, Portals and Supporting Technologies, by Dougal Watt, is published as part of the Computer Weekly Professional Series by Butterworth Heinemann.
Hub-and-spoke middleware works for multiple servers
As the number of integrated applications and the weight of message traffic increases, hub-and-spoke middleware can employ a dedicated central hub middleware server connecting spoke applications integrated through application adapters passing messages through the hub.
These are ideal for most companies, supporting moderate to high numbers of enterprise and e-business applications deployed on multiple servers, and moderate to high levels of message traffic.
Advantages to hub-and-spoke systems include their centralised administration and sophisticated integration and performance features.
However, when high levels of performance are required the central hub may become a performance bottleneck.
Application server middleware
Application server middleware solutions integrate applications using Java2 Enterprise Edition-based application servers as the middleware layer, with adapters provided through standard packaged Java connector architecture connectors available from different suppliers.
These solutions are ideal for integrating limited numbers of e-business systems with existing enterprise applications, and for integrating limited numbers of enterprise applications with low to moderate levels of message traffic.
Application server EAI systems have the advantage of simplifying development using the Java programming language, although due to potential scalability and performance problems they are not recommended for integrating large numbers of enterprise applications, or for high levels of message traffic.
Message bus solutions for big projects
For very large high performance integration initiatives, message bus middleware solutions are more appropriate. These integrate applications across a distributed and highly reliable message backbone, or bus, consisting of a network of integration components and message transformation and routing services.
This design is suitable for high levels of message traffic between large numbers of enterprise and e-business applications, typically across multiple geographical locations, and scales to support the highest performance requirements.
Advantages to message bus EAI solutions include very high scalability and reliability for all enterprise application integration solutions.
However, due to their complexity they may not be appropriate for many initiatives, as they typically require more advanced levels of design, deployment and support than other middleware solutions.