SlideShare a Scribd company logo
1 of 16
Download to read offline
© Peter R. Egli 2015
1/16
Rev. 1.70
Enterprise Application Integration indigoo.com
Peter R. Egli
INDIGOO.COM
OVERVIEW OF ENTERPRISE APPLICATION
INTEGRATION CONCEPTS AND ARCHITECTURES
EAI
© Peter R. Egli 2015
2/16
Rev. 1.70
Enterprise Application Integration indigoo.com
Contents
1. EAI versus SOA versus ESB
2. EAI
3. SOA
4. ESB
5. N-tier enterprise architecture
6. WS-BPEL
7. WOA
© Peter R. Egli 2015
3/16
Rev. 1.70
Enterprise Application Integration indigoo.com
1. EAI versus SOA versus ESB (1/3)
What is EAI (Enterprise Application Integration)?
EAI aims at integrating different enterprise applications. Thus EAI is a goal for enterprise
architectures.
What is SOA:
SOA is an architectural pattern that aims at concentrating common (business) functionality into
distinct services and exposing these on endpoints. Thus SOA is a means or architectural
pattern to achieve EAI.
What is ESB?
ESB is an infrastructure component to facilitate SOA (ESB = messaging backbone) and EAI.
EAI
SOA
Architectural
pattern for
ESB
Infrastructure
component for
© Peter R. Egli 2015
4/16
Rev. 1.70
Enterprise Application Integration indigoo.com
1. EAI versus SOA versus ESB (2/3)
Traditional EAI architectures before SOA:
ERP
Client A
CRM
Client B
SCM
Client C
PDM
Client D
Other
Client E
ESB (mediation middleware)
Security
Transaction
Transformation
No direct
access between
client and
server allowed
No direct access between
Servers allowed
CORBA DCOM RMI HTTP xyz
Integration of applications (common middleware infrastructure through ESB).
Inefficient for compound services (services calling other services have to pass through the
central EAI middleware (ESB) with security checks and transformations for each call).
Limited reuse of services due to hidden endpoints (classical C/S architecture).
ERP: Enterprise Resource Planning
CRM: Customer Relationship Management
SCM: Supply Chain Management
PDM: Product Data Management
CORBA: Common Object Request Broker Architecture
DCOM: Distributed COM
RMI: Remote Method Invocation
© Peter R. Egli 2015
5/16
Rev. 1.70
Enterprise Application Integration indigoo.com
1. EAI versus SOA versus ESB (3/3)
The solution for EAI with SOA:
• Common functionality is exposed as services.
• Endpoints (services) are exposed to be freely called by anyone.
• Services may call other services, clients may call services ("liberation" of endpoints).
• Services form a service grid with exposed application service endpoints and centralized
infrastructure service endpoints.
S0
ESB
S1 S2 S3
Trans-
action
Security
Logging
© Peter R. Egli 2015
6/16
Rev. 1.70
Enterprise Application Integration indigoo.com
2. EAI (1/3)
What is EAI?
EAI is a business need or goal to integrate and couple diverse applications in an enterprise /
organization. The benefits of EAI are:
 Share information between applications (basically connect the different DBs) and keep data
consistent.
 Potentially reduce the technology landscape, reduce heterogeneity (standard interfaces of
services mandate the use of standards, applications have less freedom to choose from
different DBs, OSs, middlewares etc.).
 Faster and easier deployment of a new / updated application (interfaces for the integration
are defined, middleware technologies are in place).
Traditional IT landscape: EAI architecture:
n*(n-1)/2 application interface connections. Central communication backbone.
with standard interfaces.
Messaging backbone
© Peter R. Egli 2015
7/16
Rev. 1.70
Enterprise Application Integration indigoo.com
2. EAI (2/3)
Typical EAI topologies:
1. Hub and spoke:
 EAI system is at the center (hub),
interaction with applications
via adaptors (=spokes).
2. Bus:
 EAI system is a bus.
 Distributed message-oriented communication.
App.
App.
App.
App.
Hub
(msg.
Broker)
App.
Adaptor
App.
Adaptor
Messaging backbone
App.
Adaptor
App.
Adaptor
Adaptor
App.
Adaptor Adaptor
App. App.
© Peter R. Egli 2015
8/16
Rev. 1.70
Enterprise Application Integration indigoo.com
2. EAI (3/3)
EAI building blocks:
EAI can be accomplished in different ways. Most did not prove scalable (e.g. integration at DB
level). Use of a centralized broker emerged as the best solution to the integration problem
(scalability). This best practice has the following building blocks:
1. Centralized broker:
 Handles security, access and communication.
 ESB
2. Data model:
 Common data model based on a standard data structure. XML has become the de-facto
standard.
3. Adaptor / connector:
 Adaptors / connectors connect applications to the central broker.
4. System model:
 Defines the interface including API and data flow to a component that connects to the central
broker. Allows other applications to interact with this component in a standardized way.
© Peter R. Egli 2015
9/16
Rev. 1.70
Enterprise Application Integration indigoo.com
3. SOA (1/3)
SOA aims to extract common (service) functionality from different applications and expose it
on a service endpoint.
In the basic SOA pattern, service consumer, provider and registry are separated into different
entities.
The service registry helps decoupling service consumer and provider so that the consumer
does not need to know the location of the provider.
The service registry is an optional entity. In smaller deployments running a service registry may
be 'overkill'.
Service
registry
Service
consumer
Service
provider
1. Register
(publish)
2. Find
3. Bind
© Peter R. Egli 2015
10/16
Rev. 1.70
Enterprise Application Integration indigoo.com
3. SOA (2/3)
Services can be exposed at different levels / granularity:
Finding the right granularity is crucial for a successful SOA.
A layering as follows may help in defining / decomposing the service landscape.
Enterprise resources
Component services
Business services
Workflow
services
Applications
Users
Granularity
Simple atomic action on a resource; action does
not depend on any other service / component.
Example: Simple access to a DB table.
Orchestrates component services into a single business
level process.
Example: Submit an expense report.
Conversational workflow services have a state.
Example: Expense processing service.
Standard: WS-BPEL
Applications invoke workflow services.
© Peter R. Egli 2015
11/16
Rev. 1.70
Enterprise Application Integration indigoo.com
3. SOA (3/3)
Standards are crucial for SOAs.
These standards may be layered as follows:
Network protocol (HTTP, SMTP)
XML (infoset, namespace, schema)
Service description (WSDL, WADL)
Service invocation, messaging (SOAP, WS-I / WS-*)
Service discovery (UDDI, JAXR)
Service orchestration (WS-BPEL)
Security Transactions Management
Infrastructure
standards
Semantic
standards
ebXML, XML/EDIFACT, HL7 CDA, SWIFT etc.
ebXML: Electronic business XML
XML/EDIFACT: XML for Electronic Data Interchange for Administration, Commerce and Transport
HL7 CDA: Health Level 7 XML format
WS-BPEL: WS Business Process Engineering Language
SWIFT: Societiy for Worldwide Interbank Financial Telecommunication
Supporting
standards
© Peter R. Egli 2015
12/16
Rev. 1.70
Enterprise Application Integration indigoo.com
4. ESB
Enterprise Service Bus is an infrastructure to facilitate SOA.
ESB is basically a messaging backbone / broker which provides the following functions:
Examples:
Mule
IBM WebSphere ESB
Microsoft BizTalk server
Category Functions
Invocation
Support for synchronous and asynchronous transport protocols, service mapping (locating and
binding).
Routing
Addressability, static/deterministic routing, content-based routing, rules-based routing, policy-
based routing.
Mediation Adapters, protocol transformation, service mapping.
Messaging Message-processing, message transformation and message enhancement.
Process choreography Implementation of complex business processes.
Service orchestration Coordination of multiple implementation services exposed as a single, aggregate service.
Complex event
processing Event-interpretation, correlation, pattern-matching.
Other quality of service Security (encryption and signing), reliable delivery, transaction management.
Management Monitoring, audit, logging, metering, admin console, BAM.
Source: http://en.wikipedia.org/wiki/Enterprise_service_bus
© Peter R. Egli 2015
13/16
Rev. 1.70
Enterprise Application Integration indigoo.com
5. N-tier enterprise architecture
"Best practice" for "horizontal" decomposition of an application: 3-tier.
 Separation of concerns (user interface, business logic and data handling) improves
maintainability and extensibility.
Web browsers
HTML, Javascript
GUI clients
C++, C#, Java
Web
Server
Middleware
Server
Databases
Legacy Systems
Presentation tier:
User interfaces
Middle tier:
Business logic
Data tier:
Data sources / sinks
© Peter R. Egli 2015
14/16
Rev. 1.70
Enterprise Application Integration indigoo.com
6. WS-BPEL (1/2)
What is WS-BPEL (Web Services Business Process Execution Language)?
WS-BPEL is a language to define business processes based on web services.
BPEL binds (web) services together to form larger complex business services.
Thus BPEL is kind of a business programming language.
BPEL provides:
a. Control flow (branch, loop, parallel).
b. Asynchronous correlation.
c. Transaction support.
For writing business programs, the following components are necessary:
1. Programming logic (provided by BPEL).
2. Data types (provided by the XSD of a web service).
3. Input / output (provided by WSDL that defines the web service messages).
WS-BPEL versus BPEL4WS:
BPEL4WS: Original standards by BEA, IBM, MS, SAP and Siebel.
WS-BPEL: Successor to BPEL4WS defined by OASIS (name to comply with WS-* scheme).
WS-BPEL and BPMN (Business Process Modelling Notation):
BPMN defines the (graphical) notation for business process elements while WS-BPEL defines
an XML-based business process description language.
© Peter R. Egli 2015
15/16
Rev. 1.70
Enterprise Application Integration indigoo.com
6. WS-BPEL (2/2)
BPEL hello world example:
<?xml version="1.0" encoding="UTF-8"?>
<process
xmlns="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
xmlns:print="http://www.eclipse.org/tptp/choreography/2004/engine/Print"
<!--Hello World - my first ever BPEL program -->
<import importType="http://schemas.xmlsoap.org/wsdl/"
location="../../test_bucket/service_libraries/tptp_EnginePrinterPort.wsdl"
namespace="http://www.eclipse.org/tptp/choreography/2004/engine/Print" />
<partnerLinks>
<partnerLink name="printService" partnerLinkType="print:printLink" partnerRole="printService"/>
</partnerLinks>
<variables>
<variable name="hello_world" messageType="print:PrintMessage" />
</variables>
<assign>
<copy>
<from><literal>Hello World</literal></from>
<to>.value</to>
</copy>
</assign>
<invoke partnerLink="printService" operation="print" inputVariable="hello_world" />
</process>
Source: http://www.eclipse.org/tptp/platform/documents/design/choreography_html/tutorials/wsbpel_tut.html
© Peter R. Egli 2015
16/16
Rev. 1.70
Enterprise Application Integration indigoo.com
7. WOA
Web Oriented Architecture is a concept that extends or simplifies SOA through the use of REST
and POX (Plain Old XML).
WOA / REST is simply another (simpler?!) approach to SOA.
POX: Plain Old XML (like POJO, but with XML)
JSON: Javascript Object Notation (more compact alternative to XML)
BPEL: Business Process Execution Language
Complexity
Features/Richness
SOA
WOA
Source: http://www.zdnet.com/blog/hinchcliffe/the-soa-with-reach-web-oriented-architecture/27
WSDL
REST
BPEL
JMS
RMI
SOAP
WS-*
JSON
HTTP

More Related Content

What's hot

Event-driven microservices
Event-driven microservicesEvent-driven microservices
Event-driven microservicesAndrew Schofield
 
Event Driven Architecture
Event Driven ArchitectureEvent Driven Architecture
Event Driven ArchitectureChris Patterson
 
Microservices Architecture - Cloud Native Apps
Microservices Architecture - Cloud Native AppsMicroservices Architecture - Cloud Native Apps
Microservices Architecture - Cloud Native AppsAraf Karsh Hamid
 
Hybrid integration reference architecture
Hybrid integration reference architectureHybrid integration reference architecture
Hybrid integration reference architectureKim Clark
 
SOA Service Oriented Architecture
SOA Service Oriented ArchitectureSOA Service Oriented Architecture
SOA Service Oriented ArchitectureVinay Rajadhyaksha
 
Mit Streaming die Brücken zum Erfolg bauen
Mit Streaming die Brücken zum Erfolg bauenMit Streaming die Brücken zum Erfolg bauen
Mit Streaming die Brücken zum Erfolg bauenconfluent
 
Where and when to use the Oracle Service Bus (OSB)
Where and when to use the Oracle Service Bus (OSB)Where and when to use the Oracle Service Bus (OSB)
Where and when to use the Oracle Service Bus (OSB)Guido Schmutz
 
Oracle Integration Cloud – Pragmatic approach to integrations
Oracle Integration Cloud – Pragmatic approach to integrationsOracle Integration Cloud – Pragmatic approach to integrations
Oracle Integration Cloud – Pragmatic approach to integrationsJade Global
 
Enterprise Integration Patterns with Spring integration!
Enterprise Integration Patterns with Spring integration!Enterprise Integration Patterns with Spring integration!
Enterprise Integration Patterns with Spring integration!hegdekiranr
 
Microservice architecture design principles
Microservice architecture design principlesMicroservice architecture design principles
Microservice architecture design principlesSanjoy Kumar Roy
 
Microservice vs. Monolithic Architecture
Microservice vs. Monolithic ArchitectureMicroservice vs. Monolithic Architecture
Microservice vs. Monolithic ArchitecturePaul Mooney
 
Oracle Cloud Infrastructure (OCI)
Oracle Cloud Infrastructure (OCI)Oracle Cloud Infrastructure (OCI)
Oracle Cloud Infrastructure (OCI)emmajones88
 
B2B Integration in the Cloud
B2B Integration in the CloudB2B Integration in the Cloud
B2B Integration in the Cloudi8c
 
C1 oracle's cloud computing strategy your strategy-your cloud_your choice
C1   oracle's cloud computing strategy your strategy-your cloud_your choiceC1   oracle's cloud computing strategy your strategy-your cloud_your choice
C1 oracle's cloud computing strategy your strategy-your cloud_your choiceDr. Wilfred Lin (Ph.D.)
 
Event Driven Architecture
Event Driven ArchitectureEvent Driven Architecture
Event Driven ArchitectureStefan Norberg
 
Frequently asked MuleSoft Interview Questions and Answers from Techlightning
Frequently asked MuleSoft Interview Questions and Answers from TechlightningFrequently asked MuleSoft Interview Questions and Answers from Techlightning
Frequently asked MuleSoft Interview Questions and Answers from TechlightningArul ChristhuRaj Alphonse
 
How to Migrate Applications Off a Mainframe
How to Migrate Applications Off a MainframeHow to Migrate Applications Off a Mainframe
How to Migrate Applications Off a MainframeVMware Tanzu
 

What's hot (20)

Event-driven microservices
Event-driven microservicesEvent-driven microservices
Event-driven microservices
 
Event Driven Architecture
Event Driven ArchitectureEvent Driven Architecture
Event Driven Architecture
 
Microservices Architecture - Cloud Native Apps
Microservices Architecture - Cloud Native AppsMicroservices Architecture - Cloud Native Apps
Microservices Architecture - Cloud Native Apps
 
Hybrid integration reference architecture
Hybrid integration reference architectureHybrid integration reference architecture
Hybrid integration reference architecture
 
SOA Service Oriented Architecture
SOA Service Oriented ArchitectureSOA Service Oriented Architecture
SOA Service Oriented Architecture
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
Mit Streaming die Brücken zum Erfolg bauen
Mit Streaming die Brücken zum Erfolg bauenMit Streaming die Brücken zum Erfolg bauen
Mit Streaming die Brücken zum Erfolg bauen
 
Where and when to use the Oracle Service Bus (OSB)
Where and when to use the Oracle Service Bus (OSB)Where and when to use the Oracle Service Bus (OSB)
Where and when to use the Oracle Service Bus (OSB)
 
Oracle Integration Cloud – Pragmatic approach to integrations
Oracle Integration Cloud – Pragmatic approach to integrationsOracle Integration Cloud – Pragmatic approach to integrations
Oracle Integration Cloud – Pragmatic approach to integrations
 
Enterprise Integration Patterns with Spring integration!
Enterprise Integration Patterns with Spring integration!Enterprise Integration Patterns with Spring integration!
Enterprise Integration Patterns with Spring integration!
 
Microservice architecture design principles
Microservice architecture design principlesMicroservice architecture design principles
Microservice architecture design principles
 
Microservice vs. Monolithic Architecture
Microservice vs. Monolithic ArchitectureMicroservice vs. Monolithic Architecture
Microservice vs. Monolithic Architecture
 
Oracle Cloud Infrastructure (OCI)
Oracle Cloud Infrastructure (OCI)Oracle Cloud Infrastructure (OCI)
Oracle Cloud Infrastructure (OCI)
 
B2B Integration in the Cloud
B2B Integration in the CloudB2B Integration in the Cloud
B2B Integration in the Cloud
 
C1 oracle's cloud computing strategy your strategy-your cloud_your choice
C1   oracle's cloud computing strategy your strategy-your cloud_your choiceC1   oracle's cloud computing strategy your strategy-your cloud_your choice
C1 oracle's cloud computing strategy your strategy-your cloud_your choice
 
Event Driven Architecture
Event Driven ArchitectureEvent Driven Architecture
Event Driven Architecture
 
Frequently asked MuleSoft Interview Questions and Answers from Techlightning
Frequently asked MuleSoft Interview Questions and Answers from TechlightningFrequently asked MuleSoft Interview Questions and Answers from Techlightning
Frequently asked MuleSoft Interview Questions and Answers from Techlightning
 
Why Microservice
Why Microservice Why Microservice
Why Microservice
 
Event driven architecture
Event driven architectureEvent driven architecture
Event driven architecture
 
How to Migrate Applications Off a Mainframe
How to Migrate Applications Off a MainframeHow to Migrate Applications Off a Mainframe
How to Migrate Applications Off a Mainframe
 

Viewers also liked

Enterprise application integration
Enterprise application integrationEnterprise application integration
Enterprise application integrationGoa App
 
Getting started with Enterprise Application Integration (EAI) using Enterpris...
Getting started with Enterprise Application Integration (EAI) using Enterpris...Getting started with Enterprise Application Integration (EAI) using Enterpris...
Getting started with Enterprise Application Integration (EAI) using Enterpris...Tamim Khan
 
Digital Certificates and Secure Web Access
Digital Certificates and Secure Web AccessDigital Certificates and Secure Web Access
Digital Certificates and Secure Web Accessbluntm64
 
Digital certificates and information security
Digital certificates and information securityDigital certificates and information security
Digital certificates and information securityDevam Shah
 
Why you need to secure mobile apps - now
Why you need to secure mobile apps - nowWhy you need to secure mobile apps - now
Why you need to secure mobile apps - nowSymantec
 
History of Web Technology
History of Web TechnologyHistory of Web Technology
History of Web TechnologyShuvo Malakar
 
Mobile Management
Mobile ManagementMobile Management
Mobile ManagementCarahsoft
 
Meeting Mobile and BYOD Security Challenges
Meeting Mobile and BYOD Security ChallengesMeeting Mobile and BYOD Security Challenges
Meeting Mobile and BYOD Security ChallengesSymantec
 
Basic introduction to SOA
Basic introduction to SOABasic introduction to SOA
Basic introduction to SOAJoaquin Rincon
 
SOA & ESB Presentation
SOA & ESB PresentationSOA & ESB Presentation
SOA & ESB Presentationerichleipold
 
Service Oriented Architecture
Service Oriented ArchitectureService Oriented Architecture
Service Oriented ArchitectureRobert Sim
 
Digital certificates
Digital certificates Digital certificates
Digital certificates Sheetal Verma
 
Disruptive Technologies McKinsey
Disruptive Technologies McKinseyDisruptive Technologies McKinsey
Disruptive Technologies McKinseyOscar Valentin
 
Disruptive Technologies - an introduction
Disruptive Technologies - an introductionDisruptive Technologies - an introduction
Disruptive Technologies - an introductionChris Sandström
 
5 Examples Of Disruptive Innovation
5 Examples Of Disruptive Innovation5 Examples Of Disruptive Innovation
5 Examples Of Disruptive InnovationChris Sandström
 

Viewers also liked (17)

Enterprise application integration
Enterprise application integrationEnterprise application integration
Enterprise application integration
 
Getting started with Enterprise Application Integration (EAI) using Enterpris...
Getting started with Enterprise Application Integration (EAI) using Enterpris...Getting started with Enterprise Application Integration (EAI) using Enterpris...
Getting started with Enterprise Application Integration (EAI) using Enterpris...
 
EAI example
EAI exampleEAI example
EAI example
 
Digital Certificates and Secure Web Access
Digital Certificates and Secure Web AccessDigital Certificates and Secure Web Access
Digital Certificates and Secure Web Access
 
Digital certificates and information security
Digital certificates and information securityDigital certificates and information security
Digital certificates and information security
 
Why you need to secure mobile apps - now
Why you need to secure mobile apps - nowWhy you need to secure mobile apps - now
Why you need to secure mobile apps - now
 
History of Web Technology
History of Web TechnologyHistory of Web Technology
History of Web Technology
 
Mobile Management
Mobile ManagementMobile Management
Mobile Management
 
Meeting Mobile and BYOD Security Challenges
Meeting Mobile and BYOD Security ChallengesMeeting Mobile and BYOD Security Challenges
Meeting Mobile and BYOD Security Challenges
 
Basic introduction to SOA
Basic introduction to SOABasic introduction to SOA
Basic introduction to SOA
 
SOA & ESB Presentation
SOA & ESB PresentationSOA & ESB Presentation
SOA & ESB Presentation
 
Disruptive Technologies
Disruptive TechnologiesDisruptive Technologies
Disruptive Technologies
 
Service Oriented Architecture
Service Oriented ArchitectureService Oriented Architecture
Service Oriented Architecture
 
Digital certificates
Digital certificates Digital certificates
Digital certificates
 
Disruptive Technologies McKinsey
Disruptive Technologies McKinseyDisruptive Technologies McKinsey
Disruptive Technologies McKinsey
 
Disruptive Technologies - an introduction
Disruptive Technologies - an introductionDisruptive Technologies - an introduction
Disruptive Technologies - an introduction
 
5 Examples Of Disruptive Innovation
5 Examples Of Disruptive Innovation5 Examples Of Disruptive Innovation
5 Examples Of Disruptive Innovation
 

Similar to Enterprise Application Integration Technologies

WebServices and Workflow technologies
WebServices and Workflow technologiesWebServices and Workflow technologies
WebServices and Workflow technologiesNitin Pande
 
Keynote - The Benefits of an Open Service Oriented Architecture in the Enterpr...
Keynote - The Benefits of an Open Service Oriented Architecture in the Enterpr...Keynote - The Benefits of an Open Service Oriented Architecture in the Enterpr...
Keynote - The Benefits of an Open Service Oriented Architecture in the Enterpr...mfrancis
 
15 falko menge--_enterpise_service_bus
15 falko menge--_enterpise_service_bus15 falko menge--_enterpise_service_bus
15 falko menge--_enterpise_service_buslmphuong06
 
Ws Soa V6 Theory And Practice
Ws Soa V6 Theory And PracticeWs Soa V6 Theory And Practice
Ws Soa V6 Theory And PracticePini Cohen
 
Mis 20021241104 20021241103_20021241148_20021241155_20021241149_eai and flexi...
Mis 20021241104 20021241103_20021241148_20021241155_20021241149_eai and flexi...Mis 20021241104 20021241103_20021241148_20021241155_20021241149_eai and flexi...
Mis 20021241104 20021241103_20021241148_20021241155_20021241149_eai and flexi...Shaunak Gujjewar
 
WSO2 Guest Webinar - ESB meets IoT, a Primer on WSO2 Enterprise Service Bus (...
WSO2 Guest Webinar - ESB meets IoT, a Primer on WSO2 Enterprise Service Bus (...WSO2 Guest Webinar - ESB meets IoT, a Primer on WSO2 Enterprise Service Bus (...
WSO2 Guest Webinar - ESB meets IoT, a Primer on WSO2 Enterprise Service Bus (...Yenlo
 
The New Enterprise Alphabet - .Net, XML And XBRL
The New Enterprise Alphabet - .Net, XML And XBRLThe New Enterprise Alphabet - .Net, XML And XBRL
The New Enterprise Alphabet - .Net, XML And XBRLJorgen Thelin
 
Soa session 1 part 1(2)
Soa session 1 part 1(2)Soa session 1 part 1(2)
Soa session 1 part 1(2)Shilpi Jain
 
ServiceOrientedSoftwareEngineeringSOSEASurveyandGapAnalysis.pdf
ServiceOrientedSoftwareEngineeringSOSEASurveyandGapAnalysis.pdfServiceOrientedSoftwareEngineeringSOSEASurveyandGapAnalysis.pdf
ServiceOrientedSoftwareEngineeringSOSEASurveyandGapAnalysis.pdfMsDelphyP
 
TYBSC CS 2018 WEB SERVICES NOTES
TYBSC CS 2018 WEB SERVICES NOTESTYBSC CS 2018 WEB SERVICES NOTES
TYBSC CS 2018 WEB SERVICES NOTESWE-IT TUTORIALS
 
Enterprise Application integration (middleware) concepts
Enterprise Application integration (middleware) conceptsEnterprise Application integration (middleware) concepts
Enterprise Application integration (middleware) conceptsShantanu Thakre
 
Next Generation_WVI
Next Generation_WVINext Generation_WVI
Next Generation_WVIPrasad Kapu
 
Taking Control of Your Future: Own Your Service Platforms
Taking Control of Your Future: Own Your Service PlatformsTaking Control of Your Future: Own Your Service Platforms
Taking Control of Your Future: Own Your Service PlatformsAlan Quayle
 
Oracle AIA - Does it deliver on it's integration promise?
Oracle AIA - Does it deliver on it's integration promise?Oracle AIA - Does it deliver on it's integration promise?
Oracle AIA - Does it deliver on it's integration promise?Revelation Technologies
 
SOA Fundamentals
SOA  FundamentalsSOA  Fundamentals
SOA Fundamentalsabhi1112
 

Similar to Enterprise Application Integration Technologies (20)

WebServices and Workflow technologies
WebServices and Workflow technologiesWebServices and Workflow technologies
WebServices and Workflow technologies
 
Ibt Soa Babson Talk V8
Ibt Soa Babson Talk V8Ibt Soa Babson Talk V8
Ibt Soa Babson Talk V8
 
2011-ESB-WP-Draft
2011-ESB-WP-Draft2011-ESB-WP-Draft
2011-ESB-WP-Draft
 
Keynote - The Benefits of an Open Service Oriented Architecture in the Enterpr...
Keynote - The Benefits of an Open Service Oriented Architecture in the Enterpr...Keynote - The Benefits of an Open Service Oriented Architecture in the Enterpr...
Keynote - The Benefits of an Open Service Oriented Architecture in the Enterpr...
 
As044285288
As044285288As044285288
As044285288
 
15 falko menge--_enterpise_service_bus
15 falko menge--_enterpise_service_bus15 falko menge--_enterpise_service_bus
15 falko menge--_enterpise_service_bus
 
Ws Soa V6 Theory And Practice
Ws Soa V6 Theory And PracticeWs Soa V6 Theory And Practice
Ws Soa V6 Theory And Practice
 
Mis 20021241104 20021241103_20021241148_20021241155_20021241149_eai and flexi...
Mis 20021241104 20021241103_20021241148_20021241155_20021241149_eai and flexi...Mis 20021241104 20021241103_20021241148_20021241155_20021241149_eai and flexi...
Mis 20021241104 20021241103_20021241148_20021241155_20021241149_eai and flexi...
 
WSO2 Guest Webinar - ESB meets IoT, a Primer on WSO2 Enterprise Service Bus (...
WSO2 Guest Webinar - ESB meets IoT, a Primer on WSO2 Enterprise Service Bus (...WSO2 Guest Webinar - ESB meets IoT, a Primer on WSO2 Enterprise Service Bus (...
WSO2 Guest Webinar - ESB meets IoT, a Primer on WSO2 Enterprise Service Bus (...
 
Web services
Web servicesWeb services
Web services
 
Api enablement-mainframe
Api enablement-mainframeApi enablement-mainframe
Api enablement-mainframe
 
The New Enterprise Alphabet - .Net, XML And XBRL
The New Enterprise Alphabet - .Net, XML And XBRLThe New Enterprise Alphabet - .Net, XML And XBRL
The New Enterprise Alphabet - .Net, XML And XBRL
 
Soa session 1 part 1(2)
Soa session 1 part 1(2)Soa session 1 part 1(2)
Soa session 1 part 1(2)
 
ServiceOrientedSoftwareEngineeringSOSEASurveyandGapAnalysis.pdf
ServiceOrientedSoftwareEngineeringSOSEASurveyandGapAnalysis.pdfServiceOrientedSoftwareEngineeringSOSEASurveyandGapAnalysis.pdf
ServiceOrientedSoftwareEngineeringSOSEASurveyandGapAnalysis.pdf
 
TYBSC CS 2018 WEB SERVICES NOTES
TYBSC CS 2018 WEB SERVICES NOTESTYBSC CS 2018 WEB SERVICES NOTES
TYBSC CS 2018 WEB SERVICES NOTES
 
Enterprise Application integration (middleware) concepts
Enterprise Application integration (middleware) conceptsEnterprise Application integration (middleware) concepts
Enterprise Application integration (middleware) concepts
 
Next Generation_WVI
Next Generation_WVINext Generation_WVI
Next Generation_WVI
 
Taking Control of Your Future: Own Your Service Platforms
Taking Control of Your Future: Own Your Service PlatformsTaking Control of Your Future: Own Your Service Platforms
Taking Control of Your Future: Own Your Service Platforms
 
Oracle AIA - Does it deliver on it's integration promise?
Oracle AIA - Does it deliver on it's integration promise?Oracle AIA - Does it deliver on it's integration promise?
Oracle AIA - Does it deliver on it's integration promise?
 
SOA Fundamentals
SOA  FundamentalsSOA  Fundamentals
SOA Fundamentals
 

More from Peter R. Egli

LPWAN Technologies for Internet of Things (IoT) and M2M Scenarios
LPWAN Technologies for Internet of Things (IoT) and M2M ScenariosLPWAN Technologies for Internet of Things (IoT) and M2M Scenarios
LPWAN Technologies for Internet of Things (IoT) and M2M ScenariosPeter R. Egli
 
Data Networking Concepts
Data Networking ConceptsData Networking Concepts
Data Networking ConceptsPeter R. Egli
 
Communication middleware
Communication middlewareCommunication middleware
Communication middlewarePeter R. Egli
 
Transaction Processing Monitors (TPM)
Transaction Processing Monitors (TPM)Transaction Processing Monitors (TPM)
Transaction Processing Monitors (TPM)Peter R. Egli
 
Business Process Model and Notation (BPMN)
Business Process Model and Notation (BPMN)Business Process Model and Notation (BPMN)
Business Process Model and Notation (BPMN)Peter R. Egli
 
Microsoft .NET Platform
Microsoft .NET PlatformMicrosoft .NET Platform
Microsoft .NET PlatformPeter R. Egli
 
Overview of Cloud Computing
Overview of Cloud ComputingOverview of Cloud Computing
Overview of Cloud ComputingPeter R. Egli
 
MQTT - MQ Telemetry Transport for Message Queueing
MQTT - MQ Telemetry Transport for Message QueueingMQTT - MQ Telemetry Transport for Message Queueing
MQTT - MQ Telemetry Transport for Message QueueingPeter R. Egli
 
Overview of Microsoft .Net Remoting technology
Overview of Microsoft .Net Remoting technologyOverview of Microsoft .Net Remoting technology
Overview of Microsoft .Net Remoting technologyPeter R. Egli
 
Android Native Development Kit
Android Native Development KitAndroid Native Development Kit
Android Native Development KitPeter R. Egli
 
Overview of SCTP (Stream Control Transmission Protocol)
Overview of SCTP (Stream Control Transmission Protocol)Overview of SCTP (Stream Control Transmission Protocol)
Overview of SCTP (Stream Control Transmission Protocol)Peter R. Egli
 
Overview of SCTP (Stream Control Transmission Protocol)
Overview of SCTP (Stream Control Transmission Protocol)Overview of SCTP (Stream Control Transmission Protocol)
Overview of SCTP (Stream Control Transmission Protocol)Peter R. Egli
 
Overview of Spanning Tree Protocol (STP & RSTP)
Overview of Spanning Tree Protocol (STP & RSTP)Overview of Spanning Tree Protocol (STP & RSTP)
Overview of Spanning Tree Protocol (STP & RSTP)Peter R. Egli
 
MSMQ - Microsoft Message Queueing
MSMQ - Microsoft Message QueueingMSMQ - Microsoft Message Queueing
MSMQ - Microsoft Message QueueingPeter R. Egli
 
Common Object Request Broker Architecture - CORBA
Common Object Request Broker Architecture - CORBACommon Object Request Broker Architecture - CORBA
Common Object Request Broker Architecture - CORBAPeter R. Egli
 
Component Object Model (COM, DCOM, COM+)
Component Object Model (COM, DCOM, COM+)Component Object Model (COM, DCOM, COM+)
Component Object Model (COM, DCOM, COM+)Peter R. Egli
 
JMS - Java Messaging Service
JMS - Java Messaging ServiceJMS - Java Messaging Service
JMS - Java Messaging ServicePeter R. Egli
 
Web Services (SOAP, WSDL, UDDI)
Web Services (SOAP, WSDL, UDDI)Web Services (SOAP, WSDL, UDDI)
Web Services (SOAP, WSDL, UDDI)Peter R. Egli
 
REST - Representational State Transfer
REST - Representational State TransferREST - Representational State Transfer
REST - Representational State TransferPeter R. Egli
 
MOM - Message Oriented Middleware
MOM - Message Oriented MiddlewareMOM - Message Oriented Middleware
MOM - Message Oriented MiddlewarePeter R. Egli
 

More from Peter R. Egli (20)

LPWAN Technologies for Internet of Things (IoT) and M2M Scenarios
LPWAN Technologies for Internet of Things (IoT) and M2M ScenariosLPWAN Technologies for Internet of Things (IoT) and M2M Scenarios
LPWAN Technologies for Internet of Things (IoT) and M2M Scenarios
 
Data Networking Concepts
Data Networking ConceptsData Networking Concepts
Data Networking Concepts
 
Communication middleware
Communication middlewareCommunication middleware
Communication middleware
 
Transaction Processing Monitors (TPM)
Transaction Processing Monitors (TPM)Transaction Processing Monitors (TPM)
Transaction Processing Monitors (TPM)
 
Business Process Model and Notation (BPMN)
Business Process Model and Notation (BPMN)Business Process Model and Notation (BPMN)
Business Process Model and Notation (BPMN)
 
Microsoft .NET Platform
Microsoft .NET PlatformMicrosoft .NET Platform
Microsoft .NET Platform
 
Overview of Cloud Computing
Overview of Cloud ComputingOverview of Cloud Computing
Overview of Cloud Computing
 
MQTT - MQ Telemetry Transport for Message Queueing
MQTT - MQ Telemetry Transport for Message QueueingMQTT - MQ Telemetry Transport for Message Queueing
MQTT - MQ Telemetry Transport for Message Queueing
 
Overview of Microsoft .Net Remoting technology
Overview of Microsoft .Net Remoting technologyOverview of Microsoft .Net Remoting technology
Overview of Microsoft .Net Remoting technology
 
Android Native Development Kit
Android Native Development KitAndroid Native Development Kit
Android Native Development Kit
 
Overview of SCTP (Stream Control Transmission Protocol)
Overview of SCTP (Stream Control Transmission Protocol)Overview of SCTP (Stream Control Transmission Protocol)
Overview of SCTP (Stream Control Transmission Protocol)
 
Overview of SCTP (Stream Control Transmission Protocol)
Overview of SCTP (Stream Control Transmission Protocol)Overview of SCTP (Stream Control Transmission Protocol)
Overview of SCTP (Stream Control Transmission Protocol)
 
Overview of Spanning Tree Protocol (STP & RSTP)
Overview of Spanning Tree Protocol (STP & RSTP)Overview of Spanning Tree Protocol (STP & RSTP)
Overview of Spanning Tree Protocol (STP & RSTP)
 
MSMQ - Microsoft Message Queueing
MSMQ - Microsoft Message QueueingMSMQ - Microsoft Message Queueing
MSMQ - Microsoft Message Queueing
 
Common Object Request Broker Architecture - CORBA
Common Object Request Broker Architecture - CORBACommon Object Request Broker Architecture - CORBA
Common Object Request Broker Architecture - CORBA
 
Component Object Model (COM, DCOM, COM+)
Component Object Model (COM, DCOM, COM+)Component Object Model (COM, DCOM, COM+)
Component Object Model (COM, DCOM, COM+)
 
JMS - Java Messaging Service
JMS - Java Messaging ServiceJMS - Java Messaging Service
JMS - Java Messaging Service
 
Web Services (SOAP, WSDL, UDDI)
Web Services (SOAP, WSDL, UDDI)Web Services (SOAP, WSDL, UDDI)
Web Services (SOAP, WSDL, UDDI)
 
REST - Representational State Transfer
REST - Representational State TransferREST - Representational State Transfer
REST - Representational State Transfer
 
MOM - Message Oriented Middleware
MOM - Message Oriented MiddlewareMOM - Message Oriented Middleware
MOM - Message Oriented Middleware
 

Recently uploaded

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 

Recently uploaded (20)

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 

Enterprise Application Integration Technologies

  • 1. © Peter R. Egli 2015 1/16 Rev. 1.70 Enterprise Application Integration indigoo.com Peter R. Egli INDIGOO.COM OVERVIEW OF ENTERPRISE APPLICATION INTEGRATION CONCEPTS AND ARCHITECTURES EAI
  • 2. © Peter R. Egli 2015 2/16 Rev. 1.70 Enterprise Application Integration indigoo.com Contents 1. EAI versus SOA versus ESB 2. EAI 3. SOA 4. ESB 5. N-tier enterprise architecture 6. WS-BPEL 7. WOA
  • 3. © Peter R. Egli 2015 3/16 Rev. 1.70 Enterprise Application Integration indigoo.com 1. EAI versus SOA versus ESB (1/3) What is EAI (Enterprise Application Integration)? EAI aims at integrating different enterprise applications. Thus EAI is a goal for enterprise architectures. What is SOA: SOA is an architectural pattern that aims at concentrating common (business) functionality into distinct services and exposing these on endpoints. Thus SOA is a means or architectural pattern to achieve EAI. What is ESB? ESB is an infrastructure component to facilitate SOA (ESB = messaging backbone) and EAI. EAI SOA Architectural pattern for ESB Infrastructure component for
  • 4. © Peter R. Egli 2015 4/16 Rev. 1.70 Enterprise Application Integration indigoo.com 1. EAI versus SOA versus ESB (2/3) Traditional EAI architectures before SOA: ERP Client A CRM Client B SCM Client C PDM Client D Other Client E ESB (mediation middleware) Security Transaction Transformation No direct access between client and server allowed No direct access between Servers allowed CORBA DCOM RMI HTTP xyz Integration of applications (common middleware infrastructure through ESB). Inefficient for compound services (services calling other services have to pass through the central EAI middleware (ESB) with security checks and transformations for each call). Limited reuse of services due to hidden endpoints (classical C/S architecture). ERP: Enterprise Resource Planning CRM: Customer Relationship Management SCM: Supply Chain Management PDM: Product Data Management CORBA: Common Object Request Broker Architecture DCOM: Distributed COM RMI: Remote Method Invocation
  • 5. © Peter R. Egli 2015 5/16 Rev. 1.70 Enterprise Application Integration indigoo.com 1. EAI versus SOA versus ESB (3/3) The solution for EAI with SOA: • Common functionality is exposed as services. • Endpoints (services) are exposed to be freely called by anyone. • Services may call other services, clients may call services ("liberation" of endpoints). • Services form a service grid with exposed application service endpoints and centralized infrastructure service endpoints. S0 ESB S1 S2 S3 Trans- action Security Logging
  • 6. © Peter R. Egli 2015 6/16 Rev. 1.70 Enterprise Application Integration indigoo.com 2. EAI (1/3) What is EAI? EAI is a business need or goal to integrate and couple diverse applications in an enterprise / organization. The benefits of EAI are:  Share information between applications (basically connect the different DBs) and keep data consistent.  Potentially reduce the technology landscape, reduce heterogeneity (standard interfaces of services mandate the use of standards, applications have less freedom to choose from different DBs, OSs, middlewares etc.).  Faster and easier deployment of a new / updated application (interfaces for the integration are defined, middleware technologies are in place). Traditional IT landscape: EAI architecture: n*(n-1)/2 application interface connections. Central communication backbone. with standard interfaces. Messaging backbone
  • 7. © Peter R. Egli 2015 7/16 Rev. 1.70 Enterprise Application Integration indigoo.com 2. EAI (2/3) Typical EAI topologies: 1. Hub and spoke:  EAI system is at the center (hub), interaction with applications via adaptors (=spokes). 2. Bus:  EAI system is a bus.  Distributed message-oriented communication. App. App. App. App. Hub (msg. Broker) App. Adaptor App. Adaptor Messaging backbone App. Adaptor App. Adaptor Adaptor App. Adaptor Adaptor App. App.
  • 8. © Peter R. Egli 2015 8/16 Rev. 1.70 Enterprise Application Integration indigoo.com 2. EAI (3/3) EAI building blocks: EAI can be accomplished in different ways. Most did not prove scalable (e.g. integration at DB level). Use of a centralized broker emerged as the best solution to the integration problem (scalability). This best practice has the following building blocks: 1. Centralized broker:  Handles security, access and communication.  ESB 2. Data model:  Common data model based on a standard data structure. XML has become the de-facto standard. 3. Adaptor / connector:  Adaptors / connectors connect applications to the central broker. 4. System model:  Defines the interface including API and data flow to a component that connects to the central broker. Allows other applications to interact with this component in a standardized way.
  • 9. © Peter R. Egli 2015 9/16 Rev. 1.70 Enterprise Application Integration indigoo.com 3. SOA (1/3) SOA aims to extract common (service) functionality from different applications and expose it on a service endpoint. In the basic SOA pattern, service consumer, provider and registry are separated into different entities. The service registry helps decoupling service consumer and provider so that the consumer does not need to know the location of the provider. The service registry is an optional entity. In smaller deployments running a service registry may be 'overkill'. Service registry Service consumer Service provider 1. Register (publish) 2. Find 3. Bind
  • 10. © Peter R. Egli 2015 10/16 Rev. 1.70 Enterprise Application Integration indigoo.com 3. SOA (2/3) Services can be exposed at different levels / granularity: Finding the right granularity is crucial for a successful SOA. A layering as follows may help in defining / decomposing the service landscape. Enterprise resources Component services Business services Workflow services Applications Users Granularity Simple atomic action on a resource; action does not depend on any other service / component. Example: Simple access to a DB table. Orchestrates component services into a single business level process. Example: Submit an expense report. Conversational workflow services have a state. Example: Expense processing service. Standard: WS-BPEL Applications invoke workflow services.
  • 11. © Peter R. Egli 2015 11/16 Rev. 1.70 Enterprise Application Integration indigoo.com 3. SOA (3/3) Standards are crucial for SOAs. These standards may be layered as follows: Network protocol (HTTP, SMTP) XML (infoset, namespace, schema) Service description (WSDL, WADL) Service invocation, messaging (SOAP, WS-I / WS-*) Service discovery (UDDI, JAXR) Service orchestration (WS-BPEL) Security Transactions Management Infrastructure standards Semantic standards ebXML, XML/EDIFACT, HL7 CDA, SWIFT etc. ebXML: Electronic business XML XML/EDIFACT: XML for Electronic Data Interchange for Administration, Commerce and Transport HL7 CDA: Health Level 7 XML format WS-BPEL: WS Business Process Engineering Language SWIFT: Societiy for Worldwide Interbank Financial Telecommunication Supporting standards
  • 12. © Peter R. Egli 2015 12/16 Rev. 1.70 Enterprise Application Integration indigoo.com 4. ESB Enterprise Service Bus is an infrastructure to facilitate SOA. ESB is basically a messaging backbone / broker which provides the following functions: Examples: Mule IBM WebSphere ESB Microsoft BizTalk server Category Functions Invocation Support for synchronous and asynchronous transport protocols, service mapping (locating and binding). Routing Addressability, static/deterministic routing, content-based routing, rules-based routing, policy- based routing. Mediation Adapters, protocol transformation, service mapping. Messaging Message-processing, message transformation and message enhancement. Process choreography Implementation of complex business processes. Service orchestration Coordination of multiple implementation services exposed as a single, aggregate service. Complex event processing Event-interpretation, correlation, pattern-matching. Other quality of service Security (encryption and signing), reliable delivery, transaction management. Management Monitoring, audit, logging, metering, admin console, BAM. Source: http://en.wikipedia.org/wiki/Enterprise_service_bus
  • 13. © Peter R. Egli 2015 13/16 Rev. 1.70 Enterprise Application Integration indigoo.com 5. N-tier enterprise architecture "Best practice" for "horizontal" decomposition of an application: 3-tier.  Separation of concerns (user interface, business logic and data handling) improves maintainability and extensibility. Web browsers HTML, Javascript GUI clients C++, C#, Java Web Server Middleware Server Databases Legacy Systems Presentation tier: User interfaces Middle tier: Business logic Data tier: Data sources / sinks
  • 14. © Peter R. Egli 2015 14/16 Rev. 1.70 Enterprise Application Integration indigoo.com 6. WS-BPEL (1/2) What is WS-BPEL (Web Services Business Process Execution Language)? WS-BPEL is a language to define business processes based on web services. BPEL binds (web) services together to form larger complex business services. Thus BPEL is kind of a business programming language. BPEL provides: a. Control flow (branch, loop, parallel). b. Asynchronous correlation. c. Transaction support. For writing business programs, the following components are necessary: 1. Programming logic (provided by BPEL). 2. Data types (provided by the XSD of a web service). 3. Input / output (provided by WSDL that defines the web service messages). WS-BPEL versus BPEL4WS: BPEL4WS: Original standards by BEA, IBM, MS, SAP and Siebel. WS-BPEL: Successor to BPEL4WS defined by OASIS (name to comply with WS-* scheme). WS-BPEL and BPMN (Business Process Modelling Notation): BPMN defines the (graphical) notation for business process elements while WS-BPEL defines an XML-based business process description language.
  • 15. © Peter R. Egli 2015 15/16 Rev. 1.70 Enterprise Application Integration indigoo.com 6. WS-BPEL (2/2) BPEL hello world example: <?xml version="1.0" encoding="UTF-8"?> <process xmlns="http://schemas.xmlsoap.org/ws/2003/03/business-process/" xmlns:print="http://www.eclipse.org/tptp/choreography/2004/engine/Print" <!--Hello World - my first ever BPEL program --> <import importType="http://schemas.xmlsoap.org/wsdl/" location="../../test_bucket/service_libraries/tptp_EnginePrinterPort.wsdl" namespace="http://www.eclipse.org/tptp/choreography/2004/engine/Print" /> <partnerLinks> <partnerLink name="printService" partnerLinkType="print:printLink" partnerRole="printService"/> </partnerLinks> <variables> <variable name="hello_world" messageType="print:PrintMessage" /> </variables> <assign> <copy> <from><literal>Hello World</literal></from> <to>.value</to> </copy> </assign> <invoke partnerLink="printService" operation="print" inputVariable="hello_world" /> </process> Source: http://www.eclipse.org/tptp/platform/documents/design/choreography_html/tutorials/wsbpel_tut.html
  • 16. © Peter R. Egli 2015 16/16 Rev. 1.70 Enterprise Application Integration indigoo.com 7. WOA Web Oriented Architecture is a concept that extends or simplifies SOA through the use of REST and POX (Plain Old XML). WOA / REST is simply another (simpler?!) approach to SOA. POX: Plain Old XML (like POJO, but with XML) JSON: Javascript Object Notation (more compact alternative to XML) BPEL: Business Process Execution Language Complexity Features/Richness SOA WOA Source: http://www.zdnet.com/blog/hinchcliffe/the-soa-with-reach-web-oriented-architecture/27 WSDL REST BPEL JMS RMI SOAP WS-* JSON HTTP