SlideShare ist ein Scribd-Unternehmen logo
1 von 20
Institut National des Sciences Appliquées et de Technologie

Architectures Orientées Services
Chapitre 1 – Introduction aux Architectures Orientées
Services
Dr. Lilia SFAXI
LA3 SIL - 2013-2014
1

Plan du Chapitre



Besoins de la SOA



Notion de Service



Architecture Orientée Services : Définition et Principes
2

Les Besoins de la
SOA

CHAPITRE 1 :
INTRODUCTION AUX TECHNOLOGIES
WEB &
ARCHITECTURES ORIENTÉES
SERVICES
3

Besoins de l’Architecture Orientée Services


Problématique d’intégration en entreprise
o

o



Les entreprises doivent s’adapter et être réactives aux variations des marchés  Impact
sur les SI des entreprises
C’est l’activité qui doit piloter la technologie et non l’inverse

Prise en compte de l’évolution des besoins fonctionnels à la conception des
application
o

La technologie doit apporter la flexibilité



Éviter le décalage entre besoins métiers et leur réalisation



Besoin de réutilisation des fonctionnalités (non fournie par le modèle MVC classique)



Processus métiers de plus en plus inter-départementaux  coût considérable dans
la gestion de flux entre départements
4

Évolution des Architectures

Hier : Architecture en Spaghetti

Demain : Architecture Urbanisée



Organisation du SI à l’image d’une ville



Développement coûteux



Interconnexions redondantes



Le découper en modules autonomes



Grande complexité





Réutilisation et maintenance difficile

Localiser les zones d’échange
d’informations
5

De plus en plus d’abstraction


Procédures et fonctions
o



Modules
o



groupes de fonctions, de méthodes et de traitement, sous forme de
bibliothèques

Objet
o



sous-programmes réalisant une action

brique de base logicielle, représentant une entité du monde
physique, encapsulant un état et des traitements

Composant
o
o

séparation des préoccupations techniques et fonctionnelles

o



élément logiciel contenant du code compilé (donc opaque)
définit une interface pour communiquer avec les autres composants, et une
interface de configuration

Service
6

Notion de
Service

CHAPITRE 1 :
INTRODUCTION AUX TECHNOLOGIES
WEB &
ARCHITECTURES ORIENTÉES
SERVICES
7

Service



Périmètre fonctionnel qu’on souhaite exposer à un certain type de
consommateurs



Ensemble de fonctionnalités qui ont un sens



Expose un petit nombre d’opérations offrant un traitement de bout en
bout



Est implémenté par un fournisseur et utilisé par un consommateur
8

Caractéristiques d’un Service (1/2)


Large Granularité (coarse-grained)
o



Interface
o



Les opérations proposées par un service encapsulent plusieurs fonctions et
opèrent sur un périmètre de données large au contraire de la notion de
composant technique.

Un service peut implémenter plusieurs interfaces, et aussi plusieurs services
peuvent implémenter une interface commune.

Localisable
o

Avant d’appeler (bind, invoke) un service, il faudra le trouver (find).
9

Caractéristiques d’un Service (2/2)


Instance unique
o
o



À la différence des composants qui sont instanciés à la demande et peuvent
avoir plusieurs instances en même temps, un service est unique.
Un service correspond au design pattern Singleton.

Couplage faible (loosely-coupled)
o
o

Ces standards assurent le découplage, c-à-d la réduction des dépendances.

o



Les services sont connectés aux clients et autres services via des standards
Ces standards sont en général des documents XML comme dans les web
services

Synchrone ou Asynchrone
10

Couplage Fort vs. Couplage Faible


Couplage Fort
Agent

Accord de Prêt

Compte

Prêt

SMS Gateway

calculerRisque
vérifierSolde
créerPrêt
envoyerConfirmation

o

« Agent » est lié à « Accord de Prêt », qui est lié à « Compte »

o

« Prêt » est lié à « SMS Gateway »

Objets
11

Couplage Fort vs. Couplage Faible


Processus
Métier

Couplage Faible

Processus de Prêt

Vérification de Solde

Calcul de Risque

Création de Prêt

Notification par SMS

o

Chaque entité (service) a un fonctionnement indépendant des autres

o

Le processus métier « Processus de Prêt » permet d’orchestrer les services  Couplage
lâche ou faible

Services
12

Types de Services


Les services de présentations ou de référencement
o



Les processus métiers
o



composés de tâches décrites et faisant appel éventuellement à d’autres
services.

Les services de gestion et d’accès aux bases de données
o



vers les informations affichées et les formulaires de saisies de données.

permettent la gestion des données partagées

Les services d’intégration
o

en charge de la messagerie ou l’échange de données tant à l’intérieur que
vers l’extérieur comme la gestion des courriers électroniques
13

Architecture
Orientée Services :
Définition et
Principes

CHAPITRE 1 :
INTRODUCTION AUX TECHNOLOGIES
WEB &
ARCHITECTURES ORIENTÉES
SERVICES
14

Architecture Orientée Services


SOA (Service Oriented Architecture)



Style
partir de services métiers communs
mutualisés pour un ensemble de lignes métiers ou d’applications.



Permet d’intégrer et de manipuler les différentes briques et composants
applicatifs d’un système informatique et de gérer les liens qu’ils
entretiennent



Objectifs
o

Décomposer une fonctionnalités en un ensemble de fonctions basiques
(services) fournies par des composants

o

Décrire finement le schéma d’interaction entre ces services
15

Du point de vue des acteurs…
Des services que l’entreprise
souhaite exposer à ses clients et
partenaires, ou à d’autres
parties de l’organisation
Dirigeant

Une architecture basée sur un
fournisseur, un consommateur et
une description de service

Architecte

Un style de programmation avec
ses
standards, paradigmes, technol
ogies et outils associés

Développeur

Un intergiciel offrant des
fonctionnalités en terme
d’assemblage, d’orchestration,
de surveillance et de gestion des
services

Intégrateur
16

Principes de la SOA (1/2)


Diviser pour régner
o



Alignement métier
o



Substituer la découpe strictement applicative par une structuration en composants plus
réduits
faire évoluer.

Construire et organiser le système
ses constituants.

partir des réalités métiers, qui doivent se retrouver dans

Neutralité technologique
o

Assurer une indépendance totale entre les interfaces et les implémentations.

o

L’élément qui utilise un service ne doit pas être contraint ni par la technologie
).
17

Principes de la SOA (2/2)


Mutualisation
o
o



Favoriser la réutilisation de services métiers par plusieurs lignes métiers ou applications.
Permettre la construction de services de haut niveau par combinaison de services existants.

Automatisation des processus métier
o



Isoler la logique des processus métiers sur des composants dédiés qui prennent en charge
les enchainements de tâches et les échanges de flux d’information.

Echanges orientés Document
o

Les informations échangées par les services possèdent une structure propre, guidée par les
besoins métiers.

o

On privilégie la transmission de contenus complets et utilisables au profit d’accès direct aux
structures de type objet ou relationnel.
18

Sources


Cours





M. Mecella : A very short Introduction to Web Services, Université de Rome
A. Occello : Module Architecture SOA et Workflow, Polytechnique de Nice

Livre Blanc


Gilbert Raymond, SOA : Architecture Logique - Principes, structures et bonnes
pratiques, Softeam, Paris
19

Références


[Casati01] F. Casati, M.C. Shan, D. Georgakopoulos (eds.): Special Issue on
e-Services. VLDB Journal, 10(1), 2001, Based on the 1st International
Workshop on Technologies for e-Services (VLDB-TES 2001)



[Mecella01] M. Mecella, B. Pernici: Designing Wrapper Components for eServices in Integrating Heterogeneous Systems. VLDB
Journal, 10(1), 2001, Based on the 1st International Workshop on
Technologies for e-Services (VLDB-TES 2001)



[W3C04] W3C Working Group Note, Web Services Architecture
Requirements, 11 Feb. 2004

Weitere ähnliche Inhalte

Was ist angesagt?

eServices-Tp2: bpel
eServices-Tp2: bpeleServices-Tp2: bpel
eServices-Tp2: bpelLilia Sfaxi
 
Tp2 - WS avec JAXRS
Tp2 - WS avec JAXRSTp2 - WS avec JAXRS
Tp2 - WS avec JAXRSLilia Sfaxi
 
Tp1 - WS avec JAXWS
Tp1 - WS avec JAXWSTp1 - WS avec JAXWS
Tp1 - WS avec JAXWSLilia Sfaxi
 
Tp3 - Application SOA avec BPEL
Tp3 - Application SOA avec BPELTp3 - Application SOA avec BPEL
Tp3 - Application SOA avec BPELLilia Sfaxi
 
eServices-Tp3: esb
eServices-Tp3: esbeServices-Tp3: esb
eServices-Tp3: esbLilia Sfaxi
 
Architecture orientée service (SOA)
Architecture orientée service (SOA)Architecture orientée service (SOA)
Architecture orientée service (SOA)Klee Group
 
Architecture des Systèmes Logiciels
Architecture des Systèmes LogicielsArchitecture des Systèmes Logiciels
Architecture des Systèmes LogicielsGhazouani Mahdi
 
Introduction aux web services
Introduction aux web servicesIntroduction aux web services
Introduction aux web servicesmohammed addoumi
 
Architectures n-tiers
Architectures n-tiersArchitectures n-tiers
Architectures n-tiersHeithem Abbes
 
SOA - Architecture Orientée Service : Démystification
SOA - Architecture Orientée Service : DémystificationSOA - Architecture Orientée Service : Démystification
SOA - Architecture Orientée Service : DémystificationKhaled Ben Driss
 
Chp1- Introduction aux eServices
Chp1- Introduction aux eServicesChp1- Introduction aux eServices
Chp1- Introduction aux eServicesLilia Sfaxi
 
eServices-Chp3: Composition de Services
eServices-Chp3: Composition de ServiceseServices-Chp3: Composition de Services
eServices-Chp3: Composition de ServicesLilia Sfaxi
 
comment realiser un Service Web
comment realiser un Service Web comment realiser un Service Web
comment realiser un Service Web Nazih Heni
 

Was ist angesagt? (20)

eServices-Tp2: bpel
eServices-Tp2: bpeleServices-Tp2: bpel
eServices-Tp2: bpel
 
Tp2 - WS avec JAXRS
Tp2 - WS avec JAXRSTp2 - WS avec JAXRS
Tp2 - WS avec JAXRS
 
Tp1 - WS avec JAXWS
Tp1 - WS avec JAXWSTp1 - WS avec JAXWS
Tp1 - WS avec JAXWS
 
Tp3 - Application SOA avec BPEL
Tp3 - Application SOA avec BPELTp3 - Application SOA avec BPEL
Tp3 - Application SOA avec BPEL
 
eServices-Tp3: esb
eServices-Tp3: esbeServices-Tp3: esb
eServices-Tp3: esb
 
Architecture orientée service (SOA)
Architecture orientée service (SOA)Architecture orientée service (SOA)
Architecture orientée service (SOA)
 
Chp3 - ESB
Chp3 - ESBChp3 - ESB
Chp3 - ESB
 
Architecture des Systèmes Logiciels
Architecture des Systèmes LogicielsArchitecture des Systèmes Logiciels
Architecture des Systèmes Logiciels
 
Introduction aux web services
Introduction aux web servicesIntroduction aux web services
Introduction aux web services
 
Architectures n-tiers
Architectures n-tiersArchitectures n-tiers
Architectures n-tiers
 
Soa
SoaSoa
Soa
 
Soa & services web
Soa & services webSoa & services web
Soa & services web
 
SOA - Architecture Orientée Service : Démystification
SOA - Architecture Orientée Service : DémystificationSOA - Architecture Orientée Service : Démystification
SOA - Architecture Orientée Service : Démystification
 
Support cours angular
Support cours angularSupport cours angular
Support cours angular
 
Support de cours entrepise java beans ejb m.youssfi
Support de cours entrepise java beans ejb m.youssfiSupport de cours entrepise java beans ejb m.youssfi
Support de cours entrepise java beans ejb m.youssfi
 
Chp1- Introduction aux eServices
Chp1- Introduction aux eServicesChp1- Introduction aux eServices
Chp1- Introduction aux eServices
 
eServices-Chp3: Composition de Services
eServices-Chp3: Composition de ServiceseServices-Chp3: Composition de Services
eServices-Chp3: Composition de Services
 
Sécurité des Applications Web avec Json Web Token (JWT)
Sécurité des Applications Web avec Json Web Token (JWT)Sécurité des Applications Web avec Json Web Token (JWT)
Sécurité des Applications Web avec Json Web Token (JWT)
 
comment realiser un Service Web
comment realiser un Service Web comment realiser un Service Web
comment realiser un Service Web
 
Support de cours angular
Support de cours angularSupport de cours angular
Support de cours angular
 

Andere mochten auch

eServices-Chp1: Introduction
eServices-Chp1: IntroductioneServices-Chp1: Introduction
eServices-Chp1: IntroductionLilia Sfaxi
 
eServices-Chp6: WOA
eServices-Chp6: WOAeServices-Chp6: WOA
eServices-Chp6: WOALilia Sfaxi
 
eServices-Chp5: Microservices et API Management
eServices-Chp5: Microservices et API ManagementeServices-Chp5: Microservices et API Management
eServices-Chp5: Microservices et API ManagementLilia Sfaxi
 
eServices-Tp5: api management
eServices-Tp5: api managementeServices-Tp5: api management
eServices-Tp5: api managementLilia Sfaxi
 
eServices-Tp4: esb++
eServices-Tp4: esb++eServices-Tp4: esb++
eServices-Tp4: esb++Lilia Sfaxi
 
eServices-Chp4: ESB
eServices-Chp4: ESBeServices-Chp4: ESB
eServices-Chp4: ESBLilia Sfaxi
 
Software Engineering - chp8- deployment
Software Engineering - chp8- deploymentSoftware Engineering - chp8- deployment
Software Engineering - chp8- deploymentLilia Sfaxi
 
BigData_Chp3: Data Processing
BigData_Chp3: Data ProcessingBigData_Chp3: Data Processing
BigData_Chp3: Data ProcessingLilia Sfaxi
 
Chp5 - Sécurité des Services
Chp5 - Sécurité des ServicesChp5 - Sécurité des Services
Chp5 - Sécurité des ServicesLilia Sfaxi
 
Chp3 - Fonctionnement des ERP
Chp3 - Fonctionnement des ERPChp3 - Fonctionnement des ERP
Chp3 - Fonctionnement des ERPLilia Sfaxi
 
Chp1 - Introduction à l'Informatique Décisionnelle
Chp1 - Introduction à l'Informatique DécisionnelleChp1 - Introduction à l'Informatique Décisionnelle
Chp1 - Introduction à l'Informatique DécisionnelleLilia Sfaxi
 
Architectures 3-tiers (Web)
Architectures 3-tiers (Web)Architectures 3-tiers (Web)
Architectures 3-tiers (Web)Heithem Abbes
 
Présentation de Thèse
Présentation de ThèsePrésentation de Thèse
Présentation de ThèseLilia Sfaxi
 
SOA facile en 10 pratiques avec EasySOA - Alpes JUG
SOA facile en 10 pratiques avec EasySOA - Alpes JUGSOA facile en 10 pratiques avec EasySOA - Alpes JUG
SOA facile en 10 pratiques avec EasySOA - Alpes JUGMarc Dutoo
 
Trouver son système informatique idéal !
Trouver son système informatique idéal !Trouver son système informatique idéal !
Trouver son système informatique idéal !mireillelimousiirabor
 
La SOA au sein des systèmes d'information
La SOA au sein des systèmes d'informationLa SOA au sein des systèmes d'information
La SOA au sein des systèmes d'informationFourat Zouari
 
Drools @ IntelliFest 2012
Drools @ IntelliFest 2012Drools @ IntelliFest 2012
Drools @ IntelliFest 2012Mark Proctor
 

Andere mochten auch (19)

eServices-Chp1: Introduction
eServices-Chp1: IntroductioneServices-Chp1: Introduction
eServices-Chp1: Introduction
 
eServices-Chp6: WOA
eServices-Chp6: WOAeServices-Chp6: WOA
eServices-Chp6: WOA
 
eServices-Chp5: Microservices et API Management
eServices-Chp5: Microservices et API ManagementeServices-Chp5: Microservices et API Management
eServices-Chp5: Microservices et API Management
 
eServices-Tp5: api management
eServices-Tp5: api managementeServices-Tp5: api management
eServices-Tp5: api management
 
eServices-Tp4: esb++
eServices-Tp4: esb++eServices-Tp4: esb++
eServices-Tp4: esb++
 
eServices-Chp4: ESB
eServices-Chp4: ESBeServices-Chp4: ESB
eServices-Chp4: ESB
 
Software Engineering - chp8- deployment
Software Engineering - chp8- deploymentSoftware Engineering - chp8- deployment
Software Engineering - chp8- deployment
 
BigData_Chp3: Data Processing
BigData_Chp3: Data ProcessingBigData_Chp3: Data Processing
BigData_Chp3: Data Processing
 
Chp5 - Sécurité des Services
Chp5 - Sécurité des ServicesChp5 - Sécurité des Services
Chp5 - Sécurité des Services
 
Chp3 - Fonctionnement des ERP
Chp3 - Fonctionnement des ERPChp3 - Fonctionnement des ERP
Chp3 - Fonctionnement des ERP
 
Chp1 - Introduction à l'Informatique Décisionnelle
Chp1 - Introduction à l'Informatique DécisionnelleChp1 - Introduction à l'Informatique Décisionnelle
Chp1 - Introduction à l'Informatique Décisionnelle
 
Architectures 3-tiers (Web)
Architectures 3-tiers (Web)Architectures 3-tiers (Web)
Architectures 3-tiers (Web)
 
Présentation de Thèse
Présentation de ThèsePrésentation de Thèse
Présentation de Thèse
 
SOA facile en 10 pratiques avec EasySOA - Alpes JUG
SOA facile en 10 pratiques avec EasySOA - Alpes JUGSOA facile en 10 pratiques avec EasySOA - Alpes JUG
SOA facile en 10 pratiques avec EasySOA - Alpes JUG
 
Trouver son système informatique idéal !
Trouver son système informatique idéal !Trouver son système informatique idéal !
Trouver son système informatique idéal !
 
La SOA au sein des systèmes d'information
La SOA au sein des systèmes d'informationLa SOA au sein des systèmes d'information
La SOA au sein des systèmes d'information
 
Drools @ IntelliFest 2012
Drools @ IntelliFest 2012Drools @ IntelliFest 2012
Drools @ IntelliFest 2012
 
Debug like a doctor
Debug like a doctorDebug like a doctor
Debug like a doctor
 
Initiation à l'intégration avec biztalk server
Initiation à l'intégration avec biztalk serverInitiation à l'intégration avec biztalk server
Initiation à l'intégration avec biztalk server
 

Ähnlich wie Chp1- Introduction aux Technologies Web et SOA

Introduction à mule esb
Introduction à mule esbIntroduction à mule esb
Introduction à mule esbMehdi EL KRARI
 
Présentation solution web orientée service SOA pour la gestion du processus d...
Présentation solution web orientée service SOA pour la gestion du processus d...Présentation solution web orientée service SOA pour la gestion du processus d...
Présentation solution web orientée service SOA pour la gestion du processus d...Hicham DJELLOULI
 
1 - chapitre 1 chapitre 2 SOA.pdf
1 - chapitre 1 chapitre 2 SOA.pdf1 - chapitre 1 chapitre 2 SOA.pdf
1 - chapitre 1 chapitre 2 SOA.pdfhaythem bouzouraa
 
cours_SOA_AO+FB_en_informatique_SOA_.pdf
cours_SOA_AO+FB_en_informatique_SOA_.pdfcours_SOA_AO+FB_en_informatique_SOA_.pdf
cours_SOA_AO+FB_en_informatique_SOA_.pdfwaliakeabraham
 
Introduction a la SOA
Introduction a la SOAIntroduction a la SOA
Introduction a la SOATugdual Grall
 
Services web soap-el-habib-nfaoui
Services web soap-el-habib-nfaouiServices web soap-el-habib-nfaoui
Services web soap-el-habib-nfaouiEl Habib NFAOUI
 
Cas d'usages d'un ESB - Petals Link - 2011
Cas d'usages d'un ESB - Petals Link - 2011Cas d'usages d'un ESB - Petals Link - 2011
Cas d'usages d'un ESB - Petals Link - 2011Petals Link
 
Ouvrir son SI avec la trilogie Portail, SOA, BPM (Solutions Linux 2010 - cycl...
Ouvrir son SI avec la trilogie Portail, SOA, BPM (Solutions Linux 2010 - cycl...Ouvrir son SI avec la trilogie Portail, SOA, BPM (Solutions Linux 2010 - cycl...
Ouvrir son SI avec la trilogie Portail, SOA, BPM (Solutions Linux 2010 - cycl...Marc Dutoo
 
PZ_Microservices101_20150210
PZ_Microservices101_20150210PZ_Microservices101_20150210
PZ_Microservices101_20150210Gregory Boissinot
 
Design applicatif avec symfony2
Design applicatif avec symfony2Design applicatif avec symfony2
Design applicatif avec symfony2RomainKuzniak
 
Introduction au Domain Driven Design
Introduction au Domain Driven DesignIntroduction au Domain Driven Design
Introduction au Domain Driven DesignDNG Consulting
 
Cysoa formation-soa-architecture-orientee-services-synthese (1)
Cysoa formation-soa-architecture-orientee-services-synthese (1)Cysoa formation-soa-architecture-orientee-services-synthese (1)
Cysoa formation-soa-architecture-orientee-services-synthese (1)CERTyou Formation
 
Cysoa formation-soa-architecture-orientee-services-synthese
Cysoa formation-soa-architecture-orientee-services-syntheseCysoa formation-soa-architecture-orientee-services-synthese
Cysoa formation-soa-architecture-orientee-services-syntheseCERTyou Formation
 
Data Quality et SOA
Data Quality et SOAData Quality et SOA
Data Quality et SOAUniserv
 
Chap1 p1-introduction
Chap1 p1-introductionChap1 p1-introduction
Chap1 p1-introductionMoez Re
 
Les web services
Les web servicesLes web services
Les web servicesdihiaselma
 
Conference MicroServices101 - 1ere partie
Conference MicroServices101 - 1ere partieConference MicroServices101 - 1ere partie
Conference MicroServices101 - 1ere partieZenika
 
Marzouk architecture encouches-jee-mvc
Marzouk architecture encouches-jee-mvcMarzouk architecture encouches-jee-mvc
Marzouk architecture encouches-jee-mvcabderrahim marzouk
 
Decouverte2014-2015.pptx
Decouverte2014-2015.pptxDecouverte2014-2015.pptx
Decouverte2014-2015.pptxRihabBENLAMINE
 

Ähnlich wie Chp1- Introduction aux Technologies Web et SOA (20)

Introduction à mule esb
Introduction à mule esbIntroduction à mule esb
Introduction à mule esb
 
Présentation solution web orientée service SOA pour la gestion du processus d...
Présentation solution web orientée service SOA pour la gestion du processus d...Présentation solution web orientée service SOA pour la gestion du processus d...
Présentation solution web orientée service SOA pour la gestion du processus d...
 
1 - chapitre 1 chapitre 2 SOA.pdf
1 - chapitre 1 chapitre 2 SOA.pdf1 - chapitre 1 chapitre 2 SOA.pdf
1 - chapitre 1 chapitre 2 SOA.pdf
 
cours_SOA_AO+FB_en_informatique_SOA_.pdf
cours_SOA_AO+FB_en_informatique_SOA_.pdfcours_SOA_AO+FB_en_informatique_SOA_.pdf
cours_SOA_AO+FB_en_informatique_SOA_.pdf
 
Introduction a la SOA
Introduction a la SOAIntroduction a la SOA
Introduction a la SOA
 
Services web soap-el-habib-nfaoui
Services web soap-el-habib-nfaouiServices web soap-el-habib-nfaoui
Services web soap-el-habib-nfaoui
 
Cas d'usages d'un ESB - Petals Link - 2011
Cas d'usages d'un ESB - Petals Link - 2011Cas d'usages d'un ESB - Petals Link - 2011
Cas d'usages d'un ESB - Petals Link - 2011
 
Ouvrir son SI avec la trilogie Portail, SOA, BPM (Solutions Linux 2010 - cycl...
Ouvrir son SI avec la trilogie Portail, SOA, BPM (Solutions Linux 2010 - cycl...Ouvrir son SI avec la trilogie Portail, SOA, BPM (Solutions Linux 2010 - cycl...
Ouvrir son SI avec la trilogie Portail, SOA, BPM (Solutions Linux 2010 - cycl...
 
spatial data infrastructure
spatial data infrastructurespatial data infrastructure
spatial data infrastructure
 
PZ_Microservices101_20150210
PZ_Microservices101_20150210PZ_Microservices101_20150210
PZ_Microservices101_20150210
 
Design applicatif avec symfony2
Design applicatif avec symfony2Design applicatif avec symfony2
Design applicatif avec symfony2
 
Introduction au Domain Driven Design
Introduction au Domain Driven DesignIntroduction au Domain Driven Design
Introduction au Domain Driven Design
 
Cysoa formation-soa-architecture-orientee-services-synthese (1)
Cysoa formation-soa-architecture-orientee-services-synthese (1)Cysoa formation-soa-architecture-orientee-services-synthese (1)
Cysoa formation-soa-architecture-orientee-services-synthese (1)
 
Cysoa formation-soa-architecture-orientee-services-synthese
Cysoa formation-soa-architecture-orientee-services-syntheseCysoa formation-soa-architecture-orientee-services-synthese
Cysoa formation-soa-architecture-orientee-services-synthese
 
Data Quality et SOA
Data Quality et SOAData Quality et SOA
Data Quality et SOA
 
Chap1 p1-introduction
Chap1 p1-introductionChap1 p1-introduction
Chap1 p1-introduction
 
Les web services
Les web servicesLes web services
Les web services
 
Conference MicroServices101 - 1ere partie
Conference MicroServices101 - 1ere partieConference MicroServices101 - 1ere partie
Conference MicroServices101 - 1ere partie
 
Marzouk architecture encouches-jee-mvc
Marzouk architecture encouches-jee-mvcMarzouk architecture encouches-jee-mvc
Marzouk architecture encouches-jee-mvc
 
Decouverte2014-2015.pptx
Decouverte2014-2015.pptxDecouverte2014-2015.pptx
Decouverte2014-2015.pptx
 

Mehr von Lilia Sfaxi

chp1-Intro à l'urbanisation des SI.pdf
chp1-Intro à l'urbanisation des SI.pdfchp1-Intro à l'urbanisation des SI.pdf
chp1-Intro à l'urbanisation des SI.pdfLilia Sfaxi
 
Plan d'études_INSAT_2022_2023.pdf
Plan d'études_INSAT_2022_2023.pdfPlan d'études_INSAT_2022_2023.pdf
Plan d'études_INSAT_2022_2023.pdfLilia Sfaxi
 
Lab1-DB-Cassandra
Lab1-DB-CassandraLab1-DB-Cassandra
Lab1-DB-CassandraLilia Sfaxi
 
TP2-UML-Correction
TP2-UML-CorrectionTP2-UML-Correction
TP2-UML-CorrectionLilia Sfaxi
 
TP1-UML-Correction
TP1-UML-CorrectionTP1-UML-Correction
TP1-UML-CorrectionLilia Sfaxi
 
TP0-UML-Correction
TP0-UML-CorrectionTP0-UML-Correction
TP0-UML-CorrectionLilia Sfaxi
 
TD4-UML-Correction
TD4-UML-CorrectionTD4-UML-Correction
TD4-UML-CorrectionLilia Sfaxi
 
TD3-UML-Séquences
TD3-UML-SéquencesTD3-UML-Séquences
TD3-UML-SéquencesLilia Sfaxi
 
TD3-UML-Correction
TD3-UML-CorrectionTD3-UML-Correction
TD3-UML-CorrectionLilia Sfaxi
 
TD2 - UML - Correction
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - CorrectionLilia Sfaxi
 
TD1-UML-correction
TD1-UML-correctionTD1-UML-correction
TD1-UML-correctionLilia Sfaxi
 
Android - Tp1 - installation et démarrage
Android - Tp1 -   installation et démarrageAndroid - Tp1 -   installation et démarrage
Android - Tp1 - installation et démarrageLilia Sfaxi
 
Android - Tp2 - Elements graphiques
Android - Tp2 - Elements graphiques Android - Tp2 - Elements graphiques
Android - Tp2 - Elements graphiques Lilia Sfaxi
 
Android - Tp3 - intents
Android - Tp3 -  intentsAndroid - Tp3 -  intents
Android - Tp3 - intentsLilia Sfaxi
 
Android - TPBonus - web services
Android - TPBonus - web servicesAndroid - TPBonus - web services
Android - TPBonus - web servicesLilia Sfaxi
 
Android - Tp4 - graphiques avancés
Android - Tp4 - graphiques avancésAndroid - Tp4 - graphiques avancés
Android - Tp4 - graphiques avancésLilia Sfaxi
 

Mehr von Lilia Sfaxi (20)

chp1-Intro à l'urbanisation des SI.pdf
chp1-Intro à l'urbanisation des SI.pdfchp1-Intro à l'urbanisation des SI.pdf
chp1-Intro à l'urbanisation des SI.pdf
 
Plan d'études_INSAT_2022_2023.pdf
Plan d'études_INSAT_2022_2023.pdfPlan d'études_INSAT_2022_2023.pdf
Plan d'études_INSAT_2022_2023.pdf
 
Lab3-DB_Neo4j
Lab3-DB_Neo4jLab3-DB_Neo4j
Lab3-DB_Neo4j
 
Lab2-DB-Mongodb
Lab2-DB-MongodbLab2-DB-Mongodb
Lab2-DB-Mongodb
 
Lab1-DB-Cassandra
Lab1-DB-CassandraLab1-DB-Cassandra
Lab1-DB-Cassandra
 
TP2-UML-Correction
TP2-UML-CorrectionTP2-UML-Correction
TP2-UML-Correction
 
TP1-UML-Correction
TP1-UML-CorrectionTP1-UML-Correction
TP1-UML-Correction
 
TP0-UML-Correction
TP0-UML-CorrectionTP0-UML-Correction
TP0-UML-Correction
 
TD4-UML
TD4-UMLTD4-UML
TD4-UML
 
TD4-UML-Correction
TD4-UML-CorrectionTD4-UML-Correction
TD4-UML-Correction
 
TD3-UML-Séquences
TD3-UML-SéquencesTD3-UML-Séquences
TD3-UML-Séquences
 
TD3-UML-Correction
TD3-UML-CorrectionTD3-UML-Correction
TD3-UML-Correction
 
TD2 - UML - Correction
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - Correction
 
TD1 - UML - DCU
TD1 - UML - DCUTD1 - UML - DCU
TD1 - UML - DCU
 
TD1-UML-correction
TD1-UML-correctionTD1-UML-correction
TD1-UML-correction
 
Android - Tp1 - installation et démarrage
Android - Tp1 -   installation et démarrageAndroid - Tp1 -   installation et démarrage
Android - Tp1 - installation et démarrage
 
Android - Tp2 - Elements graphiques
Android - Tp2 - Elements graphiques Android - Tp2 - Elements graphiques
Android - Tp2 - Elements graphiques
 
Android - Tp3 - intents
Android - Tp3 -  intentsAndroid - Tp3 -  intents
Android - Tp3 - intents
 
Android - TPBonus - web services
Android - TPBonus - web servicesAndroid - TPBonus - web services
Android - TPBonus - web services
 
Android - Tp4 - graphiques avancés
Android - Tp4 - graphiques avancésAndroid - Tp4 - graphiques avancés
Android - Tp4 - graphiques avancés
 

Chp1- Introduction aux Technologies Web et SOA

  • 1. Institut National des Sciences Appliquées et de Technologie Architectures Orientées Services Chapitre 1 – Introduction aux Architectures Orientées Services Dr. Lilia SFAXI LA3 SIL - 2013-2014
  • 2. 1 Plan du Chapitre  Besoins de la SOA  Notion de Service  Architecture Orientée Services : Définition et Principes
  • 3. 2 Les Besoins de la SOA CHAPITRE 1 : INTRODUCTION AUX TECHNOLOGIES WEB & ARCHITECTURES ORIENTÉES SERVICES
  • 4. 3 Besoins de l’Architecture Orientée Services  Problématique d’intégration en entreprise o o  Les entreprises doivent s’adapter et être réactives aux variations des marchés  Impact sur les SI des entreprises C’est l’activité qui doit piloter la technologie et non l’inverse Prise en compte de l’évolution des besoins fonctionnels à la conception des application o La technologie doit apporter la flexibilité  Éviter le décalage entre besoins métiers et leur réalisation  Besoin de réutilisation des fonctionnalités (non fournie par le modèle MVC classique)  Processus métiers de plus en plus inter-départementaux  coût considérable dans la gestion de flux entre départements
  • 5. 4 Évolution des Architectures Hier : Architecture en Spaghetti Demain : Architecture Urbanisée  Organisation du SI à l’image d’une ville  Développement coûteux  Interconnexions redondantes  Le découper en modules autonomes  Grande complexité   Réutilisation et maintenance difficile Localiser les zones d’échange d’informations
  • 6. 5 De plus en plus d’abstraction  Procédures et fonctions o  Modules o  groupes de fonctions, de méthodes et de traitement, sous forme de bibliothèques Objet o  sous-programmes réalisant une action brique de base logicielle, représentant une entité du monde physique, encapsulant un état et des traitements Composant o o séparation des préoccupations techniques et fonctionnelles o  élément logiciel contenant du code compilé (donc opaque) définit une interface pour communiquer avec les autres composants, et une interface de configuration Service
  • 7. 6 Notion de Service CHAPITRE 1 : INTRODUCTION AUX TECHNOLOGIES WEB & ARCHITECTURES ORIENTÉES SERVICES
  • 8. 7 Service  Périmètre fonctionnel qu’on souhaite exposer à un certain type de consommateurs  Ensemble de fonctionnalités qui ont un sens  Expose un petit nombre d’opérations offrant un traitement de bout en bout  Est implémenté par un fournisseur et utilisé par un consommateur
  • 9. 8 Caractéristiques d’un Service (1/2)  Large Granularité (coarse-grained) o  Interface o  Les opérations proposées par un service encapsulent plusieurs fonctions et opèrent sur un périmètre de données large au contraire de la notion de composant technique. Un service peut implémenter plusieurs interfaces, et aussi plusieurs services peuvent implémenter une interface commune. Localisable o Avant d’appeler (bind, invoke) un service, il faudra le trouver (find).
  • 10. 9 Caractéristiques d’un Service (2/2)  Instance unique o o  À la différence des composants qui sont instanciés à la demande et peuvent avoir plusieurs instances en même temps, un service est unique. Un service correspond au design pattern Singleton. Couplage faible (loosely-coupled) o o Ces standards assurent le découplage, c-à-d la réduction des dépendances. o  Les services sont connectés aux clients et autres services via des standards Ces standards sont en général des documents XML comme dans les web services Synchrone ou Asynchrone
  • 11. 10 Couplage Fort vs. Couplage Faible  Couplage Fort Agent Accord de Prêt Compte Prêt SMS Gateway calculerRisque vérifierSolde créerPrêt envoyerConfirmation o « Agent » est lié à « Accord de Prêt », qui est lié à « Compte » o « Prêt » est lié à « SMS Gateway » Objets
  • 12. 11 Couplage Fort vs. Couplage Faible  Processus Métier Couplage Faible Processus de Prêt Vérification de Solde Calcul de Risque Création de Prêt Notification par SMS o Chaque entité (service) a un fonctionnement indépendant des autres o Le processus métier « Processus de Prêt » permet d’orchestrer les services  Couplage lâche ou faible Services
  • 13. 12 Types de Services  Les services de présentations ou de référencement o  Les processus métiers o  composés de tâches décrites et faisant appel éventuellement à d’autres services. Les services de gestion et d’accès aux bases de données o  vers les informations affichées et les formulaires de saisies de données. permettent la gestion des données partagées Les services d’intégration o en charge de la messagerie ou l’échange de données tant à l’intérieur que vers l’extérieur comme la gestion des courriers électroniques
  • 14. 13 Architecture Orientée Services : Définition et Principes CHAPITRE 1 : INTRODUCTION AUX TECHNOLOGIES WEB & ARCHITECTURES ORIENTÉES SERVICES
  • 15. 14 Architecture Orientée Services  SOA (Service Oriented Architecture)  Style partir de services métiers communs mutualisés pour un ensemble de lignes métiers ou d’applications.  Permet d’intégrer et de manipuler les différentes briques et composants applicatifs d’un système informatique et de gérer les liens qu’ils entretiennent  Objectifs o Décomposer une fonctionnalités en un ensemble de fonctions basiques (services) fournies par des composants o Décrire finement le schéma d’interaction entre ces services
  • 16. 15 Du point de vue des acteurs… Des services que l’entreprise souhaite exposer à ses clients et partenaires, ou à d’autres parties de l’organisation Dirigeant Une architecture basée sur un fournisseur, un consommateur et une description de service Architecte Un style de programmation avec ses standards, paradigmes, technol ogies et outils associés Développeur Un intergiciel offrant des fonctionnalités en terme d’assemblage, d’orchestration, de surveillance et de gestion des services Intégrateur
  • 17. 16 Principes de la SOA (1/2)  Diviser pour régner o  Alignement métier o  Substituer la découpe strictement applicative par une structuration en composants plus réduits faire évoluer. Construire et organiser le système ses constituants. partir des réalités métiers, qui doivent se retrouver dans Neutralité technologique o Assurer une indépendance totale entre les interfaces et les implémentations. o L’élément qui utilise un service ne doit pas être contraint ni par la technologie ).
  • 18. 17 Principes de la SOA (2/2)  Mutualisation o o  Favoriser la réutilisation de services métiers par plusieurs lignes métiers ou applications. Permettre la construction de services de haut niveau par combinaison de services existants. Automatisation des processus métier o  Isoler la logique des processus métiers sur des composants dédiés qui prennent en charge les enchainements de tâches et les échanges de flux d’information. Echanges orientés Document o Les informations échangées par les services possèdent une structure propre, guidée par les besoins métiers. o On privilégie la transmission de contenus complets et utilisables au profit d’accès direct aux structures de type objet ou relationnel.
  • 19. 18 Sources  Cours    M. Mecella : A very short Introduction to Web Services, Université de Rome A. Occello : Module Architecture SOA et Workflow, Polytechnique de Nice Livre Blanc  Gilbert Raymond, SOA : Architecture Logique - Principes, structures et bonnes pratiques, Softeam, Paris
  • 20. 19 Références  [Casati01] F. Casati, M.C. Shan, D. Georgakopoulos (eds.): Special Issue on e-Services. VLDB Journal, 10(1), 2001, Based on the 1st International Workshop on Technologies for e-Services (VLDB-TES 2001)  [Mecella01] M. Mecella, B. Pernici: Designing Wrapper Components for eServices in Integrating Heterogeneous Systems. VLDB Journal, 10(1), 2001, Based on the 1st International Workshop on Technologies for e-Services (VLDB-TES 2001)  [W3C04] W3C Working Group Note, Web Services Architecture Requirements, 11 Feb. 2004