39
Khaled BEN DRISS SOA - Architecture Orientée Service : Démystification [email protected] Rabat le jeudi 17 avril 2008

SOA - Architecture Orientée Service: Démystification

Embed Size (px)

DESCRIPTION

SOA - Architecture Orientée Service : Démystification Rabat le jeudi 17 avril 2008 AIENSIAS

Citation preview

Page 1: SOA - Architecture Orientée Service: Démystification

Khaled BEN DRISS

SOA - Architecture Orientée Service : Démystification

[email protected]

Rabat le jeudi 17 avril 2008

Page 2: SOA - Architecture Orientée Service: Démystification

Khaled BEN DRISSConsultant / Formateur

� Ingénieur de l'Ecole Centrale de Lyon (ECL 1991)� Docteur de l'Université Paris 6 ( 1994)

� Ancien Maître Assistant à l'Ecole Polytechnique

[email protected] 22

� Ancien Maître Assistant à l'Ecole Polytechnique de Tunisie

�Fondateur Net-Progress

�OXIA Excecutive Partner

�Architecte de Système d'Information

Page 3: SOA - Architecture Orientée Service: Démystification

• A quels besoins répond le SOA ?

• Quels sont les principes de base du SOA ?

• Quels sont les éléments clé d’une architecture

orientée services ?

Plan

[email protected] 33

Page 4: SOA - Architecture Orientée Service: Démystification

Où en est SOA par rapport à ce Cycle

Cycle duCycle duGartnerGartnerCycle duCycle duGartnerGartner

[email protected] 44

Page 5: SOA - Architecture Orientée Service: Démystification

Le problème c'est les silos• Entreprises découpées en départements fonctionnels y

compris le système d'information (SI)

• Processus métiers des entreprises de + en + multi-

départementaux

[email protected] 55Des Silos sans communicationDes Silos sans communication

Page 6: SOA - Architecture Orientée Service: Démystification

Objectifs des Systèmes d'information

• Accès rapide, intégré et généralisé à l’information pertinente− en interne (Intranet) et en externe (Extranet, Internet)

• Système ouvert réduisant les coûts− capable d'inter-opérer avec les applications existantes

− capable d'inter-opérer avec le monde extérieur (Extranet, Internet)

[email protected] 66

Internet)

• Développement rapide d’applications (RAD)− utilisation de composants distribués

− réduction des coûts de développement

• Administration simplifiée du système− depuis le Web avec des outils d'assistance

Introduction

Page 7: SOA - Architecture Orientée Service: Démystification

SI = un plat de spaghettis

• 70% des budgets IT sont depensés pour mainteir ou créer des connexions entre les systémes

[email protected] 77

• Développements coûteux• Interconnexions redondantes (point à

point)• Grande complexité• Maintenance difficile

Page 8: SOA - Architecture Orientée Service: Démystification

•Entreprises découpées en départements fonctionnels y compris le

système d'information (SI)

•Processus métiers des entreprises de + en + multi-départementaux

Problématique de l’intégration intra-entreprise

Les entreprises changent en

[email protected] 88

�Coûts considérables dans la gestion des flux entre départements

et dans l’intégration de leurs SI

changent en permanence : le SI ne doivent pas être un frein à ces changements

Page 9: SOA - Architecture Orientée Service: Démystification

Compagnie aérienne(plateforme technique1)

Agence de voyages(plateforme technique2)

Application web

ClientReservation

Problématique de l’intégration inter-entreprises

[email protected] 99

Location de voitures(plateforme technique3)

Chaîne hotelière(plateforme technique4)

Assurance voyage(plateforme technique5)

Reservation

Reservation, Tarifs Tarifs, promotion

D’après : J-M Chauvet

Page 10: SOA - Architecture Orientée Service: Démystification

ERP: les acteurs majeurs migrent vers SOA

Vendor

IBM

WebSphere

“J2EE”

Microsoft

“.NET”

Oracle

Fusion

J2EE

SAP

“NetWeaver”

J2EE

SAP

Oracle

The Sage Group

MBS

[email protected] 1010

MBS

Lawson-Intentia

SSA Global

Infor

Unit 4 Agresso

IBS

Epicor

IFS

Exact

(open source: JBoss)

2006

Page 11: SOA - Architecture Orientée Service: Démystification

SOA, différents points de vue

ROI, réactivité, souplesse

BusinessCouches, contrat,

granularité

virtualization des Services, visibilité,

sécurité, configuration, interopéarbilité

[email protected] 1111

IT Ingénieur Système

Architecte

Développeur

Classes, objets, webservice, WSDL,

UDDI, BPEL,Java, C#

Page 12: SOA - Architecture Orientée Service: Démystification

Quels sont les principes de base du SOA ?

[email protected] 1212

Page 13: SOA - Architecture Orientée Service: Démystification

SOA = Service Oriented Architecure

• SOA est une évolution des plate-forme passées, • tout en préservant les caractéristiques réussies des

architectures traditionnelles, • tout en y ajoutant quelques principes nouveaux.

• SOA est un paradigme abstrait, base de

[email protected] 1313

• SOA est un paradigme abstrait, base de l’architecture distribuée sans aucune référence à une implémentation technique (souvent implémentés sous forme de Web Services, mais pas obligatoirement)

Page 14: SOA - Architecture Orientée Service: Démystification

Notre définition de la SOA

• La SOA c’est structurer− une application,

− un bloc applicatif,

− voire le SI,

�en services contractualisés

[email protected] 1414

• Afin d’adresser les enjeux de− Politique d’interopérabilité

• mise en œuvre de services globaux entre blocs applicatifs

− Politique de réutilisation• recherche de la réutilisation à l’intérieur d’un bloc applicatif

− Assurer la pérennité des applications• "Faire du nouveau avec de l'ancien"

Page 15: SOA - Architecture Orientée Service: Démystification

[email protected] 1515

Dans SOA il y a Service ?

Page 16: SOA - Architecture Orientée Service: Démystification

Dans SOA il y a Service ?

• SOA est une histoire de conception pas de technologie :

penser Architecture et Service.

• Avant tout : un service doit être "abstrait" : il n’est pas lié

à une implémentation.

[email protected] 1616

Une vue métier

• Exemple− Service d'enregistrement d'un abonnée GSM

− Service de réservation d'un train

− Service de diffusion d'information

− Service de demande de l'état d'une commande

− Service de demande d'une facture ….

Page 17: SOA - Architecture Orientée Service: Démystification

•Un Service expose un Contrat

Conditions Générales de VenteRèglement Intérieur

Vos droits/Vos devoirsin

out

•Un Service est Autonome

4 propriétés du service à retenir

[email protected] 1717

•Les services communiquent par

messages

out

•Les Frontières entre

services sont Explicites

Page 18: SOA - Architecture Orientée Service: Démystification

4 propriétés : conséquences• Le consommateur (client) est découplé de

l’architecture technique du service qu’il invoque

• Le consommateur et le fournisseur n'ont pas

forcément les mêmes technologies

• Importance de l'Architecture

[email protected] 1818

• Importance de l'Architecture

Courtier de

Services

Consommateurs

De Service

Fournisseurs

de Services

Page 19: SOA - Architecture Orientée Service: Démystification

Cycle de vie d’un service

• 4 grandes phases :− Identification

− Spécification

− Développement

− Gestion

[email protected] 1919

− Gestion

• 1 aspect transversal : la Gouvernance− Les architectures orientées service impliquent

une vision globale

− La gouvernance permet de casser les silos de l’entreprise

Page 20: SOA - Architecture Orientée Service: Démystification

Et les Web Services dans tout cela?

[email protected] 2020

Et les Web Services dans tout cela?

Page 21: SOA - Architecture Orientée Service: Démystification

SOA n'est pas Web Services

• SOA est un paradigme abstrait, base de l’architecture distribuée sans aucune référence à une implémentation technique

• L'accent est mis sur

[email protected] 2121

• L'accent est mis sur • Les standards• L'interopéarbilité• Le couplage faible

• Les Web Services offrent une implémentation possible mais pas nécessaire

Page 22: SOA - Architecture Orientée Service: Démystification

Qu'est ce qu'un Web Service ?

• Définition [W3C]− Un Web service est un système logiciel identifié par une URI, dont

les interfaces publiques et les liens sont définis et décrits en XML.

− Sa définition peut être découverte par d'autres systèmes logiciels.

− Ces systèmes peuvent interagir avec le service Web d'une manière prescrite par sa définition, en utilisant des messages XML portés par les protocoles Internet.

[email protected] 2222

• Services Web au service du SOA

− Une technologie "enabling"

• facilite l'interopérabilité et la connaissance

− Capacité d'exposer des programmes existants

• Exposer des services écrits en Cobol!!!

Page 23: SOA - Architecture Orientée Service: Démystification

Services Web ~ quatre spécifications XML• SOAP : pour le transport des données et

l’infrastructure de communication

• WSDL : pour la description des services offerts

• UDDI : annuaire pour le référencement des services par les fournisseurs et leur découverte par les utilisateurs.

• BPEL : décrit le processus métier

[email protected] 2323

• BPEL : décrit le processus métier

• BPMN : modélisation des processus

Page 24: SOA - Architecture Orientée Service: Démystification

SOAP : Simple Object Access Protocol

Procuration TranslateurMessages

SOAPAppel

Port de connexion (URL)

Pare-feu Pare-feu

•Intégration de XML au-dessus de HTTP (le plus souvent):•Pour accéder services, objets et serveurs •Indépendant de toute plate-forme

[email protected] 2424

Application Cliente

Parser XML

Procuration

d'interface

Translateur

SOAP

Parser XML Serveur

d'application

SOAPAppel

Réponse

HTTP

RPC

local

XML-RPC et SOAP

Page 25: SOA - Architecture Orientée Service: Démystification

WSDL (Web Service Description Language)- Proposition jointe IBM, Microsoft, Ariba - septembre 2000.

- Permet de décrire le service Web, en précisant :

- Les méthodes qu'il rend disponible;

- Les paramètres d'entrée et de sortie;

- et comment y accéder.

- Grammaire XML (schéma XML ) : Modulaire

[email protected] 2525

- Offre une interface qui est le point d’entrée du service.

Page 26: SOA - Architecture Orientée Service: Démystification

UDDI : Annuaire des services

•Universal Description,

Discovery and Integration

•Annuaire des services− décrit par un document

− WSDL, autre …

Annuaire UDDI

Annuaire UDDI

[email protected] 2626

− WSDL, autre …

•Accessible en SOAP

•Fonctions−Enregistrer votre société

−Enregistrer des services

−Enregistrer des opérations

−Découvrir des services

−…

Gérant de requêtes

Enveloppe+

Document

Programme

Service

Page 27: SOA - Architecture Orientée Service: Démystification

Le langage BPEL : Business Process Execution Language

•Standard de l’OASIS : décrire

des processus en XML

•Propose les fonctions basiques:

−sequence, flow, loop, switch…

•Identification des Instances de

[email protected] 2727

•Identification des Instances de

Process

•Gestion des transactions

longue durée (scope,

compensation)

•Gestion des erreurs

XML-RPC et SOAP

Page 28: SOA - Architecture Orientée Service: Démystification

BPMN 1.0 : Mai, 2004• BPMN (Business Process Modeling Notation) est une

initiative d'un un consortium d'entreprises nommé BPMI(Business Process Management Initiative) visant à définir une notation graphique commune permettant de modéliser les processus métier.

• BPMN peut être vu comme une "notation UML" appliquée à la gestion des processus métier.

• BPMN supporte l'export vers le langage BPEL (processus

[email protected] 2828

• BPMN supporte l'export vers le langage BPEL (processus Exécutable)

Page 29: SOA - Architecture Orientée Service: Démystification

Ne plus penser en terme d'application monolitique

Une application basée sur SOA doit exposer d'une façon standard des services métiers et doit être capable de consommer d'une façon standards d'autres services métiers

[email protected] 2929

Page 30: SOA - Architecture Orientée Service: Démystification

D'où un besoin d'infrastructure !

Portail

[email protected] 3030ESB (Enterprise Service Bus)

Page 31: SOA - Architecture Orientée Service: Démystification

Services de transport•Synchrone / asynchrone

Services d’événement•Publier et abonner

Services de médiation•Acheminement •Transformation•Règles

L'ESB (bus de service d’entreprise) est un composant d’infrastructure central d’une SOA

[email protected] 3131

•Synchrone / asynchrone•Couplage lâche/couplage étroit

Axé sur les normes•HTTP/HTTPS•JMS, JAX-RPC, SOAP•Sécurité Web, politique Web, adressage Web

Page 32: SOA - Architecture Orientée Service: Démystification

Principes fondamentaux de l’architecture SOAIl n’existe pas une recette pour garantir le succès de la mise en place d’une SOA mais des principes à respecter :

− Discussion entre métier et IT

− Utilisation des use case métier

− Utilisation de standards

[email protected] 3232

− Utilisation de standards

− Pas de remise en cause de l’existant lors d’évolutions technologiques

− Découplage entre fournisseur et consommateur de services

− Indépendance des ressources vis à vis de ceux qui les utilisent

•Quelques méthodologies encours : Praxeme, SOMA

Page 33: SOA - Architecture Orientée Service: Démystification

Synthèse

• Orienté fonctionnalités

• Conçu pour durer

• Cycle de développement

Depuis…Depuis… …Vers……Vers…

• Orienté processus

• Conçu pour changer

• Développement et

[email protected] 3333

• Cycle de développement

long

• Développement et

déploiement interactif

• Silos applicatifs

• Couplage fort

• Orienté Objet

• Orchestration de Services

• Couplage faible

• Orienté message

Page 34: SOA - Architecture Orientée Service: Démystification

y a-t-il une vie après le SOA ?

[email protected] 3434

y a-t-il une vie après le SOA ?

Page 35: SOA - Architecture Orientée Service: Démystification

L'architecture SOA génère un besoin de gestion des événements !

[email protected] 3535

D’où l'émergence d'une nouvelle tendance l'Event Driven

Architecture (EDA)

Page 36: SOA - Architecture Orientée Service: Démystification

Le future de SOA :

EDA

Découplé

Mixer EDA + SOA +BPM

[email protected] 3636

Asynchronisme

SOA

Fortementcouplé

Cou

plag

e

AsynchroneSynchrone

Page 37: SOA - Architecture Orientée Service: Démystification

Un dernier conseil :

SOA : Simple, Opérationnel et Accessible !

[email protected] 3737

Optimiser les performances de votre S.I. en fonction de vos besoins métiers

C’est l’activité qui pilote la technologie et non l’inverse

Page 38: SOA - Architecture Orientée Service: Démystification

Khaled BEN DRISS

Executive PartnerOXIA is ISO 9001 V2000 certified company – AFAQ QUAL/2005/25140

GSM : (216) 98 33 46 17

Merci

[email protected] 3838

GSM : (216) 98 33 46 17

email : [email protected]

Page 39: SOA - Architecture Orientée Service: Démystification

Sources

• Présentations IBM sur SOA

• Forrester

• Gartner

[email protected] 3939

• Gartner

• Weblogic

• Autres ressources sur le web