exchange breakout notes

49
© 2008 Progress Software Corporatio SOA-27: Practical Approaches for Implementing a Service Oriented Architecture Exchange Breakout Notes To access the hyperlinks in this presentation, please view in SlideShow Mode When printing, please select the “Print Hidden Slides” option to get all detailed slides

Upload: fadhila

Post on 02-Feb-2016

34 views

Category:

Documents


0 download

DESCRIPTION

Exchange Breakout Notes. To access the hyperlinks in this presentation, please view in SlideShow Mode When printing, please select the “Print Hidden Slides” option to get all detailed slides. SOA-27: Practical Approaches for Implementing a Service Oriented Architecture. Michael J. Boyd, CITP. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Exchange Breakout Notes

© 2008 Progress Software Corporation1 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Exchange Breakout Notes

To access the hyperlinks in this presentation, please view in SlideShow Mode

When printing, please select the “Print Hidden Slides” option to get all detailed slides

Page 2: Exchange Breakout Notes

SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Michael J. Boyd, CITPServices Portfolio Manager

Page 3: Exchange Breakout Notes

How to begin implementing aService Oriented Architecture (SOA),

one step at a time

Practical Approaches for Implementing a SOA

What you will learn today

Page 4: Exchange Breakout Notes

© 2008 Progress Software Corporation4 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Agenda

The SOA starting point Starting your own evolution

• A tale of two architectures

• Process, process, process

• Think globally, act locally

Case Study Common pitfalls First steps when you get back home

Practical Approaches for Implementing a SOA

Page 5: Exchange Breakout Notes

© 2008 Progress Software Corporation5 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Introducing SOA & SOBA

An approach for building agile and flexible business applications• Loosely coupled services

= flexible business processes

SOA is not A product or application A specific technology A specific standard A specific set of rules

Service-Oriented Architecture > Service-Oriented Business Applications

Page 6: Exchange Breakout Notes

© 2008 Progress Software Corporation6 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Progress’ SOA Portfolio

ServicesManagement

Complex Event

Processing

Business Process

Management

Mainframe Integration

Enterprise Service Bus

Registry/Repository

Enterprise Messaging

Data Interoperability

Your World, Your SOATM

Page 7: Exchange Breakout Notes

© 2008 Progress Software Corporation7 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

SOA In Summary

SOA• The architecture for the

agile business

SOA is a design approach• Not a technology

Take small steps• Evolution, not revolution

Page 8: Exchange Breakout Notes

© 2008 Progress Software Corporation8 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Agenda

The SOA starting point Starting your own evolution

• A tale of two architectures

• Process, process, process

• Think globally, act locally

Case Study Common pitfalls First steps when you get back home

Practical Approaches for Implementing a SOA

Page 9: Exchange Breakout Notes

© 2008 Progress Software Corporation9 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

A Tale of Two Architectures

Communications is conducted point to point, synchronous and unreliable

Process logic is fragmented across applications and platforms and implemented differently in each place

Data comes in multiple incompatible formats

Communications are direct to a centralized service bus

Process logic is coherently defined in a single model which can be edited and redeployed quickly

Data comes expressed as XML

Existing Architecture New Architecture

Page 10: Exchange Breakout Notes

© 2008 Progress Software Corporation10 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Example: Using Two Architectures

P3P1P2

OrderMgmt Order

Fulfillment

OrderProcess

Business Applications

Finance

SupplierMgmt

CRM

TrackingService

PartnerBack Office

MFG CRM

Adapter

Adapter

Integration Broker

Enterprise Service Bus (ESB)

New SOA (ESB)Existing Architecture

Adapter

Page 11: Exchange Breakout Notes

© 2008 Progress Software Corporation11 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Moving towards SOA…

Zapthink

“Fundamentally, the technology shift is the easy part; changing how people work is the greater challenge facing IT organizations today, as they move to SOA.”

Page 12: Exchange Breakout Notes

© 2008 Progress Software Corporation12 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

/** MyIntProc1.p **/

DEF INPUT PARAMETER ipcA AS CHAR.DEF INPUT PARAMETER ipcB AS CHAR.DEF INPUT PARAMETER ipcC AS CHAR.DEF OUTPUT PARAMETER opcD AS CHAR.

ASSIGN ipcA = "A" ipcB = "B" ipcC = "C".

RUN MyIntProc2.p (INPUT ipcA, INPUT ipcB, INPUT ipcC, OUTPUT opcD).

DISPLAY opcD.

What is Wrong with this ABL ?

/** MyIntProc2.p **/

DEF INPUT PARAMETER ipcA AS CHAR.DEF INPUT PARAMETER ipcB AS CHAR.DEF INPUT PARAMETER ipcC AS CHAR.DEF INPUT PARAMETER ipcD AS CHAR.DEF OUTPUT PARAMETER opcE AS CHAR.DEF OUTPUT PARAMETER opcF AS CHAR.

FOR EACH ..... :

ASSIGN opcE = ... opcF = ...END.

Page 13: Exchange Breakout Notes

© 2008 Progress Software Corporation13 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Process, Process, Process

Cannot “Code your way out of it” Requires developers to:

• Specify contracts and interfaces

• Harvest existing systems for logic

• Wrap legacy systems• Define system monitoring and management• Specify service policies & granularity

Benefit: Parallel development

SODA - Service Oriented Development of Applications

Page 14: Exchange Breakout Notes

© 2008 Progress Software Corporation14 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Strategic SOADefine your long-term SOA vision

Think Globally, Act Locally

Succeed by thinking

strategically but acting tactically

Tactical SOAImplement first

elements of your SOA vision on next

business-based project

Add SOA elements into each successive

business-based project until SOA is

realized

Page 15: Exchange Breakout Notes

© 2008 Progress Software Corporation15 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

P3P1P2

OrderMgmt Order

Fulfillment

OrderProcess

Business Applications

Finance

SupplierMgmt

CRM

TrackingService

PartnerBack Office

MFG CRM

Adapter

Adapter

Integration Broker

Enterprise Service Bus (ESB)

New SOA (ESB)Existing Architecture

Adapter

Act Locally – Tactical SOA: Additional Projects

Adapter

Adapter

Enterprise Service Bus (ESB)

Page 16: Exchange Breakout Notes

© 2008 Progress Software Corporation16 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Think Globally – Strategic SOA

Ronald Ross, “Father of Business Rules” Business Rule Concepts

“In order to be agile, businesses need disposable business rules – ones that are cheap and easy enough to throwaway and replace as business changes.”

Page 17: Exchange Breakout Notes

© 2008 Progress Software Corporation17 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Agenda

The SOA starting point Starting your own evolution

• A tale of two architectures

• Process, process, process

• Think globally, act locally

Case Study Common pitfalls First steps when you get back home

Practical Approaches for Implementing a SOA

Page 18: Exchange Breakout Notes

© 2008 Progress Software Corporation18 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Case Study: Pharmaceutical Company

Company: Family-owned, global company with 40,000 employees and 135 affiliates that make prescription and over-the-counter (OTC) pharmaceuticals, veterinary drugs, and consumer health care products.

Challenge: Multiple integration strategies and approaches was making integration too complex. Needed to introduce an infrastructure for developing applications following a SOA methodology for current and future business requirements. Applications must offer services reusable across the globe. New applications will be composed of existing and new services.

Solution: Introduce the Sonic™ ESB as a distributed infrastructure capable of offering and interconnecting services. Introduce a common development methodology allowing local teams to develop services that can be reused in other countries.

Results:• Gained experience on the path to SOA by conducting local projects• Realized services and concepts in 3 “incubator” countries, spread the

methodology across the enterprise• Spread the methodology around the OPU’s• Standardized architecture and implementation for integration needs• Decoupled, yet integrated approach to SOA

Page 19: Exchange Breakout Notes

© 2008 Progress Software Corporation19 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Case Study: Pharmaceutical Company

OPU_DE::DirectoryService

OPU_US:: DirectoryService

OPU_FR::DirectoryService

OPU_IT::DirectoryService

OPU_BE::DirectoryService

OPU_JP:: DirectoryService

OPU_AU:: DirectoryService

OPU_CA:: DirectoryService

Each OPU maintains and develops it’s own ESB segment

Page 20: Exchange Breakout Notes

© 2008 Progress Software Corporation20 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Case Study: Pharmaceutical Company

Example: Maintain global training requirements

DocumentManagement

Crystal Report Server

EMailCSV attr.1

CSV attr.2

CSV attr..

CSV attr.n

FTP

Filecopy

EMail

CSV File

Attributesfor all

predefined SOPs

Service Provider

• Standard Operating Procedures (SOPs) are maintained centrally

• SOP changes require training of international staff

• Training status and schedule is maintained in OPU specific applications

• Change notification was manually before the ESB

Page 21: Exchange Breakout Notes

© 2008 Progress Software Corporation21 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Case Study: Pharmaceutical Company

Example: Maintain global training requirements

DocumentManagement

Crystal Report Server

XML attr.1

CSV attr.1

CSV attr.2

CSV attr..

CSV attr.n

XML attr.2

XML attr. ...

XML attr.n

CSV File

Attributesfor all

predefined SOPs

Service Provider

• Automate the data exchange

• Develop a central document SOP change notification service

• Define a communication pattern to distribute SOP change events to interested OPUs

• Each interested OPU runs a local project to consume the change events

Page 22: Exchange Breakout Notes

© 2008 Progress Software Corporation22 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Case Study: Pharmaceutical Company

Example: Maintain global training requirements

DocumentManagement

Crystal Report Server

XML

CSV File

Attributesfor all

predefined SOPs

Message generation, not file extraction

Service Provider

Pub/Sub

Step 1:

• Don’t touch the connection to the document management system.

• Define XML based change events formatted in XML replacing the individual files

• Publish the change events on the Sonic ESB

• Use Dynamic Routing Architecture to distribute the change events globally

Page 23: Exchange Breakout Notes

© 2008 Progress Software Corporation23 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Case Study: Pharmaceutical Company

Example: Maintain global training requirementsStep 2:

• Consume the XML based change event from the ESB

• Define a handling ESB process to update the training database accordingly.

• Typically the process transforms the change event and uses a backend Service for the Training database.

Pub/Sub

TrainingDatabase

XML format Transformation

<title> => <SOPtitle>

Service User 1

Page 24: Exchange Breakout Notes

© 2008 Progress Software Corporation24 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Case Study: Pharmaceutical Company

Example: Maintain global training requirementsStep 3:

• Leverage the knowledge gained in other OPUs

• Reuse whatever is reusable, amend what needs to change for a specific OPU

• All OPU adhere to the same development and deployment methodology

XML Format Transformation

<Title> =><SOP>

XML format Transformation

<title> => <SOPtitle>

Pub/Sub

TrainingDatabase

XML format Transformation

<title> => <SOPtitle>

SAPHR

Browser

Service User 1 Service User 2

Service User 3

Page 25: Exchange Breakout Notes

© 2008 Progress Software Corporation25 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Case Study: Pharmaceutical Company

Lessons learned

Traditional development turns slowly into a SOA community• Community like development structures needed

SOA needs • loose coupling • A common infrastructure• Common development principles and guidelines

“Successful establishment of SOA is NOT dependent on technology, but on the acceptance of the organization to support the paradigm shift.”

“Lessons Learned” from SOA Project Review

Page 26: Exchange Breakout Notes

© 2008 Progress Software Corporation26 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Case Study: Pernod Ricard Pacific

Ric Hayman Innovation Manager for Pernod Ricard Pacific

“Our ESB allows us to achieve results far more quickly and flexibly than would otherwise be possible.”

Page 27: Exchange Breakout Notes

© 2008 Progress Software Corporation27 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Case Study: Pernod Ricard Pacific

150,000 500 100 90 30

Tonnes of Grapes per year

Vineyards

Subcontractors

Day Harvest Season

Minutes

Page 28: Exchange Breakout Notes

© 2008 Progress Software Corporation28 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

The Business Case• Poor quality wine results in lower sales and bad

reputation

Business Challenges• Minimize value loss that occurs between harvest and controlled

fermentation

Business Objectives• Picking the grapes at their peak• Process and transport to fermentation tanks ASAP

Case Study: Pernod Ricard Pacific

Page 29: Exchange Breakout Notes

© 2008 Progress Software Corporation29 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

The existing solution

Project Objective• Find a new way for these 2 existing disparate applications to

work as one to deliver real-time results

Case Study: Pernod Ricard Pacific

• Legacy CHUI App

•15 years old

•HP-UX

• CSIRO specialty software

• C++

• Windows

• File based XML

XML

Given a change in base data, could take over 24 hrs

to generate a new vintage plan

Page 30: Exchange Breakout Notes

© 2008 Progress Software Corporation30 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

The Solution• Investigate functionality and harvest

Case Study: Pernod Ricard Pacific

Webspeed

Progress Subscriber

Sonic

Direct entry to the Viticultureapplication

Œ

field data

Shared drive…

/

.../…/ Sample data

ŽŒ

Ž

Ž

Ž

Generate Block

bidsheet.shXML Rules

Consolidated

Œ

‘’

ExcelSubscriberWindows Server

Sonic 5

cbs

Block.xmlŽ

Recipient

Page 31: Exchange Breakout Notes

© 2008 Progress Software Corporation31 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

The Solution• Investigate functionality and harvest

– Application functionality was there– The supporting data was there– But the whole PROCESS suffered from ….

Case Study: Pernod Ricard Pacific

1. A batch processing mentality

2. accidental architecture

Page 32: Exchange Breakout Notes

© 2008 Progress Software Corporation32 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

The Solution• Investigate functionality and harvest

Case Study: Pernod Ricard Pacific

CSIRO maturity prediction

CSIROvintage

planning

Viticulture Database

Calculate and store maturity predictions

• Draw up the process flow and interactions

Generate a vintage plan

Emailer

Page 33: Exchange Breakout Notes

© 2008 Progress Software Corporation33 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

The Solution• Investigate functionality and harvest

Case Study: Pernod Ricard Pacific

CSIRO maturity prediction

CSIROvintage

planning

Viticulture Database

• Draw up the process flow and interactions• Some basic experimenting and prototypes

CSIROvintage

planning

Emailer

Page 34: Exchange Breakout Notes

© 2008 Progress Software Corporation34 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Case Study: Pernod Ricard Pacific

SonicESB

Database Service

CSIRO vintage

planning

Transformation Service

XMLServer

Email Service

CSIRO maturity

prediction

The Solution (cont)• Service Policies

Calculate and store maturity predictions

Page 35: Exchange Breakout Notes

© 2008 Progress Software Corporation35 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Case Study: Pernod Ricard Pacific

SonicESB

Database Service

CSIRO vintage

planning

Transformation Service

XMLServer

Email Service

CSIRO maturity

prediction

The Solution (cont)• Service Policies

Generate a vintage plan

Page 36: Exchange Breakout Notes

© 2008 Progress Software Corporation36 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Case Study Lessons• Think in terms of process flows• Whiteboards• Iterative approach• Prototyping and experimentation• Get the process right first (using service stubs), then

full out the services• Good interface contracts (Message Book)• Good stringent test cases (Positive & Negative)

Case Study: Pernod Ricard Pacific

Page 37: Exchange Breakout Notes

© 2008 Progress Software Corporation37 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Case Study: Pernod Ricard Pacific – ASN2

SonicESB

Database Service

CSIRO vvp(vintage

planning)

Transformation Service

XMLServer

CSIRO matprid (maturity

prediction)

•Vintage plan direct from MS Excel

Web Service

Web Service

Page 38: Exchange Breakout Notes

© 2008 Progress Software Corporation38 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Case Study: Pernod Ricard Pacific – ASN2

SonicESB

Database Service

CSIRO vvp(vintage

planning)

Transformation Service

XMLServer

CSIRO matprid (maturity

prediction)

• Expose vintage plan to growers

Web Service

Web Service

Page 39: Exchange Breakout Notes

© 2008 Progress Software Corporation39 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Case Study: Pernod Ricard Pacific – ASN2

• New way to calculate maturity predictions (agility)

SonicESB

Database Service

CSIRO vintage

planning

Transformation Service

XMLServer

Email Service

CSIRO maturity

prediction

CSIRO maturity

prediction 2

Page 40: Exchange Breakout Notes

© 2008 Progress Software Corporation40 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Case Study: Pernod Ricard Pacific – ASN3?

SonicESB

Database Service

CSIRO vintage

planning

Transformation Service

XMLServer

Email Service

CSIRO maturity

prediction

????? ?????

• More bright ideas, more brilliant results

Page 41: Exchange Breakout Notes

© 2008 Progress Software Corporation41 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Agenda

The SOA starting point Starting your own evolution

• A tale of two architectures

• Process, process, process

• Think globally, act locally

Case Study Common pitfalls First steps when you get back home

Practical Approaches for Implementing a SOA

Page 42: Exchange Breakout Notes

© 2008 Progress Software Corporation42 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Common Pitfalls

Communication Breakdowns Not Enough Process Initial Project Failure Not Working Incrementally

Page 43: Exchange Breakout Notes

© 2008 Progress Software Corporation48 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Agenda

The SOA starting point Starting your own evolution

• A tale of two architectures

• Process, process, process

• Think globally, act locally

Case Study Common pitfalls First steps when you get back home

Practical Approaches for Implementing a SOA

Page 44: Exchange Breakout Notes

© 2008 Progress Software Corporation49 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

First Steps to Take When you Get Back Home

A SOA strategy is incremental and progressive• Have clear, realistic objectives

Be Strategic AND Tactical• Set your Vision and Implement in Steps

Success Factors

Steps to Success Define a SOA Vision to achieve business agility

Use high-value business projects for your first steps

Build and refine “just enough process” for your needs

Determine where you are in the SOA Maturity Model, your key goals and key practices to achieve the next level

Page 45: Exchange Breakout Notes

© 2008 Progress Software Corporation50 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

For More Information, go to…

PSDN• A New Service-Oriented Architecture (SOA) Maturity Model

• Principles of a Service-Oriented Architecture• Service-Oriented Architecture: Overview and Business Drive

rs

• Design Best Practices: Methodology using Patterns • SOA Worst Practices, Volume 1• OpenEdge Evaluation Kit and Product Tour

Progress eLearning Community:• 4GL Development with XML• Consuming Web Services from OpenEdge• OpenEdge Development with Sonic ESB• SOAP for OpenEdge Developers• Service Oriented Integration with Sonic ESB

Page 46: Exchange Breakout Notes

© 2008 Progress Software Corporation51 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Relevant Exchange Sessions

Go Back and Review SOA-1: Applied SOA:Building Out Your SOA Environment with

OpenEdge SOA-4: Introduction to OpenEdge Integration Technologies SOA-11: Common Applications of Sonic ESB SOA-14: Continuous Integration in SOA Projects SOA-17: Introducing Native Invocation with the OpenEdge Adapter

for Sonic ESB SOA-15: Using Portal and Sonic ESB to Integrate Information from

Public Resources SOA-23: Enterprise Integration Patterns in Sonic ESB

Still to Come SOA-32: Progress SOA Portfolio Roadmap SOA-37: SOA Management with Actional for Sonic Live at Work SOA-41: Enabling Your OpenEdge Application with Web 2.0

Page 47: Exchange Breakout Notes

© 2008 Progress Software Corporation52 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Questions?

Page 48: Exchange Breakout Notes

© 2008 Progress Software Corporation53 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture

Thank You

Page 49: Exchange Breakout Notes

© 2008 Progress Software Corporation54 SOA-27: Practical Approaches for Implementing a Service Oriented Architecture