1 soa et services web 2 janvier 2014 dr. rim samia kaabi

34
1 SOA et Services Web 7 février 2022 Dr. Rim Samia Kaabi

Upload: evette-debray

Post on 03-Apr-2015

134 views

Category:

Documents


12 download

TRANSCRIPT

Page 1: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

1

SOA et Services Web

11 avril 2023

Dr. Rim Samia Kaabi

Page 2: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

2

SOA: Concepts de base

Page 3: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

3

Du client serveur à la SOA

Appels SQL

Modèle Serveur de bases de données relationnelles

Application

ApplicationServeur de BD

Résultats

Architectures 2-tiers

Page 4: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

4

• Les interface Web et le « client léger »• L’utilisation des technologies Internet

Client serveur à trois niveaux

Requêtes SQL

Client Serveur d’Application

Serveur BD

Appel de Procédureou d ’objets

DonnéesRésultats

… Architectures 3-tiers

Du client serveur à la SOA

Page 5: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

5

Du client serveur à la SOA

… Architectures n-tiers• Chaque application peut être un composant indépendant

ayant en charge une fonction.• Chaque fonction peut être utilisée et appeler d ’autres

fonctions.

Page 6: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

6

N’est pas une démarche entièrement nouvelle: années 1990 avec les solutions C/S

Besoins d’ouverture et d’interopérabilité des serveurs d’application actuels (J2EE, .NET) et le Web services :

SOA

Du client serveur à la SOA

Page 7: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

7

Plan

Définition généraleSOA et service

Web serviceApproche orientée objet

Composant

Définition détaillée du serviceCouplage faible

Activable à distance et interopérableAsynchrone

Expose un contrat d’utilisationRespecte le patron SOA

Page 8: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

8

Plan

Cas du service métierMode de découverte et cas d’usage

Type d’usageTerminologie retenue

Particularités du service métierDifférence entre service et service métier

Apports du SOA

Page 9: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

9

Une architecture orientée services

(notée SOA pour Services Oriented Architecture)

Lancée par Gartner Group, elle définit un modèle d’interaction applicative mettant en oeuvre des connexions en couplage faible

entre divers composants logiciels. « une vision d’un système destinée à traiter toute application comme

un fournisseur de service ». Architecture logicielle s'appuyant sur un ensemble de services

simples. Forme d'architecture de médiation qui est un modèle d'interaction

applicative qui met en œuvre des services. Objectif: Décomposition d’une fonctionnalité en un ensemble de

fonctions basiques, appelées services.

… SOA

Page 10: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

10

La notion de « service » est le concept phare.

La mise en place d'une architecture SOA répond à un besoin de:

• réutilisation des traitements, • interopérabilité, • fiabilité, • sécurité, • hétérogénéité.

Les Services Web sont juste un moyen de les implémenter.

… SOA

Page 11: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

11 11

Page 12: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

12

Les servicesLes services

Le service est un composant clef de l'Architecture Orientée Services.

Consiste en une fonction ou fonctionnalité bien définie.

Expose une interface qui définit le traitement offert sous la forme d’un message d’entrée et d’un autre de réponse.

Exprime un niveau « logique » d’accès aux traitements et pas un niveau « physique » d’implémentation.

Page 13: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

13

Les servicesLes services

• Deux types de services : Métier : issu du cahier des charges D’architecture : issu pendant l’établissement de

l’architecture de l’application (Généralement implémenté par un ou plusieurs services métier )

Le service doit respecter les propriétés suivantes: Couplage faible; Expose à un contrat d’utilisation; Respecte le patron d’architecture SOA.

Le service peut respecter les propriétés suivantes: Activable à distance et interopérable; Asynchrone.

Page 14: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

14

Les servicesLes services

P1: Couplage faible

Un service ne peut pas appeler un autre service.

Il délègue cette fonction à un traitement spécialisé dans l’enchaînement (fonction d’orchestration).

Les services sont connectés aux clients et autres services via des standards.

Page 15: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

Les servicesLes services

P1: Couplage faible

Page 16: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

16

Les servicesLes services

P2: Activation à distance et interopérabilité– Un service doit être activable à distance indépendamment de sa

technologie– L’activation se fait par l’envoi (et la réception) d’un message

XML– Le service doit exposer une interface d’utilisation qui est la

même indépendamment de sa localisation sur le réseau– L’appel au service fonctionne quelque soit le langage et les

système d’exploitation du consommateur (utilisateur du service)

Page 17: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

17

Les servicesLes services

P2: Activation à distance et interopérabilité

Page 18: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

18

Les servicesLes services

P3: Expose un contrat d’utilisation

un service expose un contrat d’utilisation décrit en deux parties:

• Une partie abstraite qui déclare les messages d’entrée et de réponse du traitement offert.

• Une partie concrète qui décrit les standards et protocoles techniques utilisés pour l’activation du service.

Page 19: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

19

Les servicesLes services

P4: Respecte le patron d’architecture SOA

Le patron consiste à créer une architecture applicative qui décompose les traitements sous la forme de services rattachés à des paquets de classes.

Ces paquets forment des Catégories (objet métier, sujet métier), chacune dotée d’une façade d’accès qui contient l’ensemble des services qu’elle expose

Un service à le droit d’interagir uniquement avec les classes de sa catégorie

Page 20: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

20

Les servicesLes services

P4: Respecte le patron d’architecture SOA

Page 21: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

21

Les servicesLes services

P5: Activé en mode Asynchrone

– Ne doit bloquer le consommateur en cours d’exécution– Généralement ceci implique un abonnement à un

évènement auprès de la fonction d’orchestrationExemple :

Page 22: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

Le composantLe composant

• Entité logicielle exécutée par un serveur d’application • Exemple pour J2EE un composant peut être :

– EJB– Javabeans– Servlet– Classe RMI

• En SOA :– Service est le concept du niveau logique– Composant est le concept du niveau physique

Page 23: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

23

Le service MétierLe service Métier

Un service de type particulier Ne respecte pas le patron d’architecture SOA Découvert directement au niveau de la modélisation des processus (diagramme d’activités) et non pas lors de la mise en place de la SOA. Correspond à un périmètre fonctionnel que l’on souhaite exposer à des consommateurs indépendamment des choix d’architecture applicative. Expose une ou plusieurs opérations (traitement de bout en bout) Généralement implémenté par un Web service

Page 24: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

24

Particularités d’un service métier

• Modélisation – UML : Diagramme d’activité (décrit le déroulement d’un

processus donné)– MERISE : MOT (modèle organisationnel de traitements)

• Pré-conditions et Post-conditions respectivement– Règles à respecter pour déclencher l’opération– Conditions d’émission du résultat de l’opération Contrat d’utilisation du service

• Context-Aware– Paramétrage du service suivant les besoins des

consommateurs et le contexte d’exécution Adaptation du comportement

Page 25: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

25

Service métier VS service d’architecture

Page 26: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

26

Service VS Composant

Page 27: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

27

Service Web: Définition

Implémentation possible des services métiersC’est un traitement délivré par un fournisseur et utilisé par un consommateurIl doit respecter principalement les propriétés suivantes :

• Couplage faible: un service ne peut pas appeler un autre service. Il délègue cette fonction à un traitement spécialisé dans l’enchaînement (fonction d’orchestration).

• Expose un contrat d’utilisation

Page 28: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

28

Service Web: Définition

Un composant :• implémenté dans n’importe quel langage, • déployé sur n’importe quelle plate forme • enveloppé dans une couche de standards dérivés du

XML. Un mécanisme de communication standard :

• dialoguer des applications ou des entreprises à travers du réseau internet + XML + SOAP.

Des applications modulaires, auto descriptives :• publiées, localisées • invoquées de n’importe quel point du web.

Accessible via des protocoles standards Internet HTTP basés sur le langage XML

Page 29: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

29

Approche Orientée ObjetApproche Orientée Objet

Méthodologie de construction des SI et d’implémentation de logiciels sous la forme d’objets

Complémentaire avec le SOA: le service est généralement décomposé en méthodes rattachées à un objet.

Page 30: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

30

AOO Vs SOAAOO Vs SOA

• SOA ne représente pas une technologie

• C'est une façon de concevoir des applications.

• Résolue le problème de l’OO qui est le couplage fort entre les composants logiciels.

Page 31: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

36

Apports de SOAApports de SOA

La réutilisation et la composition, permettant le partage de modules entre les applications.

La pérennité, impliquant le support des technologies existantes et à venir.

L’évolutivité, permettant aux applications de greffer de nouveaux modules afin de répondre aux nouveaux besoins fonctionnels.

L’ouverture et l’interopérabilité, pour partager des modules applicatifs entre plateformes et environnements.

Page 32: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

32

Les principaux obstacles

Obstacle Technique:Obstacle Technique: Certains anciens systèmes demeurent difficilement compatibles avec la mise en place de la SOA.

Obstacle Méthodologique:

Il existe encore assez peu de méthodes couvrant l'élaboration et le déploiement de l’architecture, sans doute par manque de retours d'expérience.

Page 33: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

33

Conclusion

Page 34: 1 SOA et Services Web 2 janvier 2014 Dr. Rim Samia Kaabi

34

Conclusion

SOA est réellement une approche novatrice.

Les composantes du S.I. doivent être prises en considération.

La démarche doit s’inscrire dans un schéma directeur à 5 ou 10 ans.