+ All Categories
Home > Documents > Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI...

Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI...

Date post: 23-Dec-2015
Category:
Upload: homer-hall
View: 228 times
Download: 5 times
Share this document with a friend
58
Enterprise Application Integration
Transcript
Page 1: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

Enterprise Application Integration

Page 2: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

2/31

Content

• Architectures

• Middleware

• What is EAI

• A Typical EAI System

• EAI Benefits

• Conclusion

Page 3: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

3/31

Architectures

• 1 layer architecture– monolithic Information Systems– presentation, application logic, and resource

management were merged into a single tier

• 2 layer architecture– separation of presentation layer from other 2 layers

(app + resource) – became popular as 'server/client' systems

• 3 layer architecture– can be achieved by separating RM (resource

management) from application logic layer

Page 4: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

4/31

Multi-tier Architectures

• Where to put the business-logic?– Client tier -> NO!

• Fat clients• Reimplementing it for each different type of client• Redistributing clients after each software update

– Data tier -> NO!• Vendor and technology dependence grows• Different applications have different needs for the

same data• Performance issues in resource usage

Page 5: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

5/31

Multi-tier Architectures

• Where to put the business-logic?– Middle tier -> YES!

• Business logic has its own tier

Web browsersHTML, Java

GUI clientsC++, VB, Java

Client tier user interfaces

WebServer

MiddlewareServer

Middle tier business logic

Data tier data sources

Databases

Legacy Systems

Page 6: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

6/31

Middleware I

• Allows communication– through a standard language– across different platforms– between legacy and moderm applications

• Takes care of– transactions between servers– data conversion– authentication– communications between computers

Page 7: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

7/31

Middleware II

• Provides runtime environment for components in the middle-tier– Component lifecyle and management– Transaction, event and security services– Provides connections to databases,

mainframes and legacy systems

• Seperates client-tier from the data source– Clean seperation of user-interfaces and

presentation logic from the data source

Page 8: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

8/31

Middleware III

• Main use today: legacy wrapping for thin client architectures

User interfaces

Business logic

Data sources

Client-tier (GUI applications, browsers)

Middle-tier (CORBA/EJB/COM server)

Data-tier (databases, mainframes)

Page 9: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

9/31

What is EAI

• A step forard in the evolution of middleware

• Integrates applications and enterprise data sources so that they can easily share business processes and data

• Integration is done without significant changes of applications and data sources

Page 10: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

10/31

Middleware

Middleware

Middleware

Middleware

Middleware

EAI

Middleware

Page 11: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

11/31

ERP System

Legacy System

Databases

CRM System

Enterprise PortalApplication

Financial System

SCM System

Internal Applications(Java,C,C++)

EAI

Page 12: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

12/31

Example: a simple supply chain

purchaseorder

deliver goods

write invoice

order atricle

checkavailability

document customer-contact

notavailable available

Ordering System

WarehouseControlsystem

CRM System

ERP System

ManufacturingSystem

Financial System

Business ProcessManagement

Page 13: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

13/31

Components of EAI

• Adapters– map heterogenous data formats, interfaces

and protocols into a common model and format

– hide heterogeneity – present uniform view of layers below

• Message brokers– facilitates the interaction among adapters

Page 14: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

14/31

Typical EAI system

integrating application(contains the composition logic)

message broker

SmartQuotation DBMSapplications

SmartForecasting XYZ

SmartQuotationadapter

databaseadapter

SmartForecastingadapter

e-mailadapter

XYZadapter

Page 15: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

15/31

Message Brokers

• Message oriented middleware

• Supporting integration of heterogenous systems

• Logic for routing messages

• Filtering and processing messages

Page 16: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

16/31

Old message-based interoperability

inventorymanagement

payment-system

month-endclosing

shipping

message-oriented middleware

dispacher

new PO

Page 17: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

17/31

Message Brokers

inventorymanagement

payment-system

month-endclosing

shipping

message broker

dispacher

new PO

Page 18: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

18/31

Difference

sender receiver

message broker core

In basic MOM it is the sender who specifies the identity of the receiers.

With message brokers, custom message routing logic can be defined at the messae broker level or at the queue level.

Page 19: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

19/31

Routing logic

• sender‘s identity

• message type

• message content

• Definition– message broker level

– queue level

Page 20: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

20/31

The Publish/Subscribe Interaction Model

• Applications communicate by exchanging messages

• Senders do not specify the the recipients of the message, they just publish

• Receivers have to subscribe with the middleware

• Middleware retrieves the list of subscrivers of a messagetype and delivers copy

Page 21: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

21/31

inventorymanagement(subscriber)

paymentsystem(subscriber)

month-endclosing

(subscriber)

shipping(subscriber)

message broker

dispacher(pulisher)

new PO

The Publish/Subscribe Interaction Model

Page 22: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

22/31

Definition messages subscribers want to receive

• Namespaces– „new PO“– „Supply Chain.new PO“– „Supply Chain.*“

• Parameter-based– „type = „new PO“ AND customer = „ACME

Co.“ AND quantity > 1200 “

Page 23: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

23/31

The Publish/Subscribe Interaction Model

admin

message broker MB-A

client client … admin

message broker MB-C

client client …

admin

message broker MB-B

client client …

Page 24: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

24/31

Example: Message exchanges

• Quotation scenario1. Receiving the quote from the customer

2. Accessing the quotation system to obtain a quote

3. Inserting quote information into a forecasting system (i.e., a system that predicts the order volume)

4. Sending the quote back to the customer

Page 25: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

25/31

Example: Message exchangespublication of a

quoteRequest message

delivery of message quoteRequest

synchronous invocation of the getQuote function

publication of a newQuote message

delivery of message newQuote

invocation of the createForecastEntry

procedure

SmartQuotation SmartForecasting

SmartQuotationadapter

SmartForecastingadapter

message broker

publication of a quote message

delivery of message quoteRFQ processing

Page 26: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

26/31

EAI benefits:

• Lower development costs– Integration is simpler because systems are more

loosely coupled than in object brokers

• Lower opportunity costs– Integration is done more quickly– corresponding cost savings reachieved sooner

• Lower maintenance effort– adapters extract the interaction with external systems– significant advantage from the software engineering

point of view

Page 27: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

27/31

Real World Example:

• 1875 Alexander Graham Bell

invented the telephone • in the19th century AT&T became parent

company of the Bell System, the American telephone monopoly

• The system broke up into eight companies in 1984

Page 28: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

28/31

Real World Example:

• From 1984 until 1996 AT&T was an integrated telecommunications services and equipment company

• Merged 2000 to 3 different companies: AT&T Wireless, AT&T Broadband, and AT&T

• 2002 AT&T developed a new nationwide intelligent optical network

Page 29: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

29/31

Conclusion

• Enterprises integrate their applications– less expensive than replacement– more efficient than „information islands“

• Enterprises must establish web-presence and make business services available to web-clients

Page 30: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

30/31

Links

• http://www.ibm.com

• http://www.att.com

• http://www.eaipatterns.com/

• http://www.iwaysoftware.com/

• http://www.capterra.com/enterprise-application-integration-software

• http://www.infoworld.com/techindex/enterprise_application_integration_-_eai.html

Page 31: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

31/31

Page 32: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

Workflow Management Systems

Page 33: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

33/31

Content

• Overview

• The parts of a WfMS

• WfMS requirements

• WfMS and other Middleware

• WfM and the Web

Page 34: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

34/31

Why WfMS

• Originally for office automation

• Automate administrative processes among human participants and applications

• Facilitate definition and maintenance of integration logic

• Processes can be interpreted and modified by business people

Page 35: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

35/31

What is a WfMS

• Software platform to– Design– Develope– Execute– Analyse

workflow processes

• integrate different Services, Applications and human participants

Page 36: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

36/31

The parts of a WfMS

• Workflow definition– Workflow definition Languages

• Workflow engine

• Design interface

• Monitoring tools and reporting capabilities

• User Interface

• Workflow Architecture

Page 37: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

37/31

The parts of a WfMS

Workflow definitionWorkflow

engine

WorkflowInstance

User Interface / Application

Monitoring

Resourcerepository

Page 38: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

38/31

The Workflow definition

• Formal description of a business logic

• Specified by a directed graph

• Defines order of execution of process nodes– Work node– Routing node– Start and completion nodes

• Once designed, definitions can be “applied” to the process engine

Page 39: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

39/31

The Workflow Definition (2)

Check if offered Produkt

Offered = false

Check if worthproceeding

Get quote from Quotation system

go_ahead = true

Get quote from supplier

Update quotationSystem

Contract = false

Contract = true

Send quote to costumer

Enter quote in Forecasting system

else

else

Page 40: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

40/31

The Workflow definition (3)

• Standard Workflow definition Language• Extendable Process Definition Language -

XPDL 1.0. ( WFMC )– Includes application integration and resource

specification– XPDL is extendable– It provides a natural fit with graphical

representations– XPDL 1.0 uses the popular XML language– Can be imported into workflow engines that

supports XPDL

Page 41: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

41/31

The Workflow Definition (4)<WorkflowProcess Id="Parallel"> <Activities> <Activity Id="A"> ... <TransitionRestrictions> <TransitionRestriction> <Split Type="AND"> <TransitionRefs> <TransitionRef Id="B"/> <TransitionRef Id="C"/> </TransitionRefs> </Split> </TransitionRestriction> </TransitionRestrictions> </Activity> <Activity Id="B"> ... </Activity> <Activity Id="C"> ... </Activity>

<Activity Id="D"> ... <TransitionRestrictions> <TransitionRestriction> <Join Type="AND"/> </TransitionRestriction> </TransitionRestrictions> </Activity> </Activities> <Transitions> <Transition Id="AB" From="A" To="B"/> <Transition Id="AC" From="A" To="C"/> <Transition Id="BD" From="B" To="D"/> <Transition Id="CD" From="C" To="D"/> </Transitions></WorkflowProcess> A

CB

D

Page 42: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

42/31

The Workflow engine

• Retrieve Wf definition• Determine nodes to be executed

– routing node– work node

• Place work into the work queue– resource accomplishes work

• OR invoke method of resource API• monitor inbound queue for completion

messages• determine next node to be executed

Wait untilWork is

completed

Determine nodes out ofWF definition

Place workInto work

queue

Page 43: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

43/31

The Workflow engine (2)

Resource Broker

Workflow engine

resource1

resource2

resource3

Inbound queue

Outbound queues

WorkflowDefinition

1

2

3 45

Page 44: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

44/31

Monitoring Tools

• track and monitor individual work requests • review resource productivity and work volume

analysis• quickly search for and identify a work request • provide feedback on performance issues• Get information about bottlenecks in the

process• Analysis to implement changes to the workflow

process

Page 45: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

45/31

User Interface

• Separate work list management from workflow management

• access and action work requests• individuals have a single work list• requests from different workflows

Page 46: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

46/31

Workflow Architectures

• Highly centralized Architecture• Tasmanager parts of Scheduler

• Async. centralized Architecture• Tasmanager no longer part of Scheduler• Calling Program not blocked• No immediate action of called Program

Page 47: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

47/31

Workflow Architectures (2)

• Decentralized Architecture

• No centralized scheduler• Monitoring service for

controlling• No Bottlenecks

Page 48: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

48/31

WfMS Requirements

• Scale

• Dynamic resource selection and assignment

• Performance management

• Sophisticated Failure handling

Page 49: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

49/31

Failure Handling

• Forward Recovery

• Backward Recovery

• Exception handling

• Deadlines

Page 50: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

50/31

WfMS and other Middleware

• Act in many ways as EAI tools

• emphasis on programming in the large

• Focus on workflow that manages integration

• combine WfMS and EAI into a single system

Page 51: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

51/31

WfMS and other Middleware (2)

WfMS

WfMS Adapter

Message Broker

Smart quotationadapter

databaseadapter

forecastingadapter

E-mailadapter

…..

Smartquotation

DBMS Application

SmartForecasting

Page 52: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

52/31

WfM and the Web

• Services have to be described • Protocols to communicate with the Service

– SOAP

• Formats and protocols for invoking the Service– WSDL

• Must be easy to find• Search Services by creteria

– UDDI

Page 53: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

53/31

Web Service Integration

• Outsource Services

• Search for business partners

• Establish partnership

• Enable Service communication

Page 54: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

54/31

Web Service Integration (2)

• Exchange of messages

• Services may not be invoked in right order

• Flow Model

Page 55: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

55/31

Web Service Integration (3)

• New requirements

• Get list of Services that fullfill them

Page 56: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

56/31

Web Service Integration (4)

• Compose new Web Service

• Publish Service

• Internal details hidden from User

Page 57: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

57/31

Disadvantages of WfMS

• Expensive software licenses

• Complex installation and operation

• Heavy-weight platforms

Page 58: Enterprise Application Integration. 2/31 Content Architectures Middleware What is EAI A Typical EAI System EAI Benefits Conclusion.

58/31

Advantages of WfMS

• Rapid process design and maintainance

• Failure and exception handling

• Catering for performance and high availability

• Workflow design with graphical interface


Recommended