Integration Blueprint En

42
Basel · Baden · Bern · Lausanne · Zürich · Düsseldorf · Frankfurt/M. · Freiburg i. Br. · Hamburg · München · Stuttgart · Wien Trivadis Integration Architecture Blueprint Guido Schmutz Oracle ACE Director Principal Consultant / Partner DOAG SIG SOA Köln, 20.10.2010

Transcript of Integration Blueprint En

Page 1: Integration Blueprint En

Basel · Baden · Bern · Lausanne · Zürich · Düsseldorf · Frankfurt/M. · Freiburg i. Br. · Hamburg · München · Stuttgart · Wien

Trivadis Integration ArchitectureBlueprint

Guido Schmutz

Oracle ACE DirectorPrincipal Consultant / Partner

DOAG SIG SOAKöln, 20.10.2010

Page 2: Integration Blueprint En

© 2010Best Practices for Testing SOA Suite 11g based systems

Introduction

Guido Schmutz Working for Trivadis for more than 13 years

leading and independent IT service company operating in Germany, Austria and Switzerland

Oracle ACE Director for Fusion Middleware and SOA Co-Author of different books Consultant, Trainer Software Architect for Java,

Oracle, SOA and EDA

More than 20 years of software development experience

Contact: [email protected] Blog: http://guidoschmutz.wordpress.com/

Page 3: Integration Blueprint En

© 2010

Hamburg

Düsseldorf

Frankfurt

Stuttgart

MunichFreiburg

Vienna

Basel

Bern

Zurich

Lausanne~370 employees

~170 employees

~20 employees

Trivadis facts & figures

Trivadis – the company 3

11 Trivadis locations with more than 550 employees

Financially independent and sustainably profitable

Key figures 2009

Revenue CHF 100 / EUR 66 mio.

Services for more than 650 clients in over 1‘600 projects

Over 160 Service Level Agreements

More than 5'000 training participants

Research and development budget: CHF 5.0 / EUR 3.3 mio.

Page 4: Integration Blueprint En

© 2010

Agenda

Data are always part of the game.

Introduction

Road to the Integration Blueprint

Scenarios

Integration Platforms

4 20.10.2010

Page 5: Integration Blueprint En

© 2010

Why do we need Integration?

Why is integration necessary? If everything would be build in a green field approach, we would

theoretically have no integration concerns at all Goal of SOA: Increased Intrinsic Interoperability => Thomas Erl Systems that are not interoperable need to be integrated Integration can be seen as the process that enables interoperability

Integration on different levels Transport Protocol Message Protocol different Vendor products/stacks/frameworks

5 20.10.2010

Page 6: Integration Blueprint En

© 2010

History of the Integration Architecture Blueprint

2 years ago the Trivadis Architecture Board started to document the „Integration Architecture Blueprint“ : Based on our knowledge and experience with lots of traddional as

well as more modern integration projects Database based solutions ETL Solutions Enterprise Application Integration (EAI) Service-Oriented Integration

Goal was to define and document an easy to use approach and methodology to structure, design and understand existing as well as new application

landscapes from the perspective of integration Vendor neutral Product neutral Approach neutral (SOA, EAI, ETL) applicable to mixed use cases

6 20.10.2010

Page 7: Integration Blueprint En

© 2010

History of the Integration Architecture Blueprint

Lot‘s of discussions lead to the german version of the book Together with my co-authors Peter Welkenbach

and Daniel Liebhard

Good feedback from our colleagues, partners and customers lead us to the idea of publishing it in English Updated and actualized version of the german

book Actual, up-to-date mapping of vendor platforms to

the blueprint

7 20.10.2010

Page 8: Integration Blueprint En

© 2010

What is the Integration Architecture Blueprint ?

Integration Architecture Blueprint shows how to structure, describe and understand existing and new application landscapes from the perspective of integration Easy to use approach, with no or minimal tooling support (whiteboard or

graphical tool like Visio are enough) Ideally show a given integration solution on one single page Architecture (an design) level, NOT implementation level

Deviding the integration architecture into 4 layers Process Mediation Collection and Distribution Communication

(graphical) Domain Specific Language (DSL) for describing integration concerns

8 20.10.2010

Page 9: Integration Blueprint En

© 2010

Trivadis Integration Architecture Blueprint

9 20.10.2010

Page 10: Integration Blueprint En

© 2010

Agenda

Data are always part of the game.

Introduction

Road to the Integration Blueprint

Scenarios

Integration Platforms

10 20.10.2010

Page 11: Integration Blueprint En

© 2010

Simple Integration Solution – the beginning

11 20.10.2010

Page 12: Integration Blueprint En

© 2010

Layering, Goals, Roles and Information Flow

Application and Information View

Integration View Application and Information View

Quell-System

Ziel-System

Integrations-Lösung

Q Q Z Z

12 20.10.2010

Page 13: Integration Blueprint En

© 2010

Building Blocks and Roles

13 20.10.2010

Page 14: Integration Blueprint En

© 2010

Combine Collection and Distribution Layer

14 20.10.2010

Page 15: Integration Blueprint En

© 2010

Changed Information Flow (top right to lower right)

Page 16: Integration Blueprint En

© 2010

Process Layer added for Orchestration

16 20.10.2010

Page 17: Integration Blueprint En

© 2010

Role Orchestrator in Information Flow

Page 18: Integration Blueprint En

© 2010

Concrete Building Block for Orchestrator

Page 19: Integration Blueprint En

© 2010

Adding Levels to the Blueprint

19 20.10.2010

Page 20: Integration Blueprint En

© 2010

Trivadis Integration Architecture Blueprint

20 20.10.2010

Page 21: Integration Blueprint En

© 2010

Canonical Data Model: why ?

21 20.10.2010

Page 22: Integration Blueprint En

© 2010

Canonical Data Model: why ?

20.10.201022

Page 23: Integration Blueprint En

© 2010

Agenda

Data are always part of the game.

Introduction

Road to the Integration Blueprint

Scenarios

Integration Platforms

23 20.10.2010

Page 24: Integration Blueprint En

© 2010

Scenario Direct Connection – Implemented by SOA

Integration Application and Information

Integration Domain Layer Transport LayerApplication Layer

Process Mediation Adapter/Mapper Communication

SOAPSOAP Adapter

RMI/IIOPEJB Adapter

Transformer

EJB Session Bean

.NET Application

SOAP Adapter

Integration View Application and Information View

Integration Domain TransportApplication

Process Mediation Collection/Distribution Communication

SOAPSOAP Adapter

RMI/IIOPEJB AdapterEJB Session

Bean

.NET Application

ESB

Endpoint

Message Translator

Endpoint

24 20.10.2010

Page 25: Integration Blueprint En

© 2010

Synchronous to Asynchronous Messaging

20.10.201025

asynchronous

Synchronous

Page 26: Integration Blueprint En

© 2010

Scenario Router

Integration View Application and Information View

Integration Domain TransportApplication

Process Mediation Collection/Distribution Communication

JMSJMS Adapter

FTPFTP Adapter

SQL*NetDatabase Adapter

Queue

Oracle

CSV

SQL*NetSQL Oracle

ESB

Content-Based Router

Enrichment

Event-Driven Consumer

Message Translator

Message Translator

Application

Page 27: Integration Blueprint En

© 2010

Scenario Process – Implemented by SOA

Integration View Application andInformation View

Integration Domain TransportApplication

Process Mediation Collection/Distribution Communication

JMSJMS Adapter

FTPFTP AdapterContent Based

Router

Event-DrivenConsumer

SQL*NetDB Adapter

BPELreceive

invoke

invoke invoke

RMI/IIOPEJB Adapter EJB Session BeanEndpoint

Application

Oracle

Queue

27 20.10.2010

Page 28: Integration Blueprint En

© 2010

Scenario Population – Implemented tradionally

Integration View Application and Information View

Integration Domain TransportApplication

Process Mediation Collection/Distribution Communication

SQL*NetSQL

Tabular Data Stream

SQL

Oracle

SQLServer

Population

Load / Apply

Transform / Process

Extract / Gather

Job Scheduler

28 20.10.2010

Page 29: Integration Blueprint En

© 2010

Scenario Population – Change Data Capture (CDC)

Application and Information View

Integration View

Integration Domain TransportApplication

Process Mediation Collection/Distribution Communication

SQL*NetSQL

SQL*NetSQL

OracleA

OracleB

Batch Population

Load / Apply

Transform / Process

Extract / Gather

SOAPSOAP Adapter Application

ESB

SQL*NetDatabase Adapter

Endpoint

Event-DrivenConsumer

ESB

Endpoint

SQL*NetAQ Adapterchange event

Endpoint

Message Translator

Message Translator

SOAP

SOAP Adapter

SOAP Adapter

29 20.10.2010

Page 30: Integration Blueprint En

© 2010

Scenario Population – Orchestrated by SOA

Integration View Application and Information View

Integration Domain TransportApplication

Process Mediation Collection/Distribution Communication

TCP/IPSQL

SQL*NetSQL

DB2

Oracle

Batch Population

Load / Apply

Transform / Process

Extract / Gahter

BPEL

receive

receive

invoke

SOAPSOAP Adapter Application

ESB

invoke SQL*NetDatabase Adapter

Endpoint

Endpoint

ESB

Endpoint

SOAP

SOAP Adapter

SOAP Adapter

SOAP

SOAP Adapter

SOAP AdapterEndpoint

30 20.10.2010

Page 31: Integration Blueprint En

© 2010

Scenario CEP – Event Processing Engine in Process Layer

Integration View Application and Information View

Queue

Integration Domain TransportApplication

Process Mediation Collection/Distribution Communication

JMSJMS Adapter

SOAPSOAP Adapter Web Service

QueueJMSJMS Adapter

CEP Engine

CEPQueries

ESB

Event-DrivenConsumer

Event-DrivenConsumer

Endpoint

Page 32: Integration Blueprint En

© 2010

Process-Oriented Integration with Oracle SOA Suite

20.10.201032

Page 33: Integration Blueprint En

© 2010

Modernization of an Integration Solution – Before

Integration View Application and Information View

Integration Domain IntegrationApplication

Process Mediation Collection/Distribution Communication

FTP UKCSV

PL/SQL

SQL

ERP

SQL*Net

Job Scheduler

Shell

upload-UK

upload-CH FTP

CHXML

GECSV

File

PL/SQL

select

enrich

writeXML

File

SQL SQL*Net

call

call

call

writeCSV

FTPupload-GE

UKCSV

File

File

enqueueXML

CHXML

GECSV

UK-App

GE-App

CH-App

PL/SQL

AQ send

receive

IT-App

AQdequeueXML

SQL SQL*Netupdate

ERP-App

External Appliations

2

3

4

9

5

6

10

SQL

SQL

12

13

8

11

Shellcall

call

1

14

7

call

UTL_FILE

UTL_FILE

15

33 20.10.2010

Page 34: Integration Blueprint En

© 2010

Modernization of an Integration Solution – After

Integration View Application and Information View

Integration Domain TransportApplication

Process Mediation Collection/Distribution Communication

SQL*NetDatabase Adapter

BPEL

receive

invoke

invoke

SOAPSOAP AdapterUK Web Service

AQAQ Adapter

ERP

ESB

Event-DrivenConsumer

Endpoint

Enricher

JMS Adapter

FTP Adapter (CSV)

FTP Adapter

GECSV

FTP

FTP

sendJMS

SQL*NetDatabase Adapter

invoke EndpointMessage Translator

Content-Based Router

Translator

Translator

Translator

receive JMS Adapter JMSEvent-driven

Cosumer receive

UK-App

GE-App

CH-App

IT-App

SQL*NetDatabase Adapterinvoke Endpoint

Business Event

External Applications

Aggregator

1

2

3

4

9

7

8

10

5

6

11

12

13

14

XML

15

34 20.10.2010

Page 35: Integration Blueprint En

© 2010

Agenda

Data are always part of the game.

Introduction

Road to the Integration Blueprint

Scenarios

Integration Platforms

35 20.10.2010

Page 36: Integration Blueprint En

© 2010

Oracle Fusion Middleware

36 20.10.2010

Page 37: Integration Blueprint En

© 2010

Oracle Data Integrator

37 20.10.2010

Page 38: Integration Blueprint En

© 2010

Concepts and ideas of AIA can easily be mapped to the Integration Architecture Blueprint

Oracle AIA and the Integration Architecture Blueprint

20.10.201038

Page 39: Integration Blueprint En

© 2010

IBM WebSphere

39 20.10.2010

Page 40: Integration Blueprint En

© 2010

Microsoft BizTalk

40 20.10.2010

Page 41: Integration Blueprint En

© 2010

Open Source and Spring

41 20.10.2010

Page 42: Integration Blueprint En

Basel · Baden · Bern · Lausanne · Zürich · Düsseldorf · Frankfurt/M. · Freiburg i. Br. · Hamburg · München · Stuttgart · Wien

Thank you!

?www.trivadis.com