Top Banner
Enter Information Classification here 1.10.2007 © Ixonos Oyj Integration patterns Jari Kekkonen Ixonos Technology Consulting
24

Jari Kekkonen Ixonos Technology Consulting - Aalto … · Jari Kekkonen Ixonos Technology Consulting. ... • Roots in IBM’s WSFL and Microsoft’s XLANG and BPMI.org’s BPML.

May 12, 2018

Download

Documents

vuongphuc
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Jari Kekkonen Ixonos Technology Consulting - Aalto … · Jari Kekkonen Ixonos Technology Consulting. ... • Roots in IBM’s WSFL and Microsoft’s XLANG and BPMI.org’s BPML.

Enter Information Classification here 1.10.2007 © Ixonos Oyj

Integration patternsJari Kekkonen

Ixonos Technology Consulting

Page 2: Jari Kekkonen Ixonos Technology Consulting - Aalto … · Jari Kekkonen Ixonos Technology Consulting. ... • Roots in IBM’s WSFL and Microsoft’s XLANG and BPMI.org’s BPML.

© Ixonos Oyj1.10.2007Enter Information Classification here 2

Agenda

• Integration styles, patterns and concepts in general

• Loose coupling

• Process integration and business exceptions

• Service-oriented integration and components

• Service bus and orchestration

• Standards: BPEL and BPMN

• Examples and experiences

Page 3: Jari Kekkonen Ixonos Technology Consulting - Aalto … · Jari Kekkonen Ixonos Technology Consulting. ... • Roots in IBM’s WSFL and Microsoft’s XLANG and BPMI.org’s BPML.

© Ixonos Oyj1.10.2007Enter Information Classification here 3

Ixonos in Brief

Ixonos operates in the ICT services market, producing software

development, software maintenance and project management services

• Founded 1994, listed in Helsinki Stock Exchange 1999

• Clientele comprises leading global mobile phone and smartphone

manufacturers and operators, leading Finnish banks and insurance

companies as well as public administration organisations

• Headquarter in Helsinki, offices in Espoo, Salo, Tampere, Turku, Jyväskylä, Oulu, Kemi, Rovaniemi and Kosice, Slovak Republic;

subsidiary Ixonos Testhouse offices in Haapajärvi and Tallinn,

Estonia

• Turnover in 2006: 39,2 MEUR

• Operating profit in 2006: 3,9 MEUR

• Current personnel 800

Page 4: Jari Kekkonen Ixonos Technology Consulting - Aalto … · Jari Kekkonen Ixonos Technology Consulting. ... • Roots in IBM’s WSFL and Microsoft’s XLANG and BPMI.org’s BPML.

© Ixonos Oyj1.10.2007Enter Information Classification here 4

Intentional or accidental systems?

Page 5: Jari Kekkonen Ixonos Technology Consulting - Aalto … · Jari Kekkonen Ixonos Technology Consulting. ... • Roots in IBM’s WSFL and Microsoft’s XLANG and BPMI.org’s BPML.

© Ixonos Oyj1.10.2007Enter Information Classification here 5

Integration intent and projects

• Information portals

• Data replication

• Shared business functions

• Service-oriented architecture

• Distributed business processes

• Business-to-business integration

(EIP by G. Hohpe)

Page 6: Jari Kekkonen Ixonos Technology Consulting - Aalto … · Jari Kekkonen Ixonos Technology Consulting. ... • Roots in IBM’s WSFL and Microsoft’s XLANG and BPMI.org’s BPML.

© Ixonos Oyj1.10.2007Enter Information Classification here 6

Connection mechanisms

• Presentation integration

• Functional integration

• Data integration

(EIP by G. Hohpe)

Page 7: Jari Kekkonen Ixonos Technology Consulting - Aalto … · Jari Kekkonen Ixonos Technology Consulting. ... • Roots in IBM’s WSFL and Microsoft’s XLANG and BPMI.org’s BPML.

© Ixonos Oyj1.10.2007Enter Information Classification here 7

Interaction mechanisms (integration styles)

• File transfer

• Shared database

• Remote procedure invocation

• Messaging

(EIP by G. Hohpe)

Page 8: Jari Kekkonen Ixonos Technology Consulting - Aalto … · Jari Kekkonen Ixonos Technology Consulting. ... • Roots in IBM’s WSFL and Microsoft’s XLANG and BPMI.org’s BPML.

© Ixonos Oyj1.10.2007Enter Information Classification here 8

Tightly coupling vs. loose coupling

(EIP by G. Hohpe)

• Platform technology• Location• Data format• Time

Page 9: Jari Kekkonen Ixonos Technology Consulting - Aalto … · Jari Kekkonen Ixonos Technology Consulting. ... • Roots in IBM’s WSFL and Microsoft’s XLANG and BPMI.org’s BPML.

© Ixonos Oyj1.10.2007Enter Information Classification here 9

Integration scenario – A flight need to berescheduled.

Flight reschedulingfunction

Page 10: Jari Kekkonen Ixonos Technology Consulting - Aalto … · Jari Kekkonen Ixonos Technology Consulting. ... • Roots in IBM’s WSFL and Microsoft’s XLANG and BPMI.org’s BPML.

© Ixonos Oyj1.10.2007Enter Information Classification here 10

Data integrity vs. process integrity

• Data integrity

• Entity – Each row in a database must be uniquely identified.

• Domain – A set of data values fall within a specific range. For

example, a birth date should not be in the future.

• Referential integrity – Validity of relationships between different data

tuples.

• ACID (Atomicity, Consistency, Isolation, Durability)

• Process integrity

• A new flight schedule can be obtained from flight planning system

and pilot and cabin crew allocations can be changed according to the new schedule, but technical people in line maintenance cannot

perform mandatory tasks according to the new schedule. This is what

we refer to as a process inconsistency.

• Business transactions, exceptions and SAGAs

Page 11: Jari Kekkonen Ixonos Technology Consulting - Aalto … · Jari Kekkonen Ixonos Technology Consulting. ... • Roots in IBM’s WSFL and Microsoft’s XLANG and BPMI.org’s BPML.

© Ixonos Oyj1.10.2007Enter Information Classification here 11

Process integration and service composition

(EIP by G. Hohpe)

Page 12: Jari Kekkonen Ixonos Technology Consulting - Aalto … · Jari Kekkonen Ixonos Technology Consulting. ... • Roots in IBM’s WSFL and Microsoft’s XLANG and BPMI.org’s BPML.

© Ixonos Oyj1.10.2007Enter Information Classification here 12

Service

Bus (ESB)

The pieces of standards-based loosecoupled integration solution

J2EE Legacy3rd

party

Service

Portlet

Service

Service

registry(UDDI)

SOAP

WS-Reliability /WS-Addressing

• Platform technology (WS-*, XML)• Data format (XSLT / XPath) • Location (Registry / Bus)• Time (Bus)

Architecturally, service bus consists of a set of service containers (gray), which integrate various types of IT assets. The containers are interconnected with a reliable messaging queues. Service containers adapt IT assets to a standard services model, based on XML message exchange using standardized message exchange patterns. The bus provides facilities for transforming and routing messages, as well as the ability to centrally administer the distributed system.

WSDL

Page 13: Jari Kekkonen Ixonos Technology Consulting - Aalto … · Jari Kekkonen Ixonos Technology Consulting. ... • Roots in IBM’s WSFL and Microsoft’s XLANG and BPMI.org’s BPML.

© Ixonos Oyj1.10.2007Enter Information Classification here 13

Orchestration, language and engines

• Orchestration language such as BPEL can be used to formally define and

implement the desired control logic, the sequence and conditions of service invocations (service composition).

• Orchestration engine is a software component that controls the participating services in SOA.

• A dedicated orchestration engine and language should be used mainly to

implement complex services and processes which involve:

• Long running (from a few hours to a few months)

• Event driven business logic

• A lot of parallel processing

• Orchestrations are not about modeling end-to-end business processes by

themselves

• Different orchestration (i.e. different services) can run within the same business process, and vice versa.

Page 14: Jari Kekkonen Ixonos Technology Consulting - Aalto … · Jari Kekkonen Ixonos Technology Consulting. ... • Roots in IBM’s WSFL and Microsoft’s XLANG and BPMI.org’s BPML.

© Ixonos Oyj1.10.2007Enter Information Classification here 14

BPEL (Business Process ExecutionLanguage)

• An XML-based orchestration language for Web services specified by OASIS.

• http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html

• Roots in IBM’s WSFL and Microsoft’s XLANG and BPMI.org’s BPML.

• Current accepted version is 2.0.

• Version 2.0 is not yet widely implemented.

• Future is not clear since many big vendors are not fully committed to it.

Page 15: Jari Kekkonen Ixonos Technology Consulting - Aalto … · Jari Kekkonen Ixonos Technology Consulting. ... • Roots in IBM’s WSFL and Microsoft’s XLANG and BPMI.org’s BPML.

© Ixonos Oyj1.10.2007Enter Information Classification here 15

BPMN (Business Process Modeling Notation)

• A flow-chart based notation for defining business processes.

• An agreement between multiple modeling tool vendors, who hadtheir own notations, to use a single notation for the benefit of end-user understand and training.

• Provides a mechanism to generate an executable business process(e.g. BPEL) from the business level notation.

• A business process developed by a business analyst can bedirectly applied to a process engine instead of going throughhuman interpretations and translations into other languages.

• Initially developed by BPMI.org. Adopted as an OMG standard in 2006.

• Currently there are 39 companies that have implementations of BPMN.

Page 16: Jari Kekkonen Ixonos Technology Consulting - Aalto … · Jari Kekkonen Ixonos Technology Consulting. ... • Roots in IBM’s WSFL and Microsoft’s XLANG and BPMI.org’s BPML.

© Ixonos Oyj1.10.2007Enter Information Classification here 16

BPMN sample

From: http://www.bpmn.org/Documents/Mapping%20BPMN%20to%20BPEL%20Example.pdf

Page 17: Jari Kekkonen Ixonos Technology Consulting - Aalto … · Jari Kekkonen Ixonos Technology Consulting. ... • Roots in IBM’s WSFL and Microsoft’s XLANG and BPMI.org’s BPML.

© Ixonos Oyj1.10.2007Enter Information Classification here 17

B2B / Choreography sample

(Adopted from OMG)

Page 18: Jari Kekkonen Ixonos Technology Consulting - Aalto … · Jari Kekkonen Ixonos Technology Consulting. ... • Roots in IBM’s WSFL and Microsoft’s XLANG and BPMI.org’s BPML.

© Ixonos Oyj1.10.2007Enter Information Classification here 18

A Complex Process

(Adopted from OMG)

Page 19: Jari Kekkonen Ixonos Technology Consulting - Aalto … · Jari Kekkonen Ixonos Technology Consulting. ... • Roots in IBM’s WSFL and Microsoft’s XLANG and BPMI.org’s BPML.

© Ixonos Oyj1.10.2007Enter Information Classification here 19

Mapping BPMN to BPEL sample<process name="EMailVotingProcess">

<!-- The Process data is defined first-->

<sequence>

<receive partnerLink="Internal" portType="tns:processPort"

operation="receiveIssueList“ variable="processData"

createInstance="Yes"/>

<invoke name="ReviewIssueList" partnerLink="Internal"

portType="tns:internalPort" operation="sendIssueList"

inputVariable="processData“ outputVariable="processData"/>

<switch name="Anyissuesready">

<!-- name="Yes" -->

<case condition="bpws:getVariableProperty(ProcessData,NumIssues)>0">

<invoke name=“DiscussionCycle“ partnerLink="Internal"

portType="tns:processPort" operation=“callDiscussionCycle"

inputVariable="processData"/>

<!– Other Activities not shown -->

<!--name="No" -->

</case>

<otherwise>

<empty/>

</otherwise>

</switch>

</sequence>

</process>

(Adopted from OMG)

Page 20: Jari Kekkonen Ixonos Technology Consulting - Aalto … · Jari Kekkonen Ixonos Technology Consulting. ... • Roots in IBM’s WSFL and Microsoft’s XLANG and BPMI.org’s BPML.

© Ixonos Oyj1.10.2007Enter Information Classification here 20

Hands-on example

Page 21: Jari Kekkonen Ixonos Technology Consulting - Aalto … · Jari Kekkonen Ixonos Technology Consulting. ... • Roots in IBM’s WSFL and Microsoft’s XLANG and BPMI.org’s BPML.

© Ixonos Oyj1.10.2007Enter Information Classification here 21

Canonical data model and informationarchitecture

(EIP by G. Hohpe)

Page 22: Jari Kekkonen Ixonos Technology Consulting - Aalto … · Jari Kekkonen Ixonos Technology Consulting. ... • Roots in IBM’s WSFL and Microsoft’s XLANG and BPMI.org’s BPML.

© Ixonos Oyj1.10.2007Enter Information Classification here 22

Building a service-oriented integration

Business

Development

PMO / CoE

IT project(s)

Service

processes

Business

services

Service

interfaces,

operations and

orchestrations

Schemas

(XML)

Conceptual

models

Service

impl.

Business

glossary

Service

eventsWorkflow

processesChoreography

Service

bus etc.

Business

rules

User profiles

and

portal views

Page 23: Jari Kekkonen Ixonos Technology Consulting - Aalto … · Jari Kekkonen Ixonos Technology Consulting. ... • Roots in IBM’s WSFL and Microsoft’s XLANG and BPMI.org’s BPML.

© Ixonos Oyj1.10.2007Enter Information Classification here 23

Current service integration drivers:Portals and workspaces

View

Model

Control

Portlet

Portlet

Portlet

Portlet

Portlet

Portlet

Business logic

Application

Data

Information portal / Workspace

Interface

Process logic

Interface

Integration

Customer detailsOrder processing

Page 24: Jari Kekkonen Ixonos Technology Consulting - Aalto … · Jari Kekkonen Ixonos Technology Consulting. ... • Roots in IBM’s WSFL and Microsoft’s XLANG and BPMI.org’s BPML.

Enter Information Classification here 1.10.2007 © Ixonos Oyj

Kiitos – Thank youwww.ixonos.com

Email: [email protected]