EAI

EAI is to enable the integration of multiple computer systems and coordination of data in a company, or it means a series of techniques that support them. Enterprise Application Integration.

Overview
EAI enables the integration of multiple systems that are developed separately for various purposes, such as financial systems, business systems, marketing systems, sales systems, and so on, and thereby enables the coordination of data and processes. By integrating multiple heterogeneous systems, we can effectively utilize past data and coordinate data among heterogeneous systems. Thereby, EAI aims to increase the effectiveness and efficiency of decision making and company administration.

In addition to system integration in a company, system integration that realizes e-commerce among companies and system integration owing to the merger and acquisition (M&A) of companies are also demanded.

Functionality
Software that realizes EAI (EAI tool) consists of the following features. By combining them, we can realize system integration in actual business.


 * Adapter: Provides interface of the system
 * Format conversion: Deal with differences in data formats or protocols
 * Routing: Dispatch data received from one system to other systems based on requests
 * Process control: Control business processes

Typical EAI tools that provide the features mentioned above are listed below.


 * WebSphere Business Integration (IBM)
 * BizTalk Server (Microsoft)

Techniques
In many cases, EAI takes a form called "Hub-and-Spoke." This is a form in which a hub that controls data coordination is placed and all systems exchange data via the hub. When a new system is connected to the hub, it can share data with other systems connected to the hub. By taking this form, we do not need to change all system interfaces when some of the integrated systems are changed. A status in which all applications are connected with each other is called "spaghetti status." "Hub-and-Spoke" form reduces the number of links and thereby resolves "spaghetti status." However, it has the following disadvantages.
 * Since data concentrate on the hub, huge investment for the hardware to run the hub is required.
 * Since data concentrate on the hub, this form is not suitable for communication with large volume of data.
 * When the hub is down, all communication among applications goes down.

Recently, another form of system integration called ESB (Enterprise Service Bus), which is different from EAI but adopts Hub-and-Spoke form, is also used. Unlike "Hun-and-Spoke," which centralizes the control, ESB standardizes the interfaces and takes a form in which each system is modularized and connected with each other. Thereby, ESB achieves more flexible collaboration among systems.

Development to BPM
While EAI aims to establish an infrastructure for coordination to convey data smoothly among applications, BPM focuses on automation of processes, including control over multiple applications and control over flows in which human participants are involved. In other words, while EAI aims the integration of applications, BPM considers various tasks, including systems, as processes, and it defines business by coordinating them. Because information systems are used in collaborating business, EAI is indispensable to execute BPM and automate process control.

In BPM, many systems are utilized including the followings.
 * Modeling tools to draw a Business Process Diagram
 * BPM Engine to allocate tasks
 * Monitoring tools that monitor workflow

These systems are roughly categorized as either of the followings.


 * Human-Centric: Manage and automate tasks executed by human participants, as well as business processes including approval, decision making, and so on
 * Integration-Centric: Connect and coordinate systems

Many systems developed and derived from EAI tools are categorized as Integration-Centric.

Related Articles

 * Business Process
 * Workflow
 * BPM
 * BPMS
 * Human-Centric BPM
 * Integration-Centric BPM