SOA-4: Introduction to OpenEdge ® Integration Technologies Jamie Townsend Applied Architect.

39
SOA-4: Introduction to OpenEdge ® Integration Technologies Jamie Townsend Applied Architect

Transcript of SOA-4: Introduction to OpenEdge ® Integration Technologies Jamie Townsend Applied Architect.

SOA-4: Introduction to OpenEdge® Integration Technologies

Jamie TownsendApplied Architect

© 2008 Progress Software Corporation2 SOA-4: Introduction to OpenEdge Integration Technologies

Agenda

Reasons to Integrate Outgoing Integration Incoming Integration Choosing The Right Approach

Introduction to OpenEdge Integration Technologies

© 2008 Progress Software Corporation3 SOA-4: Introduction to OpenEdge Integration Technologies

Business Environment Highly Susceptible to Change

Customer Demands Competition Mergers & Acquisitions Divestitures Business Partners Technology Business Expansion Drive for Cost Efficiency

© 2008 Progress Software Corporation4 SOA-4: Introduction to OpenEdge Integration Technologies

The IT RealityR

equ

irem

ent

s

Time

IT Systems

Business

Constant changes reduces the ability to respond

© 2008 Progress Software Corporation5 SOA-4: Introduction to OpenEdge Integration Technologies

Agenda

Reasons to Integrate Outgoing Integration Incoming Integration Choosing The Right Approach

Introduction to OpenEdge Integration Technologies

© 2008 Progress Software Corporation6 SOA-4: Introduction to OpenEdge Integration Technologies

Outgoing Integration

OpenEdge App

DBDB

ABLABL

UI

Web service

ODBCODBCOracle®Oracle® MSSQLMS

SQL

COM / ActiveX

SonicMQ®/Sonic™ ESB

Process

FlatFile

© 2008 Progress Software Corporation7 SOA-4: Introduction to OpenEdge Integration Technologies

Usability Legend

Ease of Implementation

Suseptible to Change

Future Ready

E E E

C C C

F F F

© 2008 Progress Software Corporation8 SOA-4: Introduction to OpenEdge Integration Technologies

Outgoing – Flat File

ABL Developers Interpret File Format

IMPORT / EXPORT

INPUT FROM / OUTPUT TO

PUT

READ-XML()* / WRITE-XML()*

* OpenEdge 10.1A

E C F

© 2008 Progress Software Corporation9 SOA-4: Introduction to OpenEdge Integration Technologies

Outgoing – Process

ABL Developers Interpret Process Input / Output Format

INPUT THROUGH / OUTPUT THROUGH

External processes are platform dependent!

E C F

© 2008 Progress Software Corporation10 SOA-4: Introduction to OpenEdge Integration Technologies

Outgoing – Sockets*

ABL Developers Socket Management Implement Custom Protocol

Remote System Developers Implement Custom Protocol

* Progress 9.1A / OpenEdge 10.0B

© 2008 Progress Software Corporation11 SOA-4: Introduction to OpenEdge Integration Technologies

Outgoing – Sockets

Typical Uses• FTP

• HTTP

• SMTP

• Special needs:– Performance– Non-Standard protocol

E C F

© 2008 Progress Software Corporation12 SOA-4: Introduction to OpenEdge Integration Technologies

Outgoing – COM / ActiveX*

ABL Developers Instantiate & Use COM objects Embed ActiveX component in GUI

• Program for each event / method

Typical Uses• Custom GUI Objects

• Word Processing, Spreadsheets, Email

*Primarily Windows – otherwise very limited support

E C F

© 2008 Progress Software Corporation13 SOA-4: Introduction to OpenEdge Integration Technologies

Outgoing – .Net*

ABL Developers Embed existing .Net components Requires a little OOABL programming

Typical Uses Custom GUI Objects Custom .Net Objects

*Supported only on Windows

*Requires OpenEdge 10.2A (not yet released)

E C F

© 2008 Progress Software Corporation14 SOA-4: Introduction to OpenEdge Integration Technologies

Outgoing – Web Service

Web service = HTTP + SOAP

ABL Developers Connection Management

• Very similar to calling OpenEdge AppServer™

Interpret WSDL• bprowsdldoc creates sample code

E C F

© 2008 Progress Software Corporation15 SOA-4: Introduction to OpenEdge Integration Technologies

Outgoing – SonicMQ

ABL Developers JMS Connection Management Produce/Consume SonicMQ Messages

Offers Guaranteed Delivery Message ordering

E C F

© 2008 Progress Software Corporation16 SOA-4: Introduction to OpenEdge Integration Technologies

Outgoing – Sonic ESB

ABL Developers Produce/Consume SonicMQ Messages Call ESB hosted Web service

Offers Application independant connection to basically

anything*

*JMS, WebService, FTP, Email, HTTP, 100+ Apps

E C F

© 2008 Progress Software Corporation17 SOA-4: Introduction to OpenEdge Integration Technologies

Outgoing – Data Server

ABL Developers Either: Tweak data access

• Existing code will just work...

• ...but maybe not efficiently

Or: Reimplement foreign business logic

Oracle, MS/SQL, other ODBC

E C F

© 2008 Progress Software Corporation18 SOA-4: Introduction to OpenEdge Integration Technologies

Outgoing Integration Overview

ImplementationApproach

Ease ofImplementation

Suseptibility toChange

Future Ready

Flat File

Process

Sockets

COM / ActiveX

.Net

Web Services

SonicMQ

Sonic ESB

Data Server

E C F

E C F

E C F

E C F

E C F

E C F

E C F

E C F

C FE

© 2008 Progress Software Corporation19 SOA-4: Introduction to OpenEdge Integration Technologies

Agenda

Reasons to Integrate Outgoing Integration Incoming Integration Choosing The Right Approach

Introduction to OpenEdge Integration Technologies

© 2008 Progress Software Corporation20 SOA-4: Introduction to OpenEdge Integration Technologies

Incoming Integration

OpenEdge App

DBDB

AppServerApp

Server

UI

Web service

Java™

SonicMQ / ESB

ODBC / JDBC

© 2008 Progress Software Corporation21 SOA-4: Introduction to OpenEdge Integration Technologies

Incoming – .Net /Java

ABL Developers Proxy Gen Distribute proxies

.Net / Java Developers Use proxies No special coding

E C F

© 2008 Progress Software Corporation22 SOA-4: Introduction to OpenEdge Integration Technologies

Incoming – Web Services

ABL Developers Proxy Gen Distribute WSDL

Remote System Developers Use Web Service No Special Coding

E C F

© 2008 Progress Software Corporation23 SOA-4: Introduction to OpenEdge Integration Technologies

Incoming – Sonic ESB

ABL Developers Insert Code Annotation Directly deployed into Sonic ESB

Remote System Developers Use easiest approach:

• SonicMQ, Other JMS, Web service, File Drop, DB Event, Email, many more...

E C F

© 2008 Progress Software Corporation24 SOA-4: Introduction to OpenEdge Integration Technologies

Incoming – ODBC / JDBC

ABL Developers Do Nothing

Remote System Developers Understand Database Schema Replicate ABL Logic

E C F

© 2008 Progress Software Corporation25 SOA-4: Introduction to OpenEdge Integration Technologies

Incoming Integration Overview

ImplementationApproach

Ease ofImplementation

Suseptibility toChange

Future Ready

.Net / Java

Web Services

Sonic ESB

ODBC / JDBC E C F

E C F

E C F

E C F

© 2008 Progress Software Corporation26 SOA-4: Introduction to OpenEdge Integration Technologies

Agenda

Reasons to Integrate Incoming Integration Outgoing Integration Choosing The Right Approach

Introduction to OpenEdge Integration Technologies

© 2008 Progress Software Corporation27 SOA-4: Introduction to OpenEdge Integration Technologies

IT Dilemma: “The Accidental Architecture”

Proprietary technologies

and skill sets

Multiple communication

infrastructures High cost of license,

consulting and operation

Lots of turf control and

organizational issues

CRM ERP

PARTNER SYSTEMS FINANCE

ORDERENTRY

Inability to Respond

© 2008 Progress Software Corporation28 SOA-4: Introduction to OpenEdge Integration Technologies

IT Architecture Requirements

Simplicity Agility and flexibility Reusability Technology independent Promote integration Software that reflects business needs

Built to Change

© 2008 Progress Software Corporation29 SOA-4: Introduction to OpenEdge Integration Technologies

Service-Oriented Architecture

An approach for building distributedcomputing systems based on encapsulating

business functions as services that can be easily accessed in a loosely coupled fashion.

© 2008 Progress Software Corporation30 SOA-4: Introduction to OpenEdge Integration Technologies

It Has Been Tried Before

CORBA Microsoft® DCOM Java RMI .NET Remoting DCE EJB

Easier for Programmers – API Focused

© 2008 Progress Software Corporation31 SOA-4: Introduction to OpenEdge Integration Technologies

How is SOA Different?

Uses established distributed computing and messaging concepts

Scales-up as well as down• Department• Enterprise• Extended enterprise

Incorporates multiple communication models – events and request/reply

Driven by standards and well-known protocols, e.g. Web Services, XML, HTTP, etc.

Easier for Business Analysts – Document Focused

© 2008 Progress Software Corporation32 SOA-4: Introduction to OpenEdge Integration Technologies

SOA: It’s Not a Thing

Product A specific technology An application A specific standard A specific set of rules

It’s not a:

An Approach for Building Agile and Flexible Business Applications

© 2008 Progress Software Corporation33 SOA-4: Introduction to OpenEdge Integration Technologies

For More Information, go to…

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

SOA-9: Reliable Messaging with OpenEdge

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

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

Relevant OpenEdge Integration Sessions

© 2008 Progress Software Corporation34 SOA-4: Introduction to OpenEdge Integration Technologies

For More Information, go to…

DEV-5: Application Architecture Made Simple

DEV-6: Introduction to the OpenEdge Advanced GUI

DEV-11: Architecting Your Application in OpenEdge 10

…and many more

Relevant OpenEdge Integration Sessions

© 2008 Progress Software Corporation35 SOA-4: Introduction to OpenEdge Integration Technologies

PSDN – Just some topics...

SOA Overview and Business Drivers Principles of a SOA Identifying Services in your App Access Web services from OpenEdge Patterns for Async Web service calls Building Services in OpenEdge (Overview) Exposing ABL as Web Services Messaging Patterns for OpenEdge

© 2008 Progress Software Corporation36 SOA-4: Introduction to OpenEdge Integration Technologies

Documentation

OpenEdge• Installation and Configuration Guides• Application and Integration Services• Core Business Services• Messaging and ESB• Application Server Administration

© 2008 Progress Software Corporation37 SOA-4: Introduction to OpenEdge Integration Technologies

Questions?

© 2008 Progress Software Corporation38 SOA-4: Introduction to OpenEdge Integration Technologies

Thank You

© 2008 Progress Software Corporation39 SOA-4: Introduction to OpenEdge Integration Technologies