Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal...

34
Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager

Transcript of Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal...

Page 1: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

Rob Straight

SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge®

Principal Product Manager

Page 2: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation2

What If You Could…

Speed business transactions Re-use existing software assets

• Reduce costs

• Extend lifetime of assets

Integrate acquisitions Quickly develop new products and services

• Address new market opportunities and cope with ever-changing business requirements

Page 3: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation3

Today’s Business Environment

Distributed, 24x7 operations Heterogeneous systems Poor application-to-application connectivity Data access and consistency challenges

Raw GoodsInventory

Accounting

OrderMGMT

Supply Chain

ProductionControl

Credit ControlHQ

Retail

Plant

DistributionCenter Supplier

Partner

Page 4: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation4

ScreenScrape

ScreenScrape

ScreenScrape

ScreenScrape

MessageQueue

MessageQueue

MessageQueue

DownloadFile

DownloadFile

DownloadFile

TransactionFile

TransactionFile

TransactionFile

ORB

ORB

CICS Gateway

CICS Gateway

APPC

APPCRPC

RPC

TransactionFile

Sockets

Sockets

Message

Message

Application

Application

Application

Application

Application

Application

Application

Application

Application

Application

Source: Gartner

The Technical Challenge

Page 5: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation5

Agenda

SOA Concepts Getting Started with SOA using OpenEdge Examples

Page 6: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation6

What is SOA?

A software systems architectural style

An approach for building agile and flexible business applications, based on services

Loosely coupled services = flexible business processes

Service-Oriented Architecture

Page 7: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation7

GET OUT OF MY KITCHEN!

Real-World Service Example

Page 8: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation8

Service Provider

Accomplishes a defined, self-containedunit of work • Does not depend on the state

of other processes/functions Internal details hidden

• Programming language• Execution logic• Data store (if any)

The service, exposed using a service interface, is stable and built to last

Service ImplementationService Implementation

DataBusiness

Logic

BusinessLogic

Service Interface

Page 9: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation9

Service Contract

Service provider defines the available service operations• Input & output information

supported by each operation• Data representation model for

each parameter Rules and/or policies for using

the service Quality of Service (QoS)

attributes

Page 10: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation10

Service Requester

Presentation (UI) layer or another service Locates service provider through agreed-upon

service directory Binds/invokes a service

based on a service contract Service adapter encapsulates

all issues associated with accessing the service

Fn()Fn()

Service Adapter

Page 11: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation11

SOA Infrastructure

Services In Action

Service Provider

ServiceRequester

Fn()Fn()

Service Adapter

Service Request Service Response

Service ImplementationService Implementation

DataBusiness

Logic

BusinessLogic

Service Interface

Service Contract

Page 12: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation12

SOA Infrastructure

Connects service requesters with providers May communicate with a Service Registry A variety of technologies available

Service

Provider

Service

ProviderSOA

InfrastructureService

Requester

Service

Requester

FTP AppServer™ Messaging

HTTP+XML (REST) Web Services

Page 13: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation13

SOA: Just Service Providers & Requesters?

How do you:• SOA-enable existing

applications?

• Mediate service interactions?

• Compose and reuse service capabilities?

Don’t forget about Distribution, Scalability, Reliability and Security!

OPENEDGE APPLICATION

PACKAGED APPLICATION

& LEGACY SYSTEMS

.NET™APPLICATION

PARTNER SYSTEM

J2EE™ APPLICATION

Web ServicesInterface

SOAPHTTP

XML

Page 14: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation14

Enterprise Service Bus

Abstract the service location

Facilitate service exchanges with the desired QoS

Promote reuse through service composition

SONIC™ ESBENTERPRISE SERVICE BUS

OPENEDGE APPLICATION

PACKAGED APPLICATION

& LEGACY SYSTEMS

.NETAPPLICATION

PARTNER SYSTEM

J2EE APPLICATION

Page 15: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation15

Agenda

SOA Concepts Getting Started with SOA using OpenEdge Examples

Page 16: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation16

OpenEdge Reference Architecture

PresentationPresentation

Business ComponentsBusiness Components

Data AccessData Access

Data SourcesData Sources

Com

mon Infrastructure

Com

mon Infrastructure

Enterprise ServicesEnterprise Services

Ser

vice

Pro

vide

r

Service Requester

Page 17: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation17

Business

Components

StartOrderStartOrder

UpdateCustomer

UpdateCustomer

CheckInventory

CheckInventory

ScheduleShippingScheduleShipping

CloseOrderCloseOrder

Getting Started Defining OpenEdge Services

PROCEDURE StartOrder:..

END.

PROCEDURE UpdateCustomer:..

END.

PROCEDURE CheckInventory:..

END.

PROCEDURE ScheduleService:..

END.

PROCEDURE CloseOrder:..

END.

PROCEDURE StartOrder:..

END.

PROCEDURE UpdateCustomer:..

END.

PROCEDURE CheckInventory:..

END.

PROCEDURE ScheduleService:..

END.

PROCEDURE CloseOrder:..

END.

PROCEDURE StartOrder:..

END.

PROCEDURE UpdateCustomer:..

END.

PROCEDURE CheckInventory:..

END.

PROCEDURE ScheduleShipping:..

END.

PROCEDURE CloseOrder:..

END.

Page 18: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation18

Using Initial Services

Business Components

On-line Order EntryOn-line Order Entry

StartOrderStartOrder

UpdateCustomer

UpdateCustomer

CheckInventory

CheckInventory

ScheduleShippingScheduleShipping

CloseOrderCloseOrder

WarehouseApplicationWarehouseApplication

Mainframe .NETJava™OpenEdge OpenEdge

Page 19: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation19

Composite Services

Business Components

On-line Order EntryOn-line

Order Entry

StartOrderStartOrder

UpdateCustomer

UpdateCustomer

ScheduleShippingScheduleShipping

CloseOrderCloseOrder

WarehouseApplicationWarehouseApplication

CheckInventory

CheckInventory

Order and Ship Data TransformationIntermediary Services

Page 20: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation20

Enterprise Service Bus

StartOrderStartOrder

UpdateCustomer

UpdateCustomer

CheckInventory

CheckInventory

Data Transformation

Order and Ship

ScheduleShippingScheduleShipping

CloseOrderCloseOrder

On-line Order EntryOn-line Order Entry WarehouseApplicationWarehouseApplication

Sonic ESB

Sonic ESB

Page 21: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation21

Progress Technology Supporting SOA

OERA, ABL, ProDataSets, XML, Web services

Application Server & Open Clients SOA Portfolio:

• Enterprise Messaging & Service Bus• SOA & Business Process Management• Registry/Repository• Data Interoperability• Complex Event Processing• Mainframe Integration

Page 22: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation22

Agenda

SOA Concepts Getting Started With SOA using OpenEdge Examples

Page 23: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation23

Getting Started with SOA:Pilot Project Example

Situation• Specialized lighting manufacturer• 27 corporate divisions: no common integration• Re-use mix of OpenEdge and other solutions

Pilot project: start small and build on success• Deliver part diagrams electronically

Next look outward: invoicing service• Suppliers send invoices to a service• Correlate purchase orders & receipts to

invoices

Page 24: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation24

SOA to Increase Business Example

Situation• Financial services company with 250K

customers and 20K transactions/day

• Goal: customer/revenue growth through superior on-line banking & call center

• Lacked integration across 8 backend systems and 2 external partners

Layered architectural and services approach• Started with internal processes first

Page 25: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation25

ESB

Technical Solution Overview

SOAP

WebServicesClient

HTTP

WS

JMX

Management and BAM

1

Validate Route

2

DB

WS

HTTP

WS

3

Ba

ck-O

ffic

e A

pp

lic

atio

n

Ba

ck-O

ffic

e A

pp

lic

atio

n

Ba

ck-O

ffic

e A

pp

lic

atio

n

Bac

k-O

ffic

e A

pp

lica

tio

n

3

Process Model

Business Process

3

FTPSMTP

4 4 3

Page 26: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation26

Results

Lowered development time 40% and cost 50%• Now have the ability to change business logic

independent of other layers

Successfully managing 1M+ messages / day 50% increase in on-line customers in first 6 months Improved customer service while reducing costs The technology is very exciting, but…

• Stay focused on reusable business logic

• Do not add complexity if it is not needed

Page 27: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation27

Establishing New Sales Channels Example

Situation• $40M company shipping 6,000 packages/day• Goal: common infrastructure for the print catalog,

online and retail store sales channels• Phase 1: Catalog system to make order fulfillment

Followed the SOA pattern:• Reusable OpenEdge components for common

activities, e.g. tax calculations• Messaging replaces batch• Integrated to backend systems (e.g. AS400, Unisys)

without application code changes• ESB validates and transforms data

Page 28: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation28

Results

Only 6 months from initial design to deployment!• System is extremely stable

Flexible business processes without coding changes

Near real time processing as compared to batch

Page 29: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation29

In Summary

SOA is the architecture for the agile business• A design approach, not a

technology

OERA provides a framework Progress Software supplies the

technologies you need to achieve your SOA

Page 30: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation30

For More Information

PSDN• Service-Oriented Architecture

http://www.psdn.com/library/kbcategory.jspa?categoryID=1591

• OpenEdge & Sonic Evaluation Kits http://www.psdn.com/library/entry.jspa?externalID=1131

Education: eLearning Catalog• http://www.psdn.com/library/entry.jspa?externalID=4734

Page 31: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation31

Relevant PSDN Live Sessions

SOA-2 Introduction to the Sonic ESB Product Family

DEV-8 AppServer Mode Case Studies

SOA-3 Extending Your Application with OpenEdge Web Services

SOA-4 Enabling Your OE Application with Web 2.0

SOA-5 Introducing Native Invocation with the OpenEdge Adapter for Sonic ESB

Page 32: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation32

Questions?

Page 33: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation33

Thank You

Page 34: Rob Straight SOA-1: Applied SOA: Building Out Your SOA Environment with OpenEdge ® Principal Product Manager.

© 2008 Progress Software Corporation34