Overview
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.
Data-Level EAI
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.
User-Interface-Level EAI
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.
Application-to-Application-based EAI
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.
Integration-Bus Architecture
A variation in the Integration Broker approach was evolved by plugging in pieces of software in different enterprise applications. The rationale behind attaching these software components (known as adapters) is to enable the enterprise applications to talk to a common, centralized system (known as an integration-bus) so that these applications can share information using this integration-bus. See Figure 3.
Figure 3—Integration-Bus Architecture
A typical business-service work flow (for example, an event-based work flow) can be designed and developed by using this approach.
As an example, Tibco products follow this approach. Tibco adapters sit on various applications (which are to be integrated) and the applications are integrated with an integration-bus (Tibco-Rv bus).
This approach requires the development of an adapter for each application to be integrated. Thus, it is a more useful approach where the number of entities to be integrated is fewer. In today’s business, where each application needs to share information with an unpredictable number of entities residing at different locations, the Integration-bus-based EAI approach may not fit.
Java Connector Architecture
As the industry was progressing towards standardized ways to solve business problems, Sun Microsystems proposed Java Connector Architecture (JCA) as a Java-based, platform-independent solution to Enterprise Application Integration problems. JCA is an enhancement of the Integration Broker EAI approach and differs only in its J2EE implementation. JCA sits in a J2EE application server and interfaces among the various heterogeneous enterprise applications. This is a better approach than previous approaches because it allows the Internet users to talk to enterprise applications over J2EE architecture. See Figure 4.
John and Wilson Corporation went ahead with a pilot implementation using a JCA-based J2EE approach. This proved to be a standardized way to integrate in-house enterprise applications and also appeared promising. The integrated applications could be accessed over the Web. The JCA approach helped J&W significantly, thanks to its platform-independent attribute. J&W could establish interfaces among different applications running on disparate locations and platforms.
Figure 4—JCA
Service Oriented EAI
The IT industry continues to show its dynamics and now the concept of Service Oriented Application Integration has appeared. This is considered the biggest paradigm shift in IT, after the Internet revolution. The industry is recognizing the potential of Services on the Internet or intranet. The demand of this revolution is to broaden the enterprise perspective and aggregate or integrate any Service running on any platform on the Internet. Now the enterprises are not only worried about integrating their own applications sitting in their or their partner’s premises, but also want to share information with other unknown applications running on the Web. To achieve this goal, standardized ways are required to integrate with applications, irrespective of where and how they are running.
The ultimate idea is to design a business work flow that solves the end-customer’s problems. Integration of various services (exposed by enterprise applications) should be done in such a way that they can form a logical flow of a solution package. This concept is known as Work flow based Integration.
Giants of the IT industry (such as Microsoft, Sun Microsystems, IBM, and HP) realized the potential of Service Oriented Internet World and came up with specifications to materialize it. This set of specifications is called WEB SERVICES.
John and Wilson Corporation was among those organizations that could not resist the market trends in the Internet era. For the first time, J&W felt the immense pressure of customers as well as of suppliers/buyers to share its information with other applications running on the Web. Needless to say, that this was in addition to the integration among its internal or concerned (suppliers and buyers) applications. The applications running on the Web might be hosted on unknown platforms, implemented in unknown technology. Because of this, it was a great challenge for J&W. To adapt to this situation, J&W wants to opt for a technology that is based on the Internet standards and promises to establish the interfaces among various enterprise applications hosted anywhere (intranet or Internet) and implemented in any technology. The integration technology should be easier and cheaper to design, implement, and deploy. J&W finds Web Services a good fit for its requirements and goes ahead with the implementation at the intranet level with some access to its partners. The internal users, suppliers, and buyers are finding Web Services very useful and effective because of their loosely coupled and late binding attributes. Now the applications are exposed as Web Services and they are dynamically located and invoked using the organization’s private UDDI registry. This is the way the applications and the Internet users share information with other applications. J&W is now ready for the future, which looks promising. The corporation is looking forward for Web Services standards to provide missing components so that this implementation can successfully be taken forward, live on the Web.
Summary
In this first part, we discussed the concepts of EAI and how its evolution has taken place. We concluded that EAI is moving towards Service Oriented Application Integration.
Based on this analysis, we will introduce Web Services and see their potential in the EAI sphere.
References
White Papers are posted at the following locations:
http://www.tect.com/cnb/shop/webservicesarchitect
About the Author
Manoj Seth is a senior software engineer at Hewlett-Packard, India. He is a Post Graduate from the Indian Institute of Information Technology, Bangalore.
Manoj has been involved in designing and developing J2EE-based solutions over various platforms in the domains of Financial/Banking and Middleware for more than two years. He has good exposure to Web Services and their emerging standards in development/deployment and management space. He can be contacted at manoj_seth@hp.com.
Acknowledgements
The author would like to acknowledge the contributions of Srinivas Varadarajan, Ashish Chitkara, Latha Bhashyam, Pankaj Kothari, Ravi Trivedi, Shyam Bijadi, and Jainendra Kumar at Hewlett-Packard, India for their insightful comments and reviews.