Lecture 1
Introduction to Enterprise Application
Integration (EAI)
Outline
• Enterprise application integration (EAI) and
challenges
• Purpose of EAI
– Portal Integration
– Entity Integration
– Process Integration
– B2B Integration
2
Enterprise applications
• Software which provides business logic support
functionality for an enterprise, typically in
commercial organizations
– Aims to improve the enterprise's productivity and
efficiency.
– Examples:
• online shopping and online payment processing, interactive
product catalogue, automated billing systems, security,
content management, CRM, ERP, Business Intelligence, HR
Management, Manufacturing, EAI, Enterprise Forms
Automation
3
• Hundreds of applications in the enterprise
– In-house
– third-party vendors
– run on multiple computers
– run on multiple platforms
– geographically dispersed
– Run by business partners or customers.
– Legacy Systems
4
The different applications are used to
solve very narrow problems within
departments
Legacy System
• Old technology, computer system, or application
program that continues to be used
– it still functions for the users' needs
– widely used for banking, manufacturing and financial
control functions in large corporations
– Not likely to be replaced in the near future
• New hardware is no longer available
• Original source code has been lost.
• Support no longer be found
5
Enterprise Application Integration
• Connect the applications in the enterprise to
allow unrestricted sharing of data and business
processes among any connected applications
or data structures
6
Why Enterprise Integration?
• One may build a new system or component by
implementing it from ground-up, so why enterprise
integration?
Cost factor.
Legacy systems.
Spreading business functions across multiple applications
achieves flexibility
Business requirements (and thus the related business
processes) are changing rapidly.
7
Integration Challenges
• Heterogeneous applications
– Different programming languages, run on different
OS, use different data format, etc
• Application may change over time
– if one system changes, all other systems may be
affected
8
• Networks are unreliable
– delays or interruptions
• Networks are slow
– Sending data across a network is multiple orders
of magnitude slower than making a local method
call.
9
Order Processing Process
11
Browser
Order
Send
Invoice
Receive
Payment
Delivery
Order Entry
System
Warehouse
System
Finance
System
Inventory
System
Static Web
Server
Order
Processing
Customer Service
Representative
Send Order
Customer
Purpose of Integration
• Portal Integration
• Entity Integration
• Process Integration
• B2B Integration
12
Portal Integration: motivation
• Users may have to access more than one
system to answer a specific question or to
perform a single business function
• Information portals aggregate information
from multiple sources into a single display to
avoid having the user access multiple systems
for information.
13
Order Tracking
14
Browser
Order
Send
Invoice
Receive
Payment
Delivery
Order Entry
System
Warehouse
System
Finance
System
Inventory
System
Static Web
Server
Order
Processing
Customer Service Portal
Customer Service
RepresentativeCheck product availability, check order
status, cancel order, change of address
Customer
Use of portals
• A portal gives the customer service
representative a unified view of the various
records for a customer
• Helpful in providing efficient and effective
service to the customer
• Aggregate information only for end user but
not for applications
– Simple to implement
15
Variation of portals
• Functionality and complexity
– Display only
– Simple Processing
– Single Application Interaction
– Cross pane interactivity
16
Display only
• Simply displays data in different areas of the
screen (a rectangle area called pane)
• Allows the user to view information retrieved
from multiple applications on a single screen
17
Simple preprocessing
• Add simple rules that help the user make
decisions
– E.g. if the billing system reports that a customer
payment is overdue, the portal would list this as
an exception in bold red letters at the top of the
screen
18
Single application interaction
• Users may issue commands to an application
• No interaction between applications
19
Cross pane interactivity
• Information displayed in one pane depends on
a user selection in another pane
• Select a customer from a list of customers
retrieved from CRM --> show his payment
history
20
Entity Integration: Motivation
• Data are stored redundantly across different
applications
• For example, an employee entity is usually
defined in human resource management system
(HRMS) applications, in payroll applications, and
in benefits applications, as well as in other
systems.
– Each system defines its own view of an employee.
– if you are building an employee self-service portal,
you need to have a complete view of what constitutes
an employee and not just the bits and pieces.
21
Order Processing Process
22
Customer Data
Customer
Browser
Order
Send
Invoice
Receive
Payment
Delivery
Order Entry
System
Warehouse
System
Finance
System
Inventory
System
Static Web
Server
Order
Processing
• Order entry system (for contact)
• Finance system (for billing)
• Warehouse system (for delivery)
Entity Aggregation
• Provides a logical representation of unified data
entities across multiple data stores.
• Applications can interact with this representation
as if it were a single data source
• Simplifies the development of applications that
need to access data across multiple data stores
23
Schema Reconciliation
• The representation of an entity within the
different applications may not be the same
– Different repositories can hold different schemas for
the same entity
• The Entity Aggregation layer must harmonize the
subtle differences between these schemas
– define a unified schema for all entities which
represents a logical consolidation of all the views
– effect transformations between each repository’s
schema and the unified schema
24
Schema mapping
25
Customer Self Service
Enterprise portal
Other systems
Issues to handle
• Same data is represented with different identifier
– "order" and "purchase order"
• Semantic dissonance
– Data that appears to be the same may not necessarily
mean the same thing
– E.g. inventory system: price, catalog: price after
discount
• Inconsistent data
– What if the price in the catalog and inventory system
is not the same?
26
Process Integration
• Focuses on the coordination of interactions
between multiple systems which may involve
multiple disparate applications
– Different tasks may be performed by different users
– Different tasks may read or write data from different
sources
– The tasks may be executed sequentially or in parallel
• Allow changes of the business process without
affect the underlying business applications
27
Order Processing Process
28
Product Data Order Tracking Data Customer Data
Browser
Order
Send
Invoice
Receive
Payment
Delivery
Order Entry
System
Warehouse
System
Finance
System
Inventory
System
Static Web
Server
Order
Processing
Delivery before payment
Browse
Catalog
Send
Invoice
Receive
Payment
Delivery
Order
Processing
Browse
Catalog
Send
Invoice
Receive
Payment
Delivery
Order
Processing
Premium
customer
Send
Invoice
Receive
Payment
Delivery
Normal
customer
OR
Issues to handle
• Complex business functions can often take
days or weeks to complete.
– Asynchronous/synchronous interaction
• Handle multiple concurrent executions of a
process
• What if one of the application within a process
fails?
– Roll back should be supported to return to a
consistent state
30
Business-to-Business Integration
• Business functions may be available from outside
suppliers or business partners, e.g.
– The shipping company may provide a service for
customers to compute shipping cost or track
shipments.
– A business may use an outside provider to compute
sales tax rates
– A customer may contact a retailer to inquire on the
price and the availability of an item. In response, the
retailer may ask the supplier for the status of an
expected shipment that contains the out-of-stock item.
31
32
Handle
order
Ship
product
Receive
order
Supplier B
B2B Integration
Browser
Catalog
Send
Invoice
Receive
Payment
Delivery
Order
Processing
Quote
Reply
Pick up
Quote
request
Order Processing
Shipping Agent
Handle
order
Order
part
Order
part
Ship
product
Receive
order
Supplier A
Deliver
Compute
Charge
References
• Integration Pattern
– http://msdn.microsoft.com/en-us/library/ms978729.aspx
– Chapter 1 and Chapter 3
• Enterprise Application Integration: A Wiley Tech Brief
– http://library.polyu.edu.hk/search~S6/?searchtype=t&sear
charg=Enterprise+Application+Integration%3A+A+Wiley+T
ech
– Chapter 1
33
本文档为【Enterprise_Application_Integration_(EAI)】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。