Chapitre 3 Les services web sémantique
35
2.1. Services
La notion de service reste floue. M.P. Papazoglou a
proposé la définition suivante :
«Services are self-describing, platform agnostic
computational elements.» [Papazoglou,2003]
Un service est vu comme une entité logicielle qui peut
être utilisée grâce à sa description. Le consommateur
du service l'utilise sans avoir connaissance de la technologie sous-jacente
pour son implantation ainsi que de sa plate-forme d'exécution. De plus,
le service ne connaît pas le contexte dans lequel il va être
utilisé par le client. Cette indépendance à double sens
est une propriété forte des services qui facilite le faible
couplage. Cette définition contient une faiblesse, elle sous-entend
qu'un service est exécuté sur une plate-forme distante et qu'il
ne peut pas être importé sur une plate-forme locale.
Pour le consortium OASIS [OASIS 2006] un service fournit un
ensemble de fonctionnalités décrites dans une
spécification, appelée interface, ainsi qu'un ensemble de
contraintes et de politiques d'accès aux fonctionnalités
offertes. L'implantation du service n'est pas visible pour l'utilisateur.
Seules les informations qui peuvent permettre de savoir si le service
correspond aux besoins de l'utilisateur sont disponibles. Nous pouvons noter
qu'il est cependant difficile de discerner une information utile d'une
information inutile pour le choix d'un service.
Pour rendre plus explicites ces définitions, nous pouvons
dire qu'un service est :
« une entité logicielle qui fournit un
ensemble de fonctionnalités définies dans une description de
service. Cette description comporte des informations sur la partie
fonctionnelle du service mais aussi sur ses aspects non-fonctionnels. A partir
de cette spécification, un consommateur de service peut rechercher un
service qui correspond à ses besoins, le sélectionner et
l'invoquer en respectant le contrat qui a été accepté par
les deux parties. »
Nous avons introduit dans cette définition la notion de
contrat. Un contrat entre deux parties permet de s'assurer que chacune
respectera ce à quoi elle s'est engagée. Un contrat est le
résultat d'une négociation entre le fournisseur et le
consommateur. Ce contrat représente un accord de niveau de service, en
anglais Service Level Agreement (SLA), qui définit les
engagements que prend le fournisseur sur la qualité de son service, et
les pénalités encourues en cas de manquement. Cette
qualité doit être mesurable et mesurée selon des
critères objectifs acceptés par les deux parties. Un exemple
d'accord de service peut être le temps de rétablissement d'un
service en cas d'incident, le fournisseur et le consommateur définissent
un délai pour le rétablissement du service. Si le délai
est dépassé, le fournisseur doit indemniser le consommateur selon
les termes du contrat. La définition de l'accord de niveau de service
peut se faire selon plusieurs niveaux, comme défini dans [Antoine,al
1999] :
36
|