service-oriented architecture

31
Service Oriented Architecture Terry Woods Session 50

Upload: zubin67

Post on 25-May-2015

218 views

Category:

Documents


3 download

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 Ecosystem

Technology 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

StatusFile 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 ServiceSample Service Implementation

Sample Service Mediation

(Validation)

Service Consumer

ESB Service Provider

26

Understanding the Technology Stack

WPS WMB DataPower

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

Implementation Component(s)

Core ESB Capabilities

ESB Extensions

Non-ESB Extensions

Capabilitie s Tested in Scenario

27

ESB Conceptual Architecture

Application Architecture (ESB View)

Service Modules

MOM/EAIAdaptor

EJBAdaptorIn

terf

ace SOAP/HTTP

WS

DL

Ada

ptor

SOAP/JMS

RMI

Java

Gat

eway

Inte

rfac

e

Soap/Http WS

DL

Ada

ptorSoap/JMS

MOM/EAIAdaptor

EJBAdaptor

SOAP/HTTP

WS

DL A

daptor

SOAP/JMS

RMI

Java

VD

C

BPEL

`

Gatew

ay

Soap/Http

Soap/JMS Interface

WS

DL A

daptorService ProvidersService Consumers

Frameworks

Persistence Logging EditsBusiness

RuleOther ...

Local Invocation Bindings

Mes

sagi

ngJM

S

EJB

Loca

l/Rem

ote

WSDL Adaptor

RM

I

Java

Interface

JCA

Sec

uri

ty A

rch

itec

ture

JCA

Interface

External Service Consumer

`

EAM, IPM, ADvance, SAHM, CSB, FMS,

EA&R, SAIG

`

Portals

VD

C

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: [email protected]

Contact Information