Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
Orientée Service
Dirigeants
Un style architectural basé sur un fournisseur, un
demandeur et une description de service, et supporte
Analystes métier les propriétés de modularité, encapsulation,
découplage, réutilisation et composabilité
Architectes
Développeurs
Un intergiciel offrant des fonctionnalités en terme
d'assemblage, d'orchestration, de surveillance et
de gestion des services
Intégrateurs
• Développements coûteux
• Interconnexions redondantes (point à point)
• Grande complexité
• Maintenance difficile
(c) 2007, Occello Audrey, SAR O2/SAR O3 SOA - 9 -
Vers toujours plus d'abstraction
• Procédures
• Modules
– Encapsulation
• Design pattern
• ...
(c) 2007, Occello Audrey, SAR O2/SAR O3 SOA - 10 -
Limites de la programmation orientée Objet
Couplage fort
Rend difficile la réutilisation
Accroît la complexité des Systèmes OO
Définition usuelle
Une unité regroupant les fonctionnalités concernant
une même idée
Un module logiciel autonome pouvant être installé sur
différentes plates-formes
qui exporte des attributs et des méthodes
automatique)
capable de s’auto-décrire
Intérêt
Être des briques de base configurables pour permettre
la construction d’une application par composition
Configuration du composant
propriétés (attributs publics)
connexions
Interfaces
Interfaces
requises
fournies
Sofa (Fractal)
...
(c) 2007, Occello Audrey, SAR O2/SAR O3 SOA - 17 -
Convergence Composants / Services
• Exposer les interfaces offertes par les composants selon une
technologie au choix; Par exemple
– Services web, avec binding SOAP
– Interface Java avec binding RMI ou JMS
• Principe suivi par la norme SCA : Service Component
Architecture
– Notion de Composite Service
From :
(c) 2007, Occello Audrey, SAR O2/SAR O3 SOA
Demain : Architecture urbanisée
• L’urbanisation informatique définit l'organisation d’un SI à
l’image d’une ville
− découper le SI en modules autonomes (zone, quartier, îlot, bloc)
− localiser les zones d’échange d’informations (routes, ponts, tunels) qui
permettent de découpler les différents modules
Canal d'échange
données processus partenaires
...
Non-
Interruptible
Reply
Invoke
Fault
– Utilisation de standards
– Pas de remise en cause de l’existant lors
d’évolutions technologiques
out
Entités
LoanAgent LoanApproval Account Loan SMSGateway
calculateRisk
checkCredit
createLoan
sendConfirmation
rt
modes de couplage
fo
** sont nécessaires et
e
ag
dépendent du
l
up
niveau dans
Co
l’architecture
l o i bl e
gi ue
e
:
qu
SC ea c e
lo q
e
a u fa
iv te ibl
A u hni
qu
gi
s i u a u fa
ve e
ni lag
vi a ive e
ou n lag
au up
Co
au up
Co
on n
:
Ex
(c) 2007, Occello Audrey, SAR O2/SAR O3 SOA - 29 -
e-store : Couches
AccountController CartController
Default
SignOut SignIn Search Category Items Item Shopping Help Error
Details Cart
Presentation
Layer
Default
SignOut SignIn Search Category Items Item Shopping Help Error
Details Cart
Presentation
Layer
Presentation
Layer
Business
Logic
Layer
Data
Access
Layer
Presentation
Layer
Business
Logic
Layer
Data
Access
Layer
• Faciliter la maintenabilité
Service Repository
consumer 1.b Return contract
Contract
• Standard de l’OASIS
• Norme permettant de décrire des processus en XML
loan.bpel
(c) 2007, Occello Audrey, SAR O2/SAR O3 SOA - 42 -
Quelques détails sur le langage BPEL
• Transparents 52 -> 67 de
http://arcad.essi.fr/riveill.old/enseignement/2007-
08/SAR02/SAR%2002%20bpel.pdf
• Dans cet exemple, hormis le BPEL process, tous les autres éléments applicatifs sont
des services externes au bus.
• Mais, par ex. un élément pourrait être un autre BPEL process ou un composant EJB,
ou autre, déployé DANS le bus, et vu comme un service interne.
(c) 2007, Occello Audrey, SAR O2/SAR O3 SOA
Specification JBI pour ESB (ouvert)
• 4 grandes phases :
– Identification
– Spécification
– Développement
– Gestion
Plan Deprec
Decommis
Certify Service in Service Monitor New ate
sion
Service registry in use service Versio Servic
Service
n e
Service Management
(c) 2007, Occello Audrey, SAR O2/SAR O3 SOA - 51 -
La gouvernance en quelques questions
Plan Deprec
Decommis
Certify Service in Service Monitor New ate
sion
Service registry in use service Versio Servic
Service
n e
Service Management
(c) 2007, Occello Audrey, SAR O2/SAR O3 SOA - 53 -
Rôles associés au cycle de vie des services
t ion t ion
ica Analyste métier ica Architecte
tif c if
n é
I de • Définit les processus métiers et les Sp • Définit les services pour les use
KPI associées cases
• Identification des services métier • Modélise les services
• Optimise les processus via la
simulation
ent ent
m m
p pe Intégrateur ppe Développeur
o
el• Assemble les services l o
v v•e Implémente les services
Dé Dé
tion Gestionnaire
G es
• Publie les services
• Gère le cycle de vie des services
• Contrôle la qualité de service
• Approche Bottom-up :
– On part des briques informatiques, on rassemble les bouts (abstraction)
– Réalisée généralement par la MOE
– Plus adéquat pour réutiliser l’existant non “SOA-isé”
• Approche Top-down :
– On part des interactions métier pour aboutir aux interactions techniques
– Réalisée généralement par la MOA
– Plus adéquat pour démarrer un nouveau projet
(c) 2007, Occello Audrey, SAR O2/SAR O3 SOA - 56 -
Approche “Bottom Up”
Besoins Legacy applications
Diagrammes Décomposition du
d'activités diagramme de classes
Nouvelle application
(c) 2007, Occello Audrey, SAR O2/SAR O3 SOA - 57 -
Approche “Top Down”
Besoins Analyse des domaines métiers
Nouvelle application
(c) 2007, Occello Audrey, SAR O2/SAR O3 SOA - 58 -
Méthode Orchestra - Cartographie
Ex : Produits
bancaires
Pas plus de 12 classes par catégorie
createProduit
Portefeuille
findProduit
createDevis
findClient
createProposition
Devis
suspendDevis findProduit
evaluateRisque findClient
Encaissement
1.1.1 1.1.2 1.2.1 1.2.2 1.2.3 1.2.4 1.3.1 1.3.2 1.3.3 1.3.4
Check Make Locate Modify Create Rental Sign-out Locate Rental Process Return Process Return
Rates Reservation Reservation Reservation Agreement Vehicle from Lot Agreement Information Payment Vehicle to Lot
Functional
Area Customer Promotions Fleet Rental &Reservations
Service Management Management
Rent Vehicle
Vehicle Location
Availability Information
services à exposer
SLT
Services
Services
(exposed)
(exposed)
0.Rent Vehicle
1.1.1 1.1.2 1.2.1 1.2.2 1.2.3 1.2.4 1.3.1 1.3.2 1.3.3 1.3.4
Check Make Locate Modify Create Rental Sign-out Locate Rental Process Return Process Return
Rates Reservation Reservation Reservation Agreement Vehicle from Lot Agreement Information Payment Vehicle to Lot
• SOMA (IBM)
• SODA (De Gamma)
• Praxeme (Unilog Management et Orchestra
Networks)
• + toutes les formations proposées par les
éditeurs tels que Softeam (SEA),
DreamSoft, etc sur leur “savoir-faire”
• ESB
– IBM Websphere ESB
– Celtix hosted on ObjectWeb/IONA Technologies
– OpenESB (java.net)
– Mule (codehaus.org)
– Sonic ESB
– EBM Web Sourcing Distributed Petals Bus (on OW2)
(c) 2007, Occello Audrey, SAR O2/SAR O3 SOA - 72 -
Contrôleurs/moniteurs
• Composants de sécurité
− Oracle Web Service Manager
− Oblix
BPEL WSDL
Developer
WebSphere Service
Repository & Registry
Service Registrar
Governance Performance
Business Analyst Server Administrator Manager Manager
– Découplage Interface/Implémentation,
interopérabilité, transparence des communications, …
• Middlewares à la CORBA
– Découplage fournisseur/comsommateur
• Message Oriented Middleware (MOM)
objets
Langages machine
Langages *
procéduraux **
Assembleur
services
composants services
01011
10100
11000
01011
Depuis… …Vers…
• Orienté processus
• Orienté fonctionnalités
• Conçu pour changer
• Conçu pour durer
• Développement et
• Cycle de développement long
déploiement interactif
Architecture adaptative
Réutilisation du code
Utilisation de standards
Productivité accrue
• Utilisation de standards
MAIS un standard reste un standard tant que tout
le monde l’utilise (cf CORBA)
La course à la spécification fait rage
le W3C et l’OASIS se font la guerre
• Spec des processus
• Spec sur la sécurité
• …
• Composants
– CCM spec
http://www.omg.org/cgi-bin/doc?ptc/2002-08-03
– Fractal spec (GCM spec: proactive.inria.fr)
http://fractal.objectweb.org/
– Service Component Architecture (SCA)
http://www-
128.ibm.com/developerworks/library/specification/ws-sca/
– OpenCCM
http://openccm.objectweb.org/
– Sofa
http://dsrg.mff.cuni.cz/projects/sofa/tools/doc/comp
model.html