smart soa in action - ibm · smart soa in action soa connectivity with ... misc accounting/finance...

40
IBM Software Group © 2009 IBM Corporation Smart SOA in Action SOA Connectivity with Enterprise Service Bus Simon Chan SOA Architect [email protected]

Upload: nguyenkhanh

Post on 21-Apr-2018

216 views

Category:

Documents


4 download

TRANSCRIPT

IBM Software Group

© 2009 IBM Corporation

Smart SOA in ActionSOA Connectivity withEnterprise Service Bus

Simon ChanSOA [email protected]

IBM Software Group

© 2009 IBM Corporation2

A programming model complete with standards, tools, methods and technologies such as Web services

A model of the business and related key performance indicators

Roles

An architectural style which requires a service provider, requestor and a service description. It addresses characteristics such as loose coupling, reuse and simple and composite implementations.

Implementation

Architecture

Business

Service Oriented Architecture Different Things to Different People

OperationsA set of agreements and contracts among service requestors and service providers that specify the quality of service.

IBM IT Service Management

IT Process ManagementIT ProcessManagement Products

IT Service Management Platform

Best Practices

IT OperationalManagement Products

IBM IT Service Management

IT Process ManagementIT ProcessManagement Products

IT Service Management Platform

Best Practices

IT OperationalManagement Products

IBM Software Group

© 2009 IBM Corporation3

The promised benefits of SOA

Business process vitality

New value through reuse of assets

Improved connectivity

Closer alignment of IT to business

Business Flexibility

IBM Software Group

© 2009 IBM Corporation4

Application topology for a company

DFK

Data Warehouse

GeneralLedger

AP

SalesCorrections

POReceiving

Return toVendor

WarehouseManagement

Credit App

EmployeeChange Notice

OTHER APPS - PC

ACCTS REC APPS - PCINVENTORY CONTROL APPS - PC INVENTORY CONTROL APPS - PC

Journal Entry Tool Kit

Scorecard

ResourceScheduling

P09 - P17Cyb.

Mill.

Millennuim 3.0

Banks - ACH and Pos toPay

Cobra

StockStatus

Polling

On-line NewHire Entry

CTS

Plan Administrators(401K, PCS, Life)

Post LoadBilling

HomeDeliveries

-Transfers

Planning

PurchaseOrder

SolutionSoftware

Inventory Info

Interface

Sales Posting

Price ManagementSystem

Cycle PhysicalInventory

SKUInformation

Customer RepairTracking I35 Early Warning

System

MerchandiseAnalysis

AutoReplenishment

CTO

InterceptCounts

EmployeePurchase

Tex A

ACH

Stock Options

Customer PerceivedIn-Stock

Tx

SS

CapitalProjects

FixedAssets

ReconFile

Repair

EDICoordinator

Mesa Data NEW Soundscan

Resumix

Op.

Store BudgetReporting

Tally Sheet

Cash Receipts/Credit

HouseCharges

Ad Expense

-PromoAnalysis

PriceMarketingSupport

BMP - Busperformance Mngt

StoreScorecard

PriceTesting

Media

Bonus/HR

Hand ScanApps

Shows

POS

SalesTax

A04 - CustRefund Chks

Equifax

Credit

CellularRollover

SatelliteSystem

Scanning

VAN

SKU Rep

Host to AS400Communication

Layaways

Bus Systems

V04-SignSystem

Count CorrectionsN.

P01-EmployeeMasterfile

CustomerOrder

ABCCo

Universal AccountReconcilliation

DepositoryBanks

CellPhones

- ISPTracking

AAS

PO

Cash Over/Short

Coop SKU SelectionTool

SKUPerformance

SupplierCompliance

1

DRKABBX

Misc Accounting/Finance Apps - PC/NT

AIMSMngr Approval

Batch ForcastingAd Measurement

AIMSReportingAd

Launcher

MktReactions

SpecSource

website

RebateTransfer

SignSystem

WriterWorkspace

PowerSuiteStore

Monitor

Calendar

Stores & Mrkts

Due Dates

Smart Plus

InsertionsOrders

BudgetAnalysis Tool

Print CostingInvoice App

Reports

BroadcastFilter

Smart PlusLauncher

GeneralMaintenance

Printer PO

PrinterMaintenance

VendorMaintenance

Vendor Setup

Connect 3

Connect 3Reports

Connect 3PDF Transfe

Spec SourceSKU Tracking

S20-SalesPolling

Prodigy

PSP

In-HomeRepair

WarrantyBillingSystem

Process Servers(Imaging)

Problems Arising from Connectivity

Ever increasing application maintenance costs.“In 2004, 73% of I.T. budgets were spent on maintenance and 27% on new investments.

In 2005, survey respondents expect to spend 76% on maintenance, leaving just 24% for new investments.”

Forrester Research*

IBM Software Group

© 2009 IBM Corporation5

Core Elements of a Service-based Design• Service Components

– A technology- and language-independent representation of a service which can be composed with other services

• Service Data

– A technology- and language-independent representation of a data entity that can be passed between services

• Service Bus

– A technology- and protocol-independent representation of the interconnection

SAPAdapter

OracleAdapter

DBAccess

DBAccess

Portlets Query

CommunityManager

IBM Software Group

© 2009 IBM Corporation6

SOA Is An Evolutionary Application Architecture.

IBM Software Group

© 2009 IBM Corporation7

Flexibility

Point-to-Point connection between applicationsSimple, basic connectivity

Messaging Backbone

EAI connects applications via a centralized hub Easier to manage larger number of connections

Enterprise Application Integration (EAI)

Integration and choreography of services through an Enterprise Service Bus Flexible connections with well defined, standards-based interfaces

Service Orientated Integration

SOA – The next stage of integration

IBM Software Group

© 2009 IBM Corporation8

Choreograph components into business processes

Outsourced

Supplier

Shared Services

Division(s)

Customer

IBM Software Group

© 2009 IBM Corporation9

Outsourced

Supplier

Shared Services

Division(s)

Customer

Add a Flexible Integration Layer - ESB

Enterprise Service Bus

Service Registry &Repository

Adapters Web ServicesGateway

Mediations

SOA ManagementData Power

Tivoli®

IBM Software Group

© 2009 IBM Corporation10

SOA Reference Architecture – Enable SOAModel of the Logical Architecture

Business Innovation & Optimization ServicesProvide for better decision-making with real-time business information

Dev

elop

men

tSe

rvic

es

Integrated environment

for design and creation of solution

assets

Interaction Services

Enables collaboration between people,

processes & information

Process Services

Orchestrate and automate business

processes

Information Services

Manages diverse data and content in a

unified manner

ESB Enable interEnable inter--connectivity between servicesconnectivity between services

Partner Services

Connect with trading partners

Business App ServicesBuild on a robust,

scaleable, and secure services environment A

pps

&

Info

Ass

etsAccess Services

Facilitate interactions with existing information and application assets

IT S

ervi

ceM

anag

emen

t

Manage and secure services,

applications &

resources

Infrastructure ServicesOptimizes throughput,

availability and performance

IBM Software Group

© 2009 IBM Corporation11

What Problems Do We Need To Solve?

How to move information around…

A messaging component

A B C X Y Z

……

IBM Software Group

© 2009 IBM Corporation12

Why is this a Challenge?“Computers are really dumb. You have to tell them everything.”

• How do you…?– Move data across different systems, platforms, and

devices when the HW, SW configurations and programming models are different?

– Overcome network failures?– Deliver information when the target application is not

online or is busy?– Ensure transmission integrity and recovery?– Handle lost or/duplicate data?– Ensure a secure connection?– Ensure multi-step transactions either happen completely

or not at all?– Apply qualities of service based on different

requirements? e.g., assured delivery, fast delivery?– Manage a session (request/response)?– Efficiently distribute events? – Scale to handle volumes?– Deal with data in unlike formats?– Determine which data to send where?– Audit who send what, where and when?

2. Build your own middleware

You either:

1. Program it all into your applications

3. Buy middleware to do it for you

“Computers are really dumb. They do exactly what you tell them to.”

IBM Software Group

© 2009 IBM Corporation13

What is an Enterprise Service Bus (ESB)?A flexible connectivity infrastructure for integrating applications as services………which reduces the number, size, and complexity of interfaces.An ESB:

Color = Data type

Shape = Protocol

CONVERTS between different transport protocols used by the participants

VIRTUALIZES the location and identity of participants

TRANSFORMS message formats between participants

APPLIES appropriate qualities of service for the given interaction

DISTRIBUTES business event information to/from disparate sources.

IBM Software Group

© 2009 IBM Corporation14

The ESB allows you to focus on your core business

TravelReservation

Process

FlightAvailability

Service

Enterprise Service Bus

NEW CheckTravelerService

Book HotelService

HotelAvailability

ServiceBook CarService

NEW FlightAvailability

Service

OLD FlightAvailability

Service

Book FlightService

Check CreditService

Change services with minimal impact to existing services

Add new services faster

The integration logic stays “in the bus”

IBM Software Group

© 2009 IBM Corporation15

Basic ESB Pattern

Human Tasks

Existing Application

External Service

New Business Logic

Business Rules

Process Coordination

Interact

QoSMediate

IBM Software Group

© 2009 IBM Corporation16

Common Data Model: Business Objects

• Business Objects represent structured application data

• Consistent logical representation, independent of data source or wire format

• Based upon SDO standard

• Multiple data bindings can be supported

Business object definition

(SDO/XML schema)

IBM Software Group

© 2009 IBM Corporation17

Mediation Module

• Mediation service applications are assembled and deployed as one or more mediation modules. A mediation module can have the following parts: – Exports that expose the mediation module to service requesters

– A mediation flow component

– Imports that identify service providers and their interfaces

– Java components that implement custom mediation primitives invoked by the mediation flow component

IBM Software Group

© 2009 IBM Corporation18

Mediation Flow Nodes …

IBM Software Group

© 2009 IBM Corporation19

Transforming Content …

• BO Mapper …– Visual transformation

mapping

• Custom Mediation …– Invokes Java code to

perform transformation logic

• XSL Transform …– Invokes an XSLT Style Sheet to

perform transformation logic

IBM Software Group

© 2009 IBM Corporation20

Service Invoke …

IBM Software Group

© 2009 IBM Corporation21

Endpoint Lookup …

IBM Software Group

© 2009 IBM Corporation22

Event Emitter …

IBM Software Group

© 2009 IBM Corporation23

Fan Out/Fan In …

IBM Software Group

© 2009 IBM Corporation24

Other nodes …

IBM Software Group

© 2009 IBM Corporation25

Typical Integration Developer Task Flow

Identify service endpointsto be integrated

Create basic connectivitybetween endpoints

Implement mediation functionto allow communication

Test and debug mediationfunction

Deploy results to theruntime

IBM Software Group

© 2009 IBM Corporation26

Identify Service Endpoints to be integrated

• Concept– The mediation module defines a mediation component and the

endpoints it mediates in the form of imports and exports• Task

– Define mediation module and component– Define imports for service providers– Define exports for service requestersService requester Service providers

Mediation component

IBM Software Group

© 2009 IBM Corporation27

Typical Integration Developer Task Flow

Identify service endpointsto be integrated

Create basic connectivitybetween endpoints

Implement mediation functionto allow communication

Test and debug mediationfunction

Deploy results to theruntime

IBM Software Group

© 2009 IBM Corporation28

Available Service Endpoints: binding types for servicesWebSphere Adapters (e.g. CICS, IMS, SAP...)

Web services (SOAP/HTTP, SOAP/JMS)

JMS (including WebSphere MQ and WebSphere Business Integration (WBI) Adapters)

EJB

HTTP

Native (SCA or MQ)

Java invocation

IBM Software Group

© 2009 IBM Corporation29

Typical Integration Developer Task Flow

Identify service endpointsto be integrated

Assert basic connectivitybetween endpoints

Implement mediation functionto allow communication

Test and debug mediationfunction

Deploy results to theruntime

IBM Software Group

© 2009 IBM Corporation30

• Mediation Flows allow you to process (mediate) the messages that are passed between services

• A Mediation Flow Component contains Mediation Flows:– a Request Flow, to mediate the message received as input– a Response Flow*, to mediate the returning messages (combined if more than one)

• Typical mediations are:– transform the message format– conditionally route the message to one or more targets– add data to the message

target operation

Mediation Flows

Request Flow

source operation

input node

source operation

Response Flow

target operation

input response

node

message message

message message

mediation primitive

mediation primitive

callout node

callout response

node

* Only if the operation is a Request/Response operation

IBM Software Group

© 2009 IBM Corporation31

Mediation Flows

Input

Callout

Requ

est :

getQ

uote

Resp

onse

: getQ

uote

Oper

ation

Con

necti

ons

Callout Response

Input Response

defaultkeyNotFound

fail

IBM Software Group

© 2009 IBM Corporation32

Typical Integration Developer Task Flow

Identify service endpointsto be integrated

Assert basic connectivitybetween endpoints

Implement mediation functionto allow communication

Test and debug mediationfunction

Deploy results to theruntime

IBM Software Group

© 2009 IBM Corporation33

IntegrationDeveloper

Deploy to WebSphere Process Server or WebSphere Enterprise Service Bus Test Server

Debug mediation flows using an in-place visual debugger

Breakpoints can be added, stepped into, through, or over areas of interest while inspecting the values of the messages

Debugger is integrated with Java process, Java and XSLT debuggers in WebSphere Integration Developer.

Use the visual debugging tools to validate a message flow

Validates the flow using the Integrated Test Environment

IBM Software Group

© 2009 IBM Corporation34

Integrated Test Client – tests any SCA component

IBM Software Group

© 2009 IBM Corporation35

Typical Integration Developer Task Flow

Identify service endpointsto be integrated

Assert basic connectivitybetween endpoints

Implement mediation functionto allow communication

Test and debug mediationfunction

Deploy results to theruntime

IBM Software Group

© 2009 IBM Corporation36

Reference Materials

• IBM Redbooks™ @ http://www.redbooks.ibm.com/– SG247212 – Getting Started with WESB v6.0

– SG247413 – Production Topologies for WebSphere Process Server and WESB V6

– SG247369 – Patterns: SOA Design Using WMB and WESB

– SG247406 – Connecting Enterprise Applications to WESB

• WebSphere ESB @ ibm.com– http://www-

306.ibm.com/software/info1/websphere/index.jsp?tab=integration/esb

IBM Software Group

© 2009 IBM Corporation37

IBM Software Group

© 2009 IBM Corporation38

IBM Software Group

© 2009 IBM Corporation39

IBM Software Group

© 2009 IBM Corporation40