Web Services-A Fit for EAI
The aim of this article is to introduce the paradigm technological shift in the EAI sphere.
In the first part of this two-article series, I will discuss the concepts of Enterprise Application Integration (EAI) and its evolution over a period of time. Various approaches, their significance, and limitations to resolve EAI problems/issues are discussed. A business case is introduced and traced through the different phases of EAI evolution to understand the context and usability of each approach.
In the second part, I will explain the emergence of Web Services as the Internet-based standard to share information among incompatible Enterprise Applications and Information Sources. The advantages/limitations of Web Services over other EAI approaches discussed in Part 1 are mentioned. I will also discuss the scenarios where Web Services is a better choice in EAI solutions.
Introduction to EAI
Over the past two decades, there have been successful efforts to globalize the market and economies all over the world. The convergence of scopes of economies is inevitable to extend their reach over the globe. No market or economy can afford to be invisible on the Internet. Digitalization of the business and social order has completely changed the way enterprises of global economy operate and do business. It is exciting to see the true convergence of commerce, communications, and computing technologies taking advantage of this innovation of Digitized Economic World.
There have been challenges in converging and interfacing various enterprise businesses. Most of the business players in all markets have various heterogeneous enterprise applications running at one or multiple sites. Additionally, most medium- and large-scale enterprises have tremendous disparity in their business processes and technologies, which has arisen due to their functional specialization and growth over time. This disparity has created inflexible boundaries for communicating and sharing information among related or concerned entities. Therefore, enterprises are facing tremendous economical and social pressures to exchange information among these applications to reduce business costs and time-to-market. This is also vital for enhancing the business efficiency and productivity to survive in a competitive market.
Additionally, enterprises have to raise their flags high in the market by extending the reach of their value-chains on the Internet.
Yefim Natis, vice president and research director with Gartner Group comments:
"The more-competitive and technically astute enterprises recognize that the true benefits of the new Internet-based global-class computing cannot be achieved with applications designed fundamentally as isolated and monolithic stovepipes... Leading-edge and top mainstream enterprises recognize that information in their various systems (as well as in their partners' systems) is interrelated and that the true value of the organization's information, processes, and events can be realized only when the entire virtual enterprise is seen as a unified whole, transcending the specifics and boundaries of any one application."
Enterprise Application Integration (EAI) has evolved as a process/way to share/exchange the information among various homogeneous/heterogeneous enterprise systems/applications, so that the interfaces among business processes/services/operations can be established to take the convergent benefits of all the applications.
Also, EAI makes a lot of sense when it comes to the business-to-business (B2B) model because sharing and integration among various application entities of different departments or enterprises are extremely necessary in this model.
Business Case Introduction
John and Wilson Corporation is a US-based automobile giant, operating for the last 35 years. Its business model is based on supply chain management. It has disparate business processes ranging from placing orders of automobile accessories to its suppliers, to supplying automobiles to its worldwide buyers and financing the end customers. To accomplish and implement countless business processes, J&W maintains hundreds of disparate data and communication systems and many systems are umbrellas for other sub-systems. It has different hardware (mainframes, client/server architecture, and PCs) and software. There have been a significant amount of human as well as financial resources maintaining and manually integrating these applications in different ways. According to a study conducted in J&W, the utilization of data residing on all its application is less than 15%.
EAI Evolution and Approaches
Many companies rely on Enterprise Resource Planning (ERP), Customer Relationship Management (CRM), Supply Chain Management (SCM), and other proprietary application software to operate and implement their business processes, but these systems were never intended to interoperate with each other.
The very first technological approach for sharing the information among various enterprise applications involved making the applications use a common data source (file system, database, and so forth). The focus of this approach is to accommodate the data of various applications in a single, logical database or build a file transfer application to aggregate the data at one centralized location. These centralized data sources can now be accessed by all the integrated applications. This approach is known as data-level EAI. This approach holds well enough as long as the applications do not have complicated business processes and the only key to the applications is data. But, in the Internet scenario, this approach needs to be reconsidered because this enforces the re-implementation of business logic and processes of the applications for the internet users.
John and Wilson Corporation has many disparate data sources hosted across its multiple sites. The task of integrating/aggregating all of them was cumbersome, so the management decided to do data-level EAI at a smaller scale as a first phase. After the implementation of the first phase, J&W realized that they must integrate the business processes as well to add real value to the customers and without interfacing the applications with the Internet, the benefits of global markets couldn't be achieved.
Another approach that came into view was based on the user-interface to integrate various inter- and intra-enterprise applications. The concept was to develop a common user-interface to expose isolated applications to the end-user. This approach was driven by a client/server paradigm in 1980's where the common user-interface was intended to act as common client for all the back-end applications, which act as servers. So, for the end-user, the applications running in an isolated manner seem to be integrated. This approach is called as user-interface-level EAI. The limitation of this approach was the complexity in creating unique user-interfaces to expose the functionalities of heterogeneous enterprise applications, thus preventing the Internet users from accessing the enterprise processes implemented in server programs.
John and Wilson Corporation tried out user-interface-level EAI for exposing some of its enterprise applications to the internal users. This approach was not quite successful because many business processes were implemented in server programs, so they were not exposed to the user-interface. This was hindering all the application functionalities to be accessed effectively. Actually, this approach was just an illusion of the integrated applications environment.
A more strategic approach to EAI that emerged involved integration of the business processes of various enterprise applications. This was initially accomplished by developing hard-coded, point-to-point software components that enable interaction among heterogeneous applications. This approach is known as application-to-application-based EAI (A2A EAI). This approach concentrates on interfacing among application logic components that implement business processes within or across enterprises. A2A EAI is advantageous because these are the same business processes that are used by customers and partners on the Internet. Using this technological approach, the business processes of one application can invoke the business processes of other applications. Therefore, it is tightly coupled with the software components residing over it to talk to other applications. For example, if an ERP application has a software component to interact with an SCM application, this component cannot be used to enable an ERP application to talk to any application other than SCM. In addition to the above hitch in this approach, the complexity of the integration increases exponentially when more of enterprise applications are integrated. See Figure 1.
Figure 1—A2A EAI
John and Wilson Corporation had an investigation and feasibility study prepared for the A2A EAI approach. The findings for the investments were mind-boggling. J&W has an immense number of enterprise applications; the cost of developing software components for each pair of applications to integrate them was unaffordable. Finally, the management of J&W ruled out this option.
Integration Broker-Based EAI
Because of the complexity of A2A EAI, the need for a centralized system, which gives an interface to various heterogeneous applications, was perceived. Thus, the Integration Broker Approach appeared, where an Integration Broker holds the software components (casually known as Adapters) meant to integrate enterprise applications. This way, the Integration Broker centralizes the development of interfaces to disparate enterprise applications. Now, the applications to be integrated need not be changed or have hard-coded, point-to-point software components to share their information with other applications. Leading market players of this approach are SeeBeyond, NEON, and CrossWorlds. See Figure 2.
Figure 2—Integration Broker
Again, the selection of Integration Broker for a specific EAI solution is based on the technology that Integration Broker supports. Therefore, Integration Brokers cannot be used irrespective of whether they are based on J2EE (Java 2 Enterprise Edition) or on proprietary technologies.