Download - ESB pour les nuls

Transcript
Page 1: ESB pour les nuls

ESB POUR LES NULS

A quoi ca sert un ESB

Page 2: ESB pour les nuls

AGENDA

1. ESB: Contexte, Théorie et Use cases

2. ESB: Méthodologie et bonnes pratiques

3. Petals Link, l’éditeur de Petals ESB

4. Discussion ouverte: l’édition OpenSource

Page 3: ESB pour les nuls

VOUS AVEZ DIT « ESB » ?

??

?? Vous avez dit « ESB » ??

??

Page 4: ESB pour les nuls

Architecture:

Architecture d’entrepriseArchitecture du système d’informationService Oriented Architecture (SOA)Event Driven Architecture (EDA)

CONTEXTE

Page 5: ESB pour les nuls

CARTOGRAPHIE D’UN SI: L’EXISTANT

Ad Expense

-Promo

Analysis

PriceMarketing

Support

BMP - Busperformance Mngt

StoreScorecard

PriceTesting

Media

Bonus/HR

Hand ScanApps

Shows

POS

SalesTax

A04 - CustRefund Chks

Equifax

Credit

CellularRollover

SatelliteSystem

Scanning

VAN

Cash Over/Short

Coop SKU SelectionTool

SKUPerformance

SupplierCompliance

1

DRK

ABBX

DFK

SalesCorrections

Return toVendor

StockStatus

HomeDeliveries

SolutionSoftware

Inventory Info

Sales Posting

Cycle PhysicalInventory

SKUInformation

Customer Repair

Tracking

MerchandiseAnalysis

CTO

Counts

ReconFile

EDICoordinator

Mesa DataNEW Soundscan

Cash Receipts/Credit

HouseCharges

Layaways

Count CorrectionsN.

CustomerOrder

website

Connect 3

Connect 3Reports

Connect 3PDF Transfe

Data Warehouse

GeneralLedger

AP

EmployeeChange Notice

Scorecard

ResourceScheduling

P09 - P17Cyb.

Millennium

Millennuim 3.0

Banks - ACH and Pos toPay

Cobra

Polling

On-line NewHire Entry

CTS

Plan Administrators(401K, PCS, Life)

D01 Post LoadBilling

Interface

Price ManagementSystem

InterceptEmployee

Purchase

Tex A

ACH

Stock Options

Tx

SS

CapitalProjects

FixedAssets

Repair

Resumix

Op.

Tally Sheet

SKU Rep

V04-SignSystem

P01-EmployeeMasterfile

ABCCo

CellPhones

AAS

AIMSMngr Approval

Batch ForcastingAd Measurement

AIMSReportingAd

Launcher

MktReactions

SpecSource

RebateTransfer

SignSystem

WriterWorkspace

PowerSuite

StoreMonitor

Calendar

Stores & Mrkts

Due Dates

Smart Plus

InsertionsOrders

BudgetAnalysis Tool

Print CostingInvoice App

Reports

BroadcastFilter

Smart PlusLauncher

GeneralMaintenance

Printer PO

PrinterMaintenance

Vendor

Maintenance

Vendor Setup

Spec SourceSKU Tracking

S20-SalesPolling

Prodigy

PSP

In-HomeRepair

WarrantyBillingSystem

Process Servers

(Imaging)

POReceiving

WarehouseManagement

Credit App

OTHER APPS - PC

ACCTS REC APPS - PCINVENTORY CONTROL APPS - PC INVENTORY CONTROL APPS - PC

Journal Entry Tool Kit

-Transfers

Planning

PurchaseOrder

I35 Early WarningSystem

I13- AutoReplenishment

Customer Perceived

In-Stock

Store BudgetReporting

Host to AS400Communication

Bus Systems

Universal Account

Reconcilliation

DepositoryBanks

- ISPTracking

PO

Misc Accounting/Finance Apps - PC/NT

Non urbanisé:•Réutilisabilité difficile,•Interopérabilité difficile,•Forts coûts de MCO,•Durées longues des évolutions

Page 6: ESB pour les nuls

Source: Livre Blanc, « Comprendre et savoir utiliser un ESB dans une SOA », http://blog.xebia.fr

CARTOGRAPHIE D’UN SI: TENDANCE

Page 7: ESB pour les nuls

Etat actuel du SI Hétérogène Redondant

Rigide

Etat cible du SI Homogène Rationnel

Agile

Divergence Besoins

métier

SI

Agilité du SI : Aptitude du SI à absorber les pressions métiers et technologiques sans accroître sa complexité tout en augmentant sa

fiabilité et en diminuant son coût

LES ENJEUX DE LA SOA

Alignement Besoins

métier

SI

Page 8: ESB pour les nuls

Rigide Agile

Un modèle d’Urbanisation Architecture Orientée Services (SOA)

Des outils de développements et d’infrastructures BPM / ESB / MDM

Notre méthodologie préférée Implémentation Bottom up / Gouvernance

Un modèle économique Open Source professionnel

LES ENJEU DE LA SOA….ET DE PETALS LINK

Etat actuel du SI Hétérogène Redondant

Etat cible du SI Homogène Rationnel

Comment ?

Page 9: ESB pour les nuls

LES PRINCIPES DE LA SOA

Enterprise Service Bus

Services

La fin des applications traditionnelles…. …au profit de la trilogie: BPM, Services,

ESB …et du MDM

“MDM needs SOA and SOA needs MDM” Andrew White - Gartner

Page 10: ESB pour les nuls

ENTERPRISE SERVICE BUS

L’interaction entre un consommateur et un fournisseur de service passe par un médiateur : l’Enterprise Service Bus

Enterprise Service Bus Couplage faible Routage des messages Sécurité Gestion des Services Qualité de Service Supervision Valorisation de l’existant

Connecter Orchestrer Transformer

Page 11: ESB pour les nuls

PETALS ESB : LES CAS D’USAGES

Echanges

Échanges

B2B / B2C

Exposition de servicesA2A / B2B / B2C

Intégration

A2A

Intégration

SOA

Page 12: ESB pour les nuls

PETALS – L’ESB DES STANDARDS

Connecteurs (BC)

Composants d’intégration (SE)

Transformation Orchestration BAM

SE

New

Page 13: ESB pour les nuls

TOPOLOGIES D’INTÉGRATION

Modèle « Concentrateur »

Un serveur unique auquel se connectent les applications

Pour exposer des servicesPour consommer des services

Constitue le point sensible de l’architecture (Single Point of Failure)

SE

Application

Serveur Appli 3

Application

Serveur ESB

JMSHTTP

Serveur Appli 2

Application

Serveur Appli 1

Application

FTPHTTP

Page 14: ESB pour les nuls

14

ESB

WS

BusinessServices

BusinessServices

BusinessServices

BusinessServices

JBI Env.

JBI Env.

JBI Env.

Distributed registry

JMS

WS-BPEL XSLT

CentralizedAdministration

andMonitoring

JBI distribué

Environnement JBIclassique

ESB

WS-BPEL

JMS

JMS

JMS

WS JMS

WS

BusinessServices

BusinessServices

Administration Administration

BusinessServices Business

Services

ESB: CLASSIQUE VS DISTRIBUÉ

Petals Link a étendue la spécification JBI, afin de proposer un ESB nativement distribué

Page 15: ESB pour les nuls

Annuaire distribué

RoutagePeer to PeerProtocole Adaptatif

Moteur d’OrchestrationBPEL, SCA, JSR181

Noeud Petals Noeud Petals

Noeud PetalsTransformation XSLT

Connecteur Soap/http

Connecteur JMS

Exposition des applications existantes en COBOL ou C sous forme de services

Portail

Services JEE

Services Web

Connecteur MultiConnect Connecteur Soap/http

Services Web

Front Office

Back Office

PETALS, L’ESB DISTRIBUÉ

Page 16: ESB pour les nuls

INTÉGRATION DE PARTENAIRES

Intégration d’utilisateurs extérieurs au domaine de confiance de l’entreprise

Clients InternetESB partenaires

Localiser la communication avec l’extérieur sur un noeud spécifique

La sécurité est gérée sur ce serveurEn cas d’attaque importante, possibilité de débrancher le noeud du reste de l’ESB

SE

ESB Nœud 1 ESB Nœud 2

ESB partenaire

ESB Nœud 3

Client WebService

Page 17: ESB pour les nuls

Application

ESB D’ENTREPRISE / DE DOMAINE APPLICATIF

Legacy

WorkflowBPEL

J2EE

Application

Legacy

WorkflowBPEL

J2EE

Infrastructure de service transverse au SI

Connecter / Router

Connecter Orchestrer Transformer Orchestrer

ESB ApplicatifESB Applicatif ESB ApplicatifESB Applicatif

Connecter Transformer

Page 18: ESB pour les nuls

PETALS – L’ESB DES STANDARDS

Connecteurs

New

Composants d’intégration

Transformation Orchestration BAM

SE

New

Page 19: ESB pour les nuls

Exemples de projets

Retours d’expériences

Page 20: ESB pour les nuls

CAS D’USAGE: PORTAIL USAGERS

Bus de services PEtALSBus de services PEtALS

PEGASEPEGASE

IODASIODAS Bourses

Scolaires

Bourses Scolaires

RMI

APA

Demandes de transports

Demandes de bourses

Annuaire AAE

Annuaire AAE

Portail

CG33

Page 21: ESB pour les nuls

CAS D’USAGE : EXPOSITION DE SERVICES CHEZ ACOSS (I)

Page 22: ESB pour les nuls

CAS D’USAGE : EXPOSITION DE SERVICES CHEZ ACOSS (II)

Architecture technique ACOSS

8 Data Centers2 points d’accès sur Internet 4 serveurs8 serveurs régionaux 16 serveursConnecte 105 MainFramesGère 30 * 105 = 3150 instances de services exposés vers des partenaires

Routage basé sur l’annuaire des cotisantsCertains services correspondent à l’enchaînement de plusieurs services MainframeTransformations de format

Installé sur HAWAI, socle standardisé ACOSS

Distribution CentOSServeurs Linux bi-processeur dual-core

Les résultats obtenus

5000 utilisateurs (extension en cours jusqu’à 10 000 utilisateurs)Tests effectués à 200 requêtes / seconde sur un serveurTemps d’échange total inférieur à 200 ms sur ptf de test

Page 23: ESB pour les nuls

CAS D’USAGE : PLATE-FORME D’INTÉGRATION CHEZ ORANGE (I)

Cmd.-Livr. Fact./Reco.SAV VOD-prov

ROSE ROSE

SMV1 SMV2CLID,ND,Login/ Passwd,EPID

Réseau

Rev.…

TV

Page 24: ESB pour les nuls

CAS D’USAGE : PLATE-FORME D’INTÉGRATION CHEZ ORANGE (II)

ROSE : ROuting SErvices

Petals ESB en tant que brique de médiation

Haute disponibilité et scalabilitéDe 2 à n PFS (10 plateformes actuellement)

Routage dynamique de WS basé sur le contenu de la table de routage

IdClient->PFS

Split/Agrégation de données en mode asynchroneTransformation de lots d’appels asynchrones en appels synchronesPriorisation des flux

Page 25: ESB pour les nuls

CAS D’USAGE : PLATE-FORME D’ÉCHANGES À LA DGME (I)

AdministrationAdministration

ESB – Petals ESB – PetalsProcessus

de

Routage

Processus

de

Routage

RéceptionRéception

UDDIUDDIDonnéesDonnées

1ValidationValidation

2

Récupération PJs

Récupération PJs3

Interrogation UDDI

Interrogation UDDI4

EnvoiEnvoi5

AcquittementAcquittement6

PartenairePartenaire PartenairePartenaire

ko ko ko

ko

Espace de partage

Espace de partage

Presto

Page 26: ESB pour les nuls

CAS D’USAGE : PLATE-FORME D’ÉCHANGES À LA DGME (II)

ESB – Petals ESB – PetalsProcessus

de

Routage

Processus

de

Routage

RéceptionRéception1

ValidationValidation2

Récupération PJs

Récupération PJs3

Interrogation UDDI

Interrogation UDDI4

EnvoiEnvoi5

AcquittementAcquittement6

ko ko ko

ko

Vue technique

ESB – PetalsESB – Petals

Flux

GF

Flux

GF

21

SA SA SA SA

3

SA SA SA

5

SA SA

6

SA SA

SIRETServiceGuichetNuméro Dossier

Métadonnées

Nom des PJsMétadonnées

4

SASA SA

ConnecteurCoordonnées

MétadonnéesSEKPI

Pub/sub

BDD

Pub/sub

Pub

/su

bPub/sub

Portails : MonServicePublic.fr, …

Page 27: ESB pour les nuls

Méthodologie & Bonnes pratiques

Page 28: ESB pour les nuls

APPROCHE(S)

Source: http://blog.xebia.fr

Page 29: ESB pour les nuls

APPROCHE : TOP/DOWN

Est la voie royale:

Pilotage de la SOA par les besoins métiersMinimise la redondance de services

Mais:

Implique une refonte de tout ou partie du SI,jugée: trop couteuse, trop risqué, trop longue

Adhésion difficile des équipes de développement

Source: http://blog.xebia.fr

Page 30: ESB pour les nuls

APPROCHE : BOTTOM/UP

Séduit par plusieurs aspects:

Proche de la démarche habituelle de développement:« culture projet »

Coût faible du ticket d’entrée

Mais:

Bloque le pilotage par le métier,Risque fort de : perte de l’« agilité », mauvaise granularité,

Contraint d’avoir un coût logiciel cohérent avec le budget du projet

ESB JBI open source prends toute sa dimension

Source: http://blog.xebia.fr

Page 31: ESB pour les nuls

APPROCHE RECOMMANDÉE

Démarche progressive de mise en œuvre et de déploiement

Introduction d’un « couplage lâche » entre les systèmes applicatifsRespect des normes et standards => garantie d’interopérabilité

Mise en œuvre encadrée,

Bonne granularité des services

Répartition des rôles plus efficaceRecentrage des équipes fonctionnelles sur leur « cœur de métier »

Spécialisation et capitalisation sur les problématiques d’intégration

ESB ESB

Dossier d’architecture

ImplémentationLot 1

Cadrage Lot 1

Moa + MoeProcessus de déploiement par lot

Init.

Projet d’ouverture de services(Portail, partenaires,….)

Page 32: ESB pour les nuls

PETALS MASTER - POSITIONNEMENT

Gestion / capitalisation des services

ss ss s s s sssss

s s

Pourquoi: • Connaissance • Partage• Mutualisation• Capitalisation• Réutilisation• Maîtrise / Qualité

Comment: • Catalogue / Référentiel• Surveillance / Alerte• Contrats de services• SLA / QOSL’outil stratégique

de la DSI

Page 33: ESB pour les nuls

ARCHITECTURE RETENUE : DES TECHNIQUES D’EAI

Servicetechniques

BC

BC

SE

SU d’exposition

SU métier

SU métier

Couplage faible :Format technique,Format pivot,Format métier,Transformation

AgilitéServices techniquesServices métiers

Content-based routing

Fo

rma

t m

étie

rF

orm

at

piv

ot

Fo

rma

tte

chn

iqu

e

Page 34: ESB pour les nuls

Dev. Composant

Dev. Service

Spec. Service

RETOUR SUR LES COÛTS DE DÉVELOPPEMENT ?

Composant JBI (BC/SE):

Coût important car c’est le moteur des services,

Services (SU)

Sur SE:Les coûts de spécifications sont plus important que ceux de développement car nécessite :

de bien définir l’interface, de veiller à la granularité, développer paramétrer le composant

Sur BCMoindre coûts de spécifications car dirigées par le service associé sur la ressource applicative.Moindre coût de développement car pas de logique métier.

Page 35: ESB pour les nuls

PetalsLink,

L’éditeur de la solution Petals

Page 36: ESB pour les nuls

PETALS LINK

Editeur de solutions Open Source professionnelles pour l’intéropérabilité et l’infrastructure de la SOA

Petals ESB : le bus de services distribuéPetals Master: la solution de gouvernance des services

Au sein d’une communauté Open Source dédiée au thème du middleware

Effectifs (01/2010): 30 personnesProfils : Architectes Middleware, Consultants Architectures, Développeurs Java/JEE Chiffre d’affaires : 2 M€ en 2009Siège social à Toulouse – Agence à Grenoble – (Paris en 2010)

Petals Link a pour ambition de figurer de manière durable dans le TOP 3 mondial des éditeurs de solutions Open Source pour la SOA

Page 37: ESB pour les nuls

NOS DIFFÉRENTIATEURS (I)

Des investissements R&D constants et importants pour créer des solutions SOA accessibles en Open Source

8 projets R&D en coursA ce jour, notre roadmap est financée jusqu’en 2012

Des solutions basées sur des standardsJava Business Integration

WSDL, Web Services, WS*

BPEL

SCA

CBDI

UDDI

Page 38: ESB pour les nuls

NOS DIFFÉRENTIATEURS (II)

Une solution d’infrastructure distribuée et best of breed

La volonté de Petals Link de s’engager directement sur la mise en œuvre opérationnelle et le maintien en conditions opérationnelles de la suite Petals

Consulting / Formation / Expertise / Support

Page 39: ESB pour les nuls

LE CONSORTIUM OW2

Page 40: ESB pour les nuls

RÉFÉRENCES / INTÉGRATEURS

Ils font confiance à Petals Link :

Almerys

Page 41: ESB pour les nuls

L’OFFRE DE SERVICES PETALS LINK

Compétences

• Développement Java / J2EE / JBI / Petals

• Architectes SI et solutions d’intégration

• Conseil & Intégration / Mise en œuvre SOA

Missions Intégration / Mise en oeuvre

• Intégration / Prototypage / Développement de composants / Spécialisation

Missions Architecture

• Spécifications Architecture – Best practices SOA

• Expertise / Conseil / Cadrage de projets ESB

Souscriptions Petals

• Développement / Production / OEM

Formations SOA / Petals • Introduction à la SOA (1 j)• Mise en œuvre Petals ESB (3 j), Petals Master (2j)• Administration / Exploitation Petals ESB (2 j)• Gouvernance SOA (2j)

Page 42: ESB pour les nuls

PROFITEZ DU MODÈLE OPEN SOURCE

Capacité d’évolution du produit en fonction de vos besoins (Customisation)Evolution de la solution (évolutions génériques):

Par l’Editeur: RoadmapPar les utilisateurs ou Intégrateurs:

Contributions reversées (Cf. principe de la licence LGPL) et intégrées dans une release officielle par l’éditeur

Financement (éventuellement mutualisé) de l’évolution auprès de l’éditeur

En accord entre le Client et nous:Elaboration ou validation de la solution techniquePlanification de la release officielle correspondantePrestation de support assurée en continuitéCofinancement multi-parties

Spécialisation possible de la solution selon le niveau de spécificités Client

Page 43: ESB pour les nuls

Discussion ouverte

Bonnes surprises / Points de difficulté

Page 44: ESB pour les nuls

BONNES SURPRISES / POINTS DE DIFFICULTÉ

Difficultés Bonnes surprises

Qualité de l’outillage de développement

Suite Atlassian: JIRA, Confluence, …

TestLink: pour les spécifications diverses

Intégration continue: Hudson, Sonar

Contributeurs et garder la maîtrise du logiciel.Soumission de patch et propriété intellectuelle ?

Commiter agreement

???

… …

… …

Page 45: ESB pour les nuls

MERCI POUR VOTRE ATTENTION

Petals Link4, rue Amélie

31 000 Toulouse

: + 33 5 62 73 43 80

: + 33 5 62 24 40 90

[email protected]

www.petalslink.com

Pascal [email protected]

Christophe [email protected]