Service Oriented Architecture
Post on 23-Feb-2016
36 Views
Preview:
DESCRIPTION
Transcript
Service Oriented Architecture
Terry Woods
Session 50
2
Agenda
• The Problem
• What is Service-Oriented Architecture?
• Change is Inevitable
• What is an Enterprise Service Bus?
• Summary
The Problem
4
Legacy Business Process
Business Process 1
Business Process 2
Business Process 3
5
Architectural Choke Point
• Monolithic
• Extremely complex
• Very tightly coupled
• Difficult to find clean integration points
• Lack of standards makes it difficult to integrate
• Rigid architecture makes even small changes complex and costly
6
SOA Business Process
Business Process
Shared Service
Information Framework
Supplier
What is Service-Oriented Architecture?
8
What is Service-Oriented Architecture?
• Service-Oriented Architecture (SOA) is an architectural style. Applications built using an SOA style deliver functionality as services that can be used or reused when building applications or integrating within the enterprise or trading partners.
9
What is a Service?
• A service provides a discrete business function that operates on data. Its job is to ensure that the business functionality is applied consistently, returns predictable results, and operates within the quality of service required.
10
Characteristics of a Service
• Supports open standards
• Loose coupling
• Stateless
• Location agnostic
Change is Inevitable
12
IT is like an Ecosystem• COBOL
• C++
• Java
• J2EE
• Networks
• TCP/IP
• Web Service
• Mid-Tier Servers
• .NET
• Messaging
• HTML
• Operating Systems
• CICS
• Routers
• Databases
• Mainframes
13
Managing the EcosystemTechnology Management
• Product duplication
• Standards
• Product/Vendor lock-in
• Support skill sets
Version Management
• Managed Evergreening
• Limited versions in production
14
Legacy Integration
15
SOA Integration
SOA Architecture
16
Integration Stack• Industry Standards
• Language Standards
• Custom API’s
• Native Interfaces
Ubiquity
Proprietary
Enterprise Service Bus
18
What is an Enterprise Service Bus (ESB)? An ESB implements an SOA through middleware that
offers virtualization and management of service interactions between communication participants. Thus, this flexible connectivity layer could help connect and integrate an organization's IT infrastructure across many differing systems and locations reliably and securely while reducing the number, size and complexity of application interfaces.
ComputerWorld (http://www.computerworld.com/developmenttopics/development/webservices/story/0,10801,108478,00.html)
19
Key Characteristics of an ESB
• Streamlines development
• Supports multiple binding strategies
• Performs data transformation
• Intelligent routing
• Real time monitoring
• Exception handling
• Service security
20
Mediation
Source: Getting Started with WebSphere Enterprise Service Bus V6 http://www.redbooks.ibm.com/redbooks/SG247212/wwhelp/wwhimpl/java/html/wwhelp.htm
21
Manage Subscriptions to Organization Data
ESB Exposed Requests and Responses
Service Provider Requests and Responses
Create Registration Response
Create Registration Request
Create Registration Response
Create Registration RequestCreate
Registration Service
CreateRegistration
ServiceImplementation
CreateRegistrationMediation
Inquire Registration Response
Inquire Registration Request
Inquire Registration Response
Inquire Registration RequestInquire
Registration Service
InquireRegistration
ServiceImplementation
InquireRegistrationMediation
Update Registration Response
Update Registration Request
Update Registration Response
Update Registration RequestUpdate
Registration Service
UpdateRegistration
ServiceImplementation
UpdateRegistrationMediation
Delete Registration Response
Delete Registration Request
Delete Registration Response
Delete Registration RequestDelete Registration
Service
DeleteRegistration
ServiceImplementation
DeleteRegistrationMediation
Service Consumer
ESB Service Provider
22
Distribute New Organization Data
ESB Exposed Requests and Responses
Publish Organization Data Response
Publish Organization Data RequestPublish Organization
Data
Publish Organization
Data Implementation
Service Consumer Target
Application A
Invoke Target Application A’s
Update Organization
ServiceUpdate Organization Data Response
Update Organization Data Request
Target Application B
Deliver Update Organization
Data to Target Applications B via AM Queue
Update Organization Data Message
Target Application C
Deliver Update Organization
Data to Target Application C via Batch File
Update Organization Data File
ESB
File
Message
Update Organization Data Service
Implementation
Data Distribution Options
23
Distribute New Organization Data with Human Interaction
ESB Exposed Requests and Responses
Publish Organization Data Response
Publish Organization Data RequestPublish Organization
Data
Publish Organization
Data Implementation
Service Consumer Target
Application A
Invoke Target Application A’s
Update Organization
ServiceUpdate Organization Data Response
Update Organization Data Request
Target Application B
Deliver Update Organization
Data to Target Applications B via MQ Queue
Update Organization Data Message
Target Application C
Deliver Update Organization
Data to Target Application C via Batch File
Update Organization Data File
ESB
File
Message
Update Organization Data Service
Implementation
Data Distribution Options
Human Interaction –
Approve Data
Distribution
24
Service Enablement of Managed File Transfer
ESB Exposed Requests and Responses
Managed File Transfer Response
Managed File Transfer RequestManaged File
Transfer
Managed File Transfer
Implementation
Invoke Directory Service to
lookup Transfer Details
PM4Data Directory Services Response
PM4Data Directory Services Request
Invoke Transfer
PM4Data File Transfer Status Implementation
PM4Data Transfer Service
Implementation
PM4Data Directory Service
Implementation
Step 2
Step 1
PM4Data Requests and Responses
PM4Data
File Transfer Status Response
File Transfer Status Request
File Transfer Status Response
File Transfer Status RequestFile Transfer
Status File Transfer Status Mediation
ESBService Consumer
PM4Data Transfer Service Response
PM4Data Transfer Service Request
Step 3
25
Schema Validation Approaches
ESB Exposed Requests and Responses
Service Provider Requests and Responses
Create Registration Response
Create Registration Request
Create Registration Response
Create Registration Request
Sample Service Sample Service Implementation
Sample Service Mediation
(Validation)
Service Consumer
ESB Service Provider
26
Understanding the Technology Stack
WPS WMB DataPowe r
PM4Data
Custom
Transport Mediation
Yes Yes Yes Yes No No
Transformation Mediation
Yes Yes Yes Yes No No
Dynamic Routing
Yes Yes Yes Yes No No
Process Orchestration
No Yes No No No No
Human Workflow
No Yes No No No No
Business Rules
No Yes No No No No
Schema Validation
Yes No Yes Yes No Yes
File Transfer
Yes No No No Yes No
Table 5 - Scenario 5: Schema Validation Approaches
Imple mentation Component(s)
Core ESB Capabilities
ESB Extensions
Non-ESB Extensions
Capabilitie s Tes te d in Sce nario
27
ESB Conceptual Architecture
Application Architecture (ESB View)
Service Modules
MOM/EAIAdaptor
EJBAdaptorIn
terfa
ce SOAP/HTTP
WSD
L Ad
apto
r
SOAP/JMS
RMIJava
Gat
eway
Inte
rface
Soap/Http WSD
L Ad
apto
r
Soap/JMS
MOM/EAIAdaptor
EJBAdaptor
SOAP/HTTP
WSD
L Adaptor
SOAP/JMS
RMI
Java
VDC
BPEL
`
Gatew
ay
Soap/Http
Soap/JMS Interface
WSD
L AdaptorService ProvidersService Consumers
Frameworks
Persistence Logging Edits BusinessRule Other ...
Local Invocation Bindings
Mes
sagi
ngJM
S
EJB
Loca
l/Rem
ote
WSDL Adaptor
RMI
Java
Interface
JCA
Secu
rity
Arch
itect
ure
JCA
Interface
External Service Consumer
`
EAM, IPM, ADvance, SAHM, CSB, FMS,
EA&R, SAIG
`
Portals
VDC
EAM, IPM, ADvance, SAHM, CSB, FMS,
EA&R, SAIG
Stateless Session Bean
Message Driven Bean
Java
WBI Broker
WebSphere MQ
EJB
J2EE EAR File (WebSphere Process Server)
Broker Archive File
External Service Provider
`
DesktopApplications
28
Describing Services to Machines
• Web Services Description Language
• Open Standard for describing Interfaces to Services (http://www.w3.org/TR/wsdl)
• Characteristics
– Describes data expected to be sent and received
– Describes what the service can do
– Describes how to reach the service
• WSDL description is an XML document
Services
Bindings
Port Types
Operations
Messages
29
ESB Summary
• Loose Coupling
• Location Transparency
• Transport Neutral
30
Summary
• The Problem
• What is Service-Oriented Architecture?
• Change is Inevitable
• What is an Enterprise Service Bus?
• Summary
31
I appreciate your feedback and comments.
I can be reached at:
Name: Terry Woods
Phone: 202-377-3023
Email: Terry.Woods@ed.gov
Contact Information
top related