• Aucun résultat trouvé

3.1 Introduction aux architectures de services ambiants

3.1.4 Paradigmes de communication

Dans les architectures de systèmes informatiques distribués, il existe deux paradigmes de communication dominants afin de faire interagir les entités [Schlueter, 2003] : le paradigme client / serveur et le paradigme des systèmes événementiels (event - based system). D’une part, le paradigme client / serveur considère deux types d’entités élémentaires : les clients et les serveurs [Ruffer, 1995]. Un client représente une entité qui initie une action en invoquant une requête vers un serveur distant avec une finalité déterminée. Autrement dit, un client est un demandeur de services. Un serveur représente une entité qui a pour rôle de répondre aux requêtes réalisées par les clients. C’est-à-dire, le serveur est un fournisseur de services. La distinction entre client et serveur est seulement conceptuelle, il est possible qu’une même entité soit un client et un serveur. D’autre part, le paradigme des systèmes événementiels représente un système composé d’entités capables d’envoyer et recevoir des messages d’événements survenus dans le système, et non sollicités. Le principe de «souscription / notification» étaie ce paradigme [Huang et Garcia-Molina, 2004], ainsi une entité cliente s’abonne aux événements auprès d’une autre entité serveur. Lorsqu’une entité serveur met à jour son état interne ou sa relation avec d’autres entités, elle publie ces événements aux entités clientes souscripteurs.

Selon [Briscoe, 2004], le modèle de type événementiel « suscriber / publisher » sera le modèle de communication prédominant dans les interactions « machine to machine » (M2M) [France Télécom, 2006] [Wang et al., 2006]. La Figure 39 illustre les interactions entre les entités en fonction du paradigme adopté. La partie supérieure de la figure montre un Client A exécutant une action sur le Serveur B. Ensuite, le serveur B lui répond. La partie inférieure de la figure montre un Demandeur A qui souscrit aux événements du Fournisseur B chez un gestionnaire d’événements. Lorsqu’un événement se produit sur le Fournisseur B, ceci est notifié au gestionnaire d’événements. Ce dernier

informe de l’événement en notifiant le Demandeur A. Nous remarquons que le modèle de type événementiel permet d’implémenter dans le client un comportement réactif.

Client A Serveur B

1. Requête

2. Réponse

Demandeur A des événementsGestionnaire

(Fournisseur B, …) Fournisseur B 1. Souscription aux événements(Fournisseur B) 2. Informe un événement(Fournisseur B) 3. Informe le événement(Fournisseur B) Client / Serveur Souscripteur / Producteur

Figure 39 : Représentation du paradigme client/serveur et du paradigme souscripteur/producteur

3.1.4.1 Paradigme de communication appliqué au domaine de la chaîne logistique

Dans la chaîne logistique, nous rencontrons de multiples acteurs. Un acteur de la chaîne logistique est une entité qui peut être un demandeur de services ou un fournisseur de services. Classiquement, comme demandeurs de services, nous pouvons signaler les utilisateurs humains (par exemple des opérateurs), les ressources physiques (par exemple des machines, des robots, etc.) et les ressources informatiques (par exemple une application informatique de prestataires). Nous proposons comme nouveau demandeur de services un produit / objet communicant (ou produit intelligent). Dans ce cas, le produit communicant représente un produit physique enrichi de capacités de mémorisation, communication, perception, action et décision. D’ailleurs, nous trouvons habituellement dans la chaîne logistique des utilisateurs, des ressources physiques et des ressources informatiques étant des fournisseurs de services.

Dans les dernières années, les produits physiques ont pris le rôle de fournisseurs d’information grâce à des données portées par eux qui peuvent être transformés facilement en information. Depuis un objet communicant a été vu comme un fournisseur de services par [Kärkkäinen et al., 2003] (notion de produit / objet communicant), [Riekki et al., 2005] (notion de produit / objet communicant) et comme un demandeur / fournisseur de services par [Privat, 2000] (notion de dispositif), [Smirnov et al., 2004] (notion de ressource informatique), [Jarvis et al., 2006] (notion de holon). Nous proposons de considérer un produit / objet communicant comme un fournisseur et un demandeur de services [Cea et Bajic, 2004].

De façon générale, un acteur ou processus de la chaîne logistique peut être considéré comme un fournisseur ou un demandeur de services. La Figure 40 montre le mode de communication générique associé au paradigme « client/serveur » et illustre la dualité demandeur / fournisseur de services d’un produit communicant. L’acteur de la chaîne logistique réalise une requête par annonce d’une demande

de service vers le produit communicant, ou bien, il répond à la requête faite par le produit communicant.

Produit / Objet Communicant Acteur Chaîne Logistique

envoie une réponse

Produit / Objet Communicant Acteur Chaîne Logistique

Produit / objet communicant

(Fournisseur de services) Produit objet communicant(Demandeur de Services)

envoie une requête envoie une réponse envoie une requête

Figure 40 : Mode de communication « request / reply » : le produit / objet communicant comme fournisseur et demandeur de services

Par rapport au paradigme événementiel, nous citons le travail de [Cheverst et al., 2002] qui propose un système de gestion d’information contextuelle dans lequel les changements d’information présentés aux utilisateurs sont déclenchés par des changements dans la localisation physique de l’utilisateur. Dans cet esprit, un acteur de la chaîne logistique étant un demandeur de service, peut s’abonner auprès d’un fournisseur de services afin de s’informer de tout changement concernant l’état du fournisseur. Dans ce cas, un produit communicant a besoin de disposer d’information actualisée pour prendre les décisions adéquates. Vice-versa, le produit communicant peut informer des changements d’état à tous les demandeurs de services intéressés. La Figure 41 montre le mode de communication générique associé à un produit communicant en considérant le paradigme de « système événementiel ». Dans la Figure 41 on observe que les fournisseurs de services sont les gestionnaires des demandes de souscription. Ainsi, le produit communicant souscrit aux événements de l’acteur de la chaîne logistique. Lorsque ce dernier réalise une opération concernant la souscription faite par le produit, l’acteur de la chaîne logistique l’informe ensuite ce changement. Ensuite le produit peut évaluer l’impact de ce changement sur lui-même. On observe aussi que l’acteur fait une souscription pour recevoir des événements associés au produit communicant. Dans ce cas, après que le produit a réalisé une opération concernant une souscription de l’acteur, il l’informe de cette nouvelle situation.

Produit / Objet Communicant Acteur Chaîne Logistique

Produit / objet communicant (Souscription et notification d’événements)

9. envoie une notification de changement 4. envoie une notification de changement

3. change l'état de l'acteur

8. change l'état de l'objet 5. évalue le changement 2. envoie une confirmation

1. envoie une souscription au acteur

7. envoie une confirmation

6. envoie une souscription à l'objet communicant

Figure 41 : Mode de communication « souscription / notification » : le produit intelligent comme annonceur et souscripteur d’événements.

Dans notre approche, les interactions entre acteurs sont supportées par le concept de service. Ce principe a été aussi adopté par [Jarvis et al., 2006] dans le domaine des systèmes de production holoniques. En effet, il y aura des interactions quand les demandeurs et fournisseurs de services sont en communication. Les interactions entre les acteurs dans les différentes phases de son cycle de vie, requièrent divers services génériques ou spécifiques en fonction des leurs besoins. Comme élément implicite de l’interaction entre acteurs, nous identifions le concept de contexte. Le contexte comme élément appliqué [Dey, 2000] est représenté par les caractéristiques des ressources informatiques employées pour effectuer les interactions entre les produits communicants et les acteurs de la chaîne logistique, les caractéristiques des utilisateurs et des ressources physiques qui sont en relation avec les objets communicants et les caractéristiques de l’environnement physique. Il est évident que le contexte influence le comportement de l’objet communicant et des acteurs de la chaîne logistique.