• Aucun résultat trouvé

Chapitre 2 : Etat de l’art des notations

1 Caractéristiques des notations

1.2 Caractéristiques liées à l’interaction

Cette section rassemble les caractéristiques des notations qui concernent la spécification de l’interaction. Notre attention est ici portée sur la capacité des notations à décrire l’interaction et non sur les dimensions aux cas du multiutilisateur et de la multimodalité qui font l’objet des sections 1.3 et 1.4. Toutefois, ces dimensions seront ici abordées pour souligner l’intérêt de certaines caractéristiques.

1.2.1 Description structurée de l’interaction

La plupart des notations disposent de vues pour décrire l’enchainement logique ou temporel des interactions.

Le modèle de tâches est l’approche la plus courante et peut prendre de nombreuses formes comme nous l’avons évoqué en 1.1.4 de ce chapitre. La forme la plus courante est un arbre de tâches. Celle-ci offre une structure hiérarchique qui consiste à décrire une tâche comme étant une composition de sous-tâches, du plus abstrait au plus concret. Les feuilles de l’arbre sont alors des tâches

69

Chapitre 2 : Etat de l’art des notations

élémentaires. Par exemple, les arbres de tâches de la notation CTT entrent dans ce cadre [Paterno 1997]. La granularité des tâches élémentaires dépend d’une part des objectifs de la notation, et d’autre part des préoccupations du concepteur qui réalise les arbres. Ainsi par exemple, pour la notation CTT, une tâche élémentaire est une tâche qui n’est pas décomposée en sous-tâches. En revanche pour la notation GTA [Veer 2000], les tâches élémentaires de l’arbre sont des tâches concrètes qui sont détaillées par la suite avec la notation NUAN [Venema 1999].

Une autre forme consiste à décrire un flot d’activités dont la description introduit une logique temporelle forte. La notation MABTA [Lim 2004] intègre un diagramme de flot de travail dans ses représentations, qui prend la forme d’un ensemble de boîtes reliées par des flèches. La notation Orchestra [David 2006] propose quant à elle de décrire le flot de travail sous la forme de mesures d’une portée musicale. Chaque mesure permet de décrire une tâche donnée. Dans les deux cas précédents, les flots de travail sont non hiérarchiques, c'est-à-dire que les tâches représentées ne sont pas décomposées en unités de travail plus fines. Néanmoins, les diagrammes de flot de travail peuvent être hiérarchiques, c’est le cas par exemple de la notation CIAN [Molina 2006]. CIAN propose en effet de décrire une décomposition en sous-tâches sous la forme d’un nouveau flot de travail. Ce nouveau flot de travail est représenté directement comme contenu de la tâche décomposée.

Les notations précédemment introduites pour décrire l’interaction permettent essentiellement de décrire l’interaction à haut niveau d’abstraction. Une notation comme NUAN [Venema 1999] prend en charge la description de l’interaction concrète sous la forme d’une séquence d’actions utilisateur et/ou système.

Enfin, UML permet de décrire l’interaction au travers de son diagramme d’activité à l’instar du diagramme de flot de travail de CIAN [Molina 2006]. En outre, UML permet de modéliser le dialogue concret de l’interface en décrivant les interacteurs qui la composent sous la forme de diagrammes d’état-transition.

Quel que soit la forme que prend la décomposition de l’interaction, elle se révèle utile pour décrire des activités coopératives, car les sous-tâches sont souvent assignées à un rôle utilisateur. C’est le cas notamment dans la notation CTT [Paterno 1997] où chaque tâche élémentaire de l’arbre de tâches coopératives peut être associée à un rôle [Mori 2002].

Dans la suite, et par commodité de langage, la notion de tâche est utilisée pour faire référence aux éléments composant l’interaction. Elle recouvre ainsi les activités pouvant être décrites dans un diagramme d’activité, les tâches d’un flot de travail, les tâches d’un modèle de tâches, et les actions utilisateur et réactions du système.

1.2.2 Relations de composition

Une description structurée de l’interaction repose sur l’usage de relations de composition afin de décrire l’enchaînement logique ou temporel des tâches. Les relations les plus courantes sont la séquence, l’alternative et la concurrence.

Les notations CTT [Paterno 1997], K-MAD [Lucquiaud 2005, Baron 2006] et CUA [Pinelle 2003] introduisent des opérateurs logiques et temporels pour décrire les relations entre tâches. Le nombre et la précision de ces opérateurs varient selon les notations. Ainsi, K-MAD propose quatre opérateurs

: la séquence, l’alternative, le parallélisme et l’absence d’ordre. La notation CTT utilise des opérateurs similaires (respectivement nommés activation, choix, parallélisme, et ordre indéfini) mais propose des d’opérateurs complémentaires pour signifier l’entrelacement entre deux tâches, la désactivation d’une tâche par une autre, ou le fait qu’une tâche suspende une autre tâche.

Pour les diagrammes d’activités et diagrammes de flot de travail, les relations temporelles prennent la forme de liens décrivant la relation. Ainsi une flèche entre deux activités d’un diagramme d’activités UML décrit que l’activité à l’origine de la flèche doit être réalisée avant de réaliser l’activité à l’extrémité de la flèche.

Dans le cas d’une notation comme NUAN, c’est la position des éléments textuels dans le tableau qui définit l’ordre des actions. Ainsi, une séquence d’actions est décrite implicitement dans le tableau par un saut de ligne. Le parallélisme est quant à lui décrit explicitement par un opérateur (||).

Pour notre analyse, la capacité d’une notation à décrire les relations entre tâches est détaillée en fonction d’une part de la manière de leur mise en œuvre parmi : {implicite, opérateur entre tâche, lien entre tâche}, et d’autre part la précision des relations représentées : {abstraite, concrète} et le nombre des relations proposées.

1.2.3 Objet du domaine

Le concept d’objet est présent dans la plupart des notations de description de l’interaction. Ces objets, parfois appelés objet de la tâche [Mori 2002], sont souvent des objets métiers, c'est-à-dire des objets correspondant aux concepts du métier que prend en charge l’application. Ils apparaissent souvent dans le nom des tâches lors de la description de l’interaction. Par exemple la tâche qui consiste à « Créer un fantassin » dans WCCM (décrit au Chapitre 1) utilise le concept de « fantassin ». Outre des objets métiers, une tâche peut être liée à des objets créés pour faciliter l’interaction. Ceci correspond aux cas de séparations sémantiques expliqués dans [Coutaz 2001]. Par exemple, dans WCCM, l’objet « Lasso » est manipulé pour sélectionner un ensemble d’icônes, et notamment un ensemble d’unités.

Les objets peuvent être décrits de manière isolée au sein de diagrammes de classe UML ou de diagramme RML [Treatteberg 2002], mais peuvent être également décrits au sein de la description d’une tâche abstraite comme dans la notation CIAN [Molina 2006]. Enfin, ils peuvent être associés implicitement à une tâche comme dans la notation MABTA [Venema 1999], ou être associés explicitement à une tâche comme dans les notations CTT [Paterno 1997, Mori 2002] et K-MAD [Lucquiaud 2005, Baron 2006].

Dans le cadre de systèmes multiutilisateurs, les objets manipulés par plusieurs utilisateurs lors de l’utilisation de l’application peuvent être partagés entre les utilisateurs. La notation UML-G [Rubart 2004] prend en charge la description du partage grâce à l’utilisation de prototypes pour UML. Nous décrivons plus précisément cet aspect dans à la section 2.1.1 de ce chapitre.

1.2.4 Contexte d’exécution d’une tâche

Plusieurs notations s’intéressent à représenter explicitement le contexte d’exécution d’une tâche. Le contexte peut exprimer la localisation des utilisateurs (co-localisés ou distants), comme cela est suggéré par les auteurs de la notation Orchestra [David 2006].

71

Chapitre 2 : Etat de l’art des notations

Le contexte peut aussi décrire les plateformes informatiques utilisées pour réaliser une tâche à l’instar de la notation CTT [Mori 2002]. Outre la plateforme informatique nécessaire à la réalisation d’une tâche, le contexte peut aussi inclure une description de l’environnement physique. Par exemple la notation K-MAD [Lucquiaud 2005, Baron 2006] propose ainsi de décrire les dispositifs physiques à disposition des utilisateurs. Enfin utilisateurs, plateforme informatique et physique peuvent être décrits conjointement au sein de diagrammes d’interaction avec la notation ASUR [Dubois 2002a].

De nombreux paramètres peuvent être pris en compte lors de la description du contexte physique, tels que la luminosité et le bruit ambiant. C’est pourquoi les notations existantes proposent souvent de décrire ces contextes d’utilisation de manière textuelle puis de les associer à la réalisation d’une ou plusieurs tâches comme dans la notation Orchestra [David 2006]. C’est également l’approche que proposent les auteurs de la notation CUA [Pinelle 2003], puisqu’ils préconisent de décrire des scénarios (contexte, utilisateur, rôle) auquels est associé un arbre de tâche.

Dans le cadre de notre analyse, nous étudions la capacité d’une notation à décrire le contexte d’exécution d’une tâche selon les éléments explicitement prévus par la notation comme les dispositifs physiques, l’environnement physique, ou encore la localisation des utilisateurs.

1.2.5 Actions du système

Certaines notations qui permettent l’analyse des besoins se focalisent sur les actions que peuvent réaliser les utilisateurs. D’autres, qui visent à fournir des spécifications plus proches de l’implémentation, cherchent à décrire également les actions du système. Celles-ci peuvent être de deux ordres : il peut s’agir d’une part d’actions initiées par le système, on parle alors de proaction, d’autre part de réactions du système à des sollicitations des utilisateurs, on parle alors de rétroaction. La majorité des notations existantes proposent un moyen de décrire les actions du système. La notation CTT [Paterno 1997] par exemple utilise le concept de tâche système qui permet de décrire aussi bien les tâches de proaction que de rétroaction. De plus, CTT permet de décrire textuellement les effets de chaque tâche sur les objets du domaine. Ces deux possibilités sont également présentes dans la notation K-MAD [Lucquiaud 2005, Baron 2006] : en effet bien que la notation K-MAD soit centrée sur les actions des utilisateurs, elle vise aussi à décrire des systèmes complets existants. Les actions du système ayant des conséquences sur les utilisateurs peuvent donc y être décrites. Plusieurs notations reposant sur CTT telles que CIAN [Molina 2006] ou Touche [Penichet 2006] prennent également en charge la description d’actions du système. D’autres notations telles que MABTA [Lim 2004] se focalisent sur la description des actions des utilisateurs et ne proposent pas de moyen particulier pour décrire les actions du système (tâche de rétroaction). La notation NUAN [Venema 1999] permet de décomposer les réactions du système en deux catégories qui sont exprimées dans deux colonnes distinctes : les réactions immédiates à l’interaction de l’utilisateur (par exemple, le déplacement continu d’une forme lors d’un glisser-déposer), et les réactions du système suite à la réalisation d’une tâche (par exemple, l’insertion de l’objet déposé dans une liste). Cette distinction est explicitée dans le modèle pipeline [Nigay 94] [Coutaz 94] qui articule les retours d’information (rétroactions lexicales, syntaxiques et sémantiques) et les effets des actions utilisateurs (réaction du système).

La conscience des autres et de leurs actions, qui est un aspect important des systèmes interactifs multiutilisateurs est lié à la représentation des actions du système. Elle est traitée dans la section suivante consacrée à la dimension multiutilisateur.