• Aucun résultat trouvé

Chapitre 4 – HAMSTERS : une notation et un outil logiciel pour la modélisation et la

3 Représentation des données et de leur traitement

Le concept de données ou d’objets permet de décrire les éléments externes ou internes à l’utilisateur et qu’il manipule pour accomplir un but. Ainsi, il permet de représenter dans les modèles de tâches :

- Un objet physique passant d’un utilisateur à un autre ou d’un utilisateur à un système.

- Un objet logique ou une connaissance nécessaire à l’accomplissement d’une tâche, qu’elle soit interne ou externe à l’utilisateur (« Knowledge in the head » versus « Knowledge in the world », (Norman D. A., 2002)).

Dans la suite de cette section, nous distinguons la représentation du flux de données de la représentation des objets, puis détaillons leur influence sur la structure de contrôle des modèles de tâches.

3.1 Flux de données

Afin de décrire les flux de données, HAMSTERS contient plusieurs éléments de notation (représentés sur la Figure 48) :

- Un port de sortie sur la droite de la tâche abstraite T1 (rectangle orange) permet de décrire que la tâche peut fournir un flux de données sortant.

- Un port d’entrée sur la gauche de la tâche abstraite T2 (rectangle orange) permet de décrire que la tâche peut réceptionner un flux de données entrant.

- Une flèche entre le port de sortie de T1 et le port d’entrée de T2 permet de décrire que la tâche T1 fait effectivement passer un flux de données à la tâche T2.

Figure 48. Représentation d’un flux d’information entre deux tâches

La Figure 48 utilise le type de tâche abstraite pour l’exemple mais la description d’un flux d’information est possible entre chaque type de tâches.

3.2 Objets

Afin de décrire les objets et leurs relations avec les tâches et les flux de données, HAMSTERS contient plusieurs éléments de notation (représentés sur la Figure 49) :

- Des flèches uni ou bidirectionnelles entre une tâche et un ou plusieurs objets/données (schéma de gauche sur la Figure 49) permettent de décrire si :

o la valeur d’un/une objet/donnée est nécessaire à l’accomplissement d’une tâche (la tâche T1 nécessite la valeur de l’objet « objet1 »).

o la valeur d’un/une objet/donnée est modifiée par l’accomplissement d’une tâche (la tâche T1 modifie la valeur de l’objet « objet2 »).

o la valeur d’un/une objet/donnée est nécessaire et modifiée lors de l’accomplissement d’une tâche (la tâche T1 nécessite la valeur de l’objet « objet3 » et la modifie).

- Une flèche (ou plusieurs selon le nombre d’objets) entre un/une objet/donnée et la représentation d’un flux d’information permettant de décrire le/la (ou les) objet/donnée(s) transitant par ce flux (l’objet « objet4 » est transmis à la tâche T3 à la fin de l’exécution de la tâche T2).

Figure 49. Représentation des relations entre objets, tâches et flux d’information

La Figure 49 utilise le type de tâche abstraite pour l’exemple mais la description des relations entre objets, tâches et d’information est possible pour chaque type de tâches. De plus, pour une même tâche, autant de ports d’entrée et sorties sont nécessaires que de flux de données.

La Figure 50 présente une nouvelle version du modèle de tâches de l’exemple illustratif du retrait d’argent liquide. Dans cette nouvelle version, la donnée « code » est nécessaire à l’utilisateur (flèche allant de la représentation de la donnée vers la tâche « Se rappeler le code ») et va transiter par les flux d’information entre la tâche cognitive « Se rappeler le code » et la tâche motrice « Taper le code », puis entre la tâche motrice « Taper le code » et la tâche interactive d’entrée « Entrer le code ».

Figure 50. Exemple illustratif du distributeur de billets : saisie du code d’identification

3.3 Conditions et assignations

Une condition (« Condition »), représentée par le symbole , et associée à une tâche, permet de décrire (comme son nom l’indique) sous quelle condition, portant sur une donnée ou un objet, la tâche peut être effectuée.

Une assignation (« Assignment »), représentée par le symbole , et associé à une tâche, permet de

décrire le changement de valeur d’un objet à la suite de l’exécution d’une tâche et ainsi fournir un moyen de conditionner l’exécution d’une tâche suivante.

Ces mécanismes permettent d’influencer la structure de contrôle des modèles de tâches et de configurer la séquence de tâches effectuées selon le contexte et la valeur des objets/données. Des exemples de configuration sont proposés dans les tableaux suivants ou ces mécanismes sont associés aux mécanismes de subroutines.

La Table 13 décrit la représentation d’un modèle de tâche appelé modèle principal utilisant une référence à une subroutine (modèle du haut) et la représentation de la subroutine employée par le modèle de tâche principal (modèle du bas). Le modèle de tâche principal contient la représentation du flux de données entre une tâche interactive d’entrée du modèle de tâche principal et la subroutine

nécessitant un flux de données entrant (paramètre d’entrée représenté par le symbole ). La valeur

Table 13. Représentation d’un modèle de tâche et d’une subroutine nécessitant un flux d’information entrant

Exemple de modèle principal avec les éléments de notation de subroutine et de flux de

données

Exemple de subroutine utilisée par le modèle principal avec

les éléments de notation de description des conditions

La Table 14 décrit la représentation d’un modèle de tâche appelé modèle principal utilisant une référence à une subroutine (modèle du haut) et la représentation d’une subroutine employée par le modèle de tâches principal (modèle du bas). Le modèle de tâches principal contient la représentation du flux de données entre la subroutine fournissant un flux de données sortant (paramètre de sortie représenté par le symbole ) et une tâche abstraite du modèle de tâche principal. La valeur de la donnée en provenance de la subroutine conditionne l’exécution d’une des branches de la tâche abstraite « sous-but » du modèle principal.

Table 14. Représentation d’un modèle de tâche et d’une subroutine fournissant un flux d’information sortant

Exemple de modèle principal avec les éléments de notation de description de subroutine,

de flux de données et de condition

Exemple de subroutine utilisée par le modèle principale avec

les éléments de notation de description d’assignation

Tous ces mécanismes sont utilisés dans l’étude de cas du Chapitre 1.