Lecture 6 - Enterprise Application Integration (EAI) Flashcards
Interoperability
- The ability of two or more applications to pass data and services to each other
- Serious impediment to developing cross enterprise (e-Business) applications
Enterprise Application Integration (EAI)
- EAI is a key enabling technology that has emerged to help organisations achieve intra-enterprise integration and drive operational efficiency within the corporation.
- It is a strategy that does not specify products, tools or technology for its inception.
- EAI provides the infrastructure to reuse, rapidly connect, interface & unify information between an organization’s internal applications into a cohesive corporate framework within the enterprise.
- EAI represents both the products as well as the process of integrating new & legacy applications (including packaged applications) with data files & databases.
- EAI is non-intrusive: the applications being integrated do not change or the changes are slight & insignificant.
Tight coupling
Synchronous: The whole collaboration is stopped until the message is delivered (payment under processing, then the whole system goes on block until the payment is made)
Loosely coupling
Asynchronous: When a message is sent you are not obliged to reply and things can be done at the same time (an announcement on Canvas, students don’t need to answer)
Publish/subscribe interaction model (asynchronous)
- Applications communicate by exchanging messages
- Senders do not specify the the recipients of the message they just publish a topic of interest
- Receivers have to subscribe with the middleware for topics of interest
- Middleware retrieves the list of subscribers of a topic and delivers the message
A publisher posts information/content (topic), if something/someone (inside the company) is interested in this content he will subscribe, so the messages will be sent to them
Similar to subscribing on YouTube
They can disjoin (unsubscribe) if they don’t want the messages anymore
Messages are brought into the adapter, who transforms the message in a particular way for the system to understand it. The bus sends the message to all adapters, who can accept or reject it
If you are sending/receiving a lot of messages, the Shared Bus can become a bottleneck Therefore hub & spoke
Message-Oriented Middleware (MOM)
- The backbone infrastructure that is responsible for relatying data from one application to another by putting it in a uniform message format
- Feature that make the MOM particularly attractive when integrating applications:
o Prioritization of requests
o Load balancing (both systems equally loaded, not all tasks to a single one)
o Synchronous/asynchronous messaging
Point-to-point EAI
Applications are linked through hand-coded, custom-built connectivity systems & data interchanged directly between any two systems.
The approach is to “build an interface” for each connection. This can create an exponential amount of communications which will create problems
- The point-to-point approach is not scalable
- Hard to manage
- Inherently static & expensive.
To work out how many point to point connections are required to create a full p2p network, use the following formula: n x (n-1)/2 where n= #nodes
so for a 5 node network we have 5×4=20 divided by 2 = 10 connections for n=10 the number is 45!
Could we create something better? See Shared Bus (MOM)
Hub & Spoke EAI
- A central node manages all interactions between applications. Each application does not have to integrate multiple times with several other applications, it simply carries out one integration process on the central node.
- The central node handles communication with other applications.
- The most popular hub and spoke EAI solution is integration brokering.
There are multiple MOM running on different server. The broker dispatches the message to the adapter that it is supposed to go to.
Data integration
The ability to share & exchange relevant business data from a variety of sources and integrate it with other such related data itmes despite differences in data formats, structure and intented meaning of business terms under possible diverse company standards
Data Integration conflicts (3)
- Entity definition conflicts (schema-level) (naming, DB identifier, attribute equivalence, granularity, missing attributes)
- Domain definition conflicts (data representation, data dimensions, data scaling, data precision)
- Data value conflicts (value-level) (known inconsistency, temporal inconsistency, value inconsistencies, value conflicts, range value inconsistency)
Business Process Integration layer
- Aim is to automate business processes which need to access data and business logic across disparate back end applications. Process-oriented workflows are used to automate processes with well-defined & stable structure.
- Builds on EAI to ensure business processes are executed in the defined order using the required data
- Builds on middleware providing:
o Process execution engine
o Visual process definition tools
o Process monitoring tools - Business process integration (BPI) is the ability to define a commonly acceptable business process model that specifies the sequence, hierarchy, events, execution logic & information movement between systems residing in the same enterprise & in multiple interconnected enterprises.
EAI benefits
- Lower development costs
o Integration is simpler because systems are more loosely coupled than in object brokers - Lower opportunity costs
o Integration is done more quickly
o corresponding cost savings reachieved sooner - Lower maintenance effort
o adapters extract the interaction with external systems
o significant advantage from the software engineering point of view
e-Business integration
- e-Business integration is about coordinating the flow of information & processes among enterprises & their underlying systems. Aim is to facilitate supply, distribution & customer information exchange, coordination and collaboration between multiple trading partners
- e-Business integration typically combines automated services from multiple providers, e.g., partners for the supply chain, to support extended transaction management and, more importantly, information exchange, coordination and collaboration across the extended value chain
- Critical elements of e-Business Integration
o Integrated business processes
o Information-exchange infrastructure
o Syntax & Semantics
o Reliability
o Security
e-Business integration objectives
- Integration of both processes and data, rather than simply enabling information to be passed from one system to another
- Integration is non-intrusive: most source and target systems are not being altered
- Integration exploits the concept of reuse of existing apps & systems
- Functions in real time, at the back end, with little end-user influence or effort
- Allows end-users who understand very little about the details of the applications to integrate the applications
- Exploits common agreements between trading organizations
- Supports a uniform process and data model enabling application integration both within and between enterprises
- Takes advantage of advanced security standards to ensure that information moving between companies is not visible to others on the public networks
XML
Data transformation facility for standardizing message transformation between partners