Enterprise Application Integration

Middleware and enterprise application integration (EAI) are not completely orthogonal concepts. They are, however, distinct enough to warrant separate treatment. As we saw in Chapter 2, middleware constitutes the basic infrastructure behind any distribute

  • PDF / 3,394,594 Bytes
  • 26 Pages / 439.37 x 666.142 pts Page_size
  • 16 Downloads / 226 Views

DOWNLOAD

REPORT


Middleware and enterprise application integration (EAI) are not completely orthogonal concepts. They are, however, distinct enough to warrant separate treatment. As we saw in Chapter 2, middleware constitutes the basic infrastructure behind any distributed information system. Initially, middleware was used to construct new systems and to link to mainframe-based systems (2tier architectures). Later, it was used to distribute the application logic and to integrate the many servers created by 3-tier architectures. When the systems involved were compatible and comparable in their functionality and did not involve many platforms, middleware could be used without further ado to integrate the servers. Unfortunately, for more ambitious projects, plain middleware was not enough. The main limitation was that any concrete middleware platform makes implicit assumptions about the nature of the underlying systems. When these systems are very different in nature and functionality, using conventional middleware to integrate them becomes rather cumbersome, and in some cases simply infeasible. EAI can be seen as a step forward in the evolution of middleware, extending its capabilities to cope with application integration, as opposed to the development of new application logic. Such extensions involve some significant changes in the way the middleware is used, from the programming model to the marked shift toward asynchronous interaction. In this chapter we examine how these extensions came about and how they facilitate large scale integration. In the first part, we discuss in detail the problem of application integration (Section 3.1). Then we address the use of message brokers as the most versatile platform for integration (Section 3.2), and conclude with a review of workflow management systems as the tools used to make the integration logic explicit and more manageable (Section 3.3).

G. Alonso et al., Web Services © Springer-Verlag Berlin Heidelberg 2004

68

3 Enterprise Application Integration

3.1 From Middleware to Application Integration The difference between conventional middleware and EAI can sometimes be rather subtle. To understand the differences in terms of requirements and actual systems, it helps to differentiate between application development and application integration.

3.1.1 From a Mainframe to a Set of Servers In Chapter 1, we discussed in detail how client/server systems came to be. As the available bandwidth increased and PCs and workstations became increasingly powerful, the client/server paradigm gained momentum. Functionality that was previously only available in a single location (the mainframe) began to be distributed across a few servers. At the same time, companies became more decentralized and more geographically dispersed and also started to increasingly rely upon computers. As a result, information servers established their presence everywhere within a company. Because of the limitations of client/server architectures, these servers were effectively information islands; clients could communicate w