• Aucun résultat trouvé

Dans la Figure 89 nous illustrons les relations entre les acteurs de l’entrepôt au travers des services que chacun met à disposition des autres dans le réseau ambiant de services. Chaque flèche représente une demande de service réalisée par un demandeur de service vers un fournisseur de service. Ainsi, la pointe de la flèche indique le réceptionnaire de la demande de service (fournisseur de service). On peut distinguer deux attracteurs d’offres et de demandes de services dans la figure : l’objet communicant actif / passif et le gestionnaire de l’entrepôt. D’une part, l’objet communicant actif réalise des demandes de services vers le gestionnaire de l’entrepôt, les moyens de transport et les capteurs. En plus, l’objet communicant passif reçoit des demandes de services depuis les moyens de transport, le gestionnaire de l’entrepôt et l’utilisateur PDA. D’autre part, le gestionnaire de l’entrepôt réalise des demandes de services vers les moyens de transport, les capteurs et les utilisateurs PDA. En plus, le gestionnaire de l’entrepôt reçoit des demandes de services depuis les moyens de transport, les capteurs, les zones de stockage et les utilisateurs PDA.

Ob.Co.

Capt.

Utili.

Stock.

Trans. Gest.

Ob.Co. : Objet Communicant passif / actif Trans. : Chariot de transport UPnP / RFID Gest. : Gestionnaire de l’entrepôt UPnP Capt. : Capteur UPnP

Stock. : Stockage UPnP / RFID Utili. : Utilisateur PDA UPnP / RFID

Figure 89 : Diagramme de relations entres les acteurs de l’entrepôt.

Dans le Tableau 10 nous représentons les relations par les services entres les acteurs de l’entrepôt. Ce tableau exprime les relations graphiques montrées dans la Figure 89. Les cellules grises indiquent qu’il n’y a pas une relation significative entre les acteurs de l’entrepôt.

Objet Communicant

Transport Gestionnaire Capteurs Stockage Utilisateur Objet

Communicant

Tous les types de services de l’objet communicant.

Tous les types de services de l’objet communicant.

Tous les types de services de l’objet communicant. Transport Tous les types de

services d’un moyen transport.

Tous les types de services d’un moyen de transport (sauf l’évaluation de transport) Gestionnaire Disponibilité de stockage, qualité de service de l’entrepôt, priorité de transport, accepter stockage, demander un autre endroit de stockage, communiquer avec des entités externes.

Routage du transport dans l’entrepôt, maintenance pour un transport. Maintenance pour un capteur. Maintenance pour une zone de stockage. Traçabilité des acteurs de l’entrepôt.

Capteurs Tous les types de

services d’un capteur. Tous les types de services d’un capteur.

Stockage Tous les types

de services d’une zone de stockage.

Tous les types de services d’une zone de stockage.

Utilisateur Tous les types

de services d’un utilisateur.

Tableau 10 : Relations entres acteurs par les services dans l’entrepôt.

Dans la section suivante nous allons approfondir les services demandés par l’objet communicant actif aux acteurs de l’entrepôt (colonne 1 du Tableau 10).

5.4.1 Relation entre un objet communicant actif et le gestionnaire de l’entrepôt UPnP

Notre intérêt est de montrer le rôle de demandeur de service du produit communicant dans l’entrepôt au moyen des relations entre l’objet communicant actif et le gestionnaire de l’entrepôt. Le diagramme d’utilisation UML représenté dans la Figure 90 illustre l’utilisation du gestionnaire de l’entrepôt par un objet physique communicant. Ces cas d’utilisation permettent de représenter les situations dans lesquelles un objet physique communicant agit comme demandeur de services vers le gestionnaire de l’entrepôt. L’objet communicant actif utilise le gestionnaire de l’entrepôt pour obtenir la faisabilité de stockage, connaître la qualité de service offerte par l’entrepôt afin d’être stocké, informer l’entrepôt de la décision prise par rapport au stockage proposé, demander un autre endroit de stockage au moyen de la communication entre gestionnaires de stockage, communiquer ses variables d’état à des clients externes (messagerie électronique, …) grâce à la vue globale qu’a le gestionnaire (données de clients, données de traçabilité, …).

Gestionnaire de l’entrepôt

Connaître la disponibilité de l'entrepôt

Connaître la qualité de service offerte par

l'entrepôt Obtenir la faisabilité de stockage «utilise» Demander un autre entrepôt Accepter le stockage proposé Gestionnaire Externe Objet Communicant Actif

Communiquer avec des clients à distance

Client Externe

Obtenir la priorité pour utiliser une ressource de

transport

Figure 90 : Diagramme de cas d’utilisation UML décrivant l’usage du gestionnaire de l’entrepôt par l’objet communicant actif.

En considérant les caractéristiques dynamiques des objets physiques, il est possible d’associer une priorité de traitement ou de travail à chaque objet physique afin de rationaliser l’utilisation d’une ressource particulière dans un environnement donné. Dans notre cas, l’intérêt est d’associer à chaque objet une priorité de transport dans l’entrepôt afin de transporter d’abord les objets prioritaires (urgences, dates critiques, …) et ensuite les objets avec une priorité normale voire plus basse. Dans ce sens, le diagramme de la Figure 90 illustre aussi un objet communicant actif en relation avec le gestionnaire de l’entrepôt afin d’obtenir la priorité pour utiliser une ressource de transport dans l’entrepôt.

Le diagramme de séquence UML représenté dans la Figure 91 illustre le processus dynamique d’affectation d’une priorité pour un demandeur de services. Une fois que le demandeur de service a besoin d’utiliser une ressource critique (très demandée), il demande une priorité d’usage au gestionnaire de l’entrepôt. Afin de calculer une priorité initiale pour l’objet physique le gestionnaire a besoin de connaître les variables décrivant l’état physique de l’objet et l’état de satisfaction actuel des conditions de stockage demandées. Pour cela, il demande ces variables à l’objet communicant actif. Avec la réponse de l’objet le gestionnaire calcule la priorité demandée. Comme l’état physique de l’objet et l’état de satisfaction de stockage peuvent changer dans le temps, le gestionnaire, souscrit à ces variables, reçoit les mises à jour et recalcule la priorité. Si la nouvelle priorité est différente de la précédente il envoie la nouvelle priorité au demandeur de services. Celui-ci pourra annuler le contrat

établi précédemment avec le fournisseur de service et pourra également générer un nouveau compromis avec le fournisseur de service pour exécuter une tâche donnée.

Contrat d’une Ressource Contrat d’une Ressource

Demandeur de Services

demande priorité pour utiliser une ressource

informe la priorité initiale

informe le changement d'une variable d'état Fournisseur de Services

envoie ses variables d'état

Si [changement d’une variable d’état du Demandeur de Services] Ref Ref calcule la priorité recalcule la priorité Si [priorité actuelle <> priorité calculéé]

envoie confirmation souscription

envoie confirmation

Gestionnaire de l'entrepôt

demande les variables d'état

souscription aux variables d'état

annule contrat précédent

informe la nouvelle priorité

Figure 91 : Diagramme de séquence UML décrivant le mécanisme de gestion de priorités

5.4.2 Relation entre un objet communicant actif et les moyens de transports UPnP

L’objet communicant actif, étant un demandeur de services, interagit avec les moyens de transport UPnP afin de gérer ses déplacements dans l’entrepôt. Dans le diagramme de séquence UML représenté dans la Figure 92 nous illustrons le mécanisme général employé par un objet communicant actif afin de choisir une ressource parmi plusieurs candidats. La figure montre que le processus commence avec la demande d’un service (utilisation d’une ressource, transport, …) envoyée par le demandeur de service (objet communicant actif) vers les fournisseurs de services disponibles (m) dans le réseau ambiant IP UPnP. Le fournisseur de service répond en demandant les caractéristiques souhaitées (conditions de stockage, conditions de transport, …) au demandeur de service. Les fournisseurs qui offrent le service demandé et qui peuvent répondre à la demande (p) informeront le demandeur de service de leur disponibilité. En plus, les fournisseurs de services indiqueront une proposition d’exécution du service (rendez-vous, temps d’exécution de la tâche, …). Ainsi, le demandeur de services pourra choisir le fournisseur de service le mieux adapté à ses besoins. Ensuite, il enverra l’acceptation de la proposition au fournisseur de service choisi. Ceci représente un contrat entre le demandeur et le fournisseur de service pour exécuter le service à un moment et un endroit donné. Après l’exécution d’un service, le fournisseur de services pourra envoyer un message au demandeur de service en indiquant le résultat de l’action demandée. Ce mécanisme est inspiré par le protocole d’interaction Contract Net standardisé par la FIPA [FIPA, 2002].

m: nombre de fournisseurs

demande évaluer l'usage d'une ressource envoie les caractéristiques souhaitées

envoie réponse: non disponible

envoie réponse: proposition i p m = i + p rejette la proposition acepte la proposition p - 1 1

envoie: message d'erreur envoie: résultat de l'action

Demandeur de Services Fournisseur de Services

Alternative

Alternative

Alternative

demande les caractéristiques souhaitées

Figure 92 : Diagramme de séquence UML décrivant le mécanisme pour établir un contrat de travail entre un demandeur et un fournisseur de services.

La Figure 93 illustre un diagramme de cas d’utilisation UML représentant un objet communicant actif qui peut utiliser une ressource de transport (chariot) afin de demander son utilisation, confirmer son élection et utilisation, annuler un contrat d’utilisation créé auparavant.

Transporteur Demander une ressource Selectioner une ressource Annuler un contrat Objet Communicant Actif

5.4.3 Relation entre un objet communicant actif et capteur UPnP

Dans le cas où les objets communicants ne sont pas équipés de capteurs sensitifs, l’utilisation de capteurs indépendants dans l’entrepôt permet à l’objet de mieux connaître son contexte de travail. En effet, la relation entre un objet communicant actif et un ensemble de capteurs permet d’apporter à l’objet communicant des capacités de perception étendues sur son environnement. Ainsi, les capteurs répartis dans l’entrepôt sont employés comme une extension sensorielle des objets physiques.

Capteur UPnP Surveiller l'environnement Souscrire aux variables «utilise» Annuler une souscription «utilise» Objet Communicant Actif

Figure 94 : Diagramme de cas d’utilisation UML

Dans le diagramme de cas d’utilisation de la Figure 94, nous illustrons de quelle façon l’objet communicant actif utilise un capteur UPnP dans un entrepôt. On observe que l’objet communicant utilise un capteur pour surveiller son environnement afin de détecter des situations préjudiciables pour son intégrité physique et lu permetre de réagir à temps. Pour cela, l’objet communicant actif peut souscrire aux changements de ces variables. Une souscription sera annulée quand l’objet n’aura pas besoin de l’information apportée par un capteur donné.