Actes Neuvièmes Journées sur l'Interaction Homme-Machine, IHM'97, Poitiers, septembre 1997, Cépaduès-Editions.

Interaction instrumentale :
de la manipulation directe à la réalité augmentée

Michel Beaudouin-Lafon
Laboratoire de Recherche en Informatique - URA 410 du CNRS
LRI - Bâtiment 490 - Université de Paris-Sud
91405 Orsay Cedex, France

mbl@lri.fr, http://www-ihm.lri.fr/~mbl


RÉSUMÉ

Cet article présente un nouveau modèle d'interaction : l'interaction instrumentale. Nous analysons le modèle d'interaction sous-jacent à la majorité des applications graphiques actuelles, et nous montrons qu'il conduit à une complexité croissante de ces applications. Le modèle que nous proposons est fondé sur les notions d'objet du domaine, d'instrument d'interaction et de réification. Pour valider ce modèle nous montrons qu'il permet de représenter les interfaces actuelles tout en mettant en évidence leurs défauts et leurs limitations. Puis nous montrons qu'il représente également une large gamme de nouvelles techniques d'interaction comme l'interaction bimanuelle ou la réalité augmentée.

MOTS-CLÉS: Interaction instrumentale, Manipulation directe, Modèles d'interaction, Réalité augmentée.

INTRODUCTION

Depuis l'introduction des principes de la manipulation directe par Ben Shneiderman en 1983 [24] et les travaux des chercheurs de Xerox PARC sur le Star [25], les recherches dans le domaine de l'interaction graphique ont surtout porté sur des techniques d'interaction spécifiques et des outils d'aide au développement d'applications interactives. Peu de travaux ont abordé la définition de nouveaux principes et modèles généraux pour l'interaction graphique (citons cependant en France les travaux de Nanard [22] et Baudel [4]). Alors que le nombre d'applications commerciales et le nombre d'utilisateurs ont explosé, les interfaces graphiques sont restées figées sur les principes des interfaces WIMP (Windows, Icons, Menus, Pointing) datant de plus de 15 ans.

L'objet de cet article est d'introduire un nouveau modèle d'interaction générique pour les applications graphiques. Nous commençons par l'analyse et l'évaluation du modèle d'interaction sous-jacent aux applications graphiques actuelles et mettons en évidence les limitations induites par ce modèle. Puis nous présentons notre modèle d'interaction instrumentale. Pour valider ce modèle nous montrons qu'il permet de représenter les interfaces actuelles et de caractériser certains de leurs défauts et de leurs limitations. Puis nous montrons qu'il permet également de décrire une large gamme de nouvelles techniques d'interaction comme l'interaction bimanuelle ou la réalité augmentée.

ETAT DE L'ART DES APPLICATIONS

La très grande majorité des applications actuelles sont organisées autour des éléments d'interaction suivants : des menus déroulants, des boîtes de dialogue, des fenêtres d'application et des palettes ou barres d'outils.

Les menus déroulants sont accessibles par une barre de menus et donnent accès à un ensemble de commandes et de sous-menus. Certaines commandes ont un effet immédiat, d'autres font apparaître une boîte de dialogue qui permet de spécifier les paramètres nécessaires à l'exécution de la commande. Les valeurs de ces paramètres sont spécifiées grâce à un ensemble standard d'interacteurs : champs texte, listes, cases à cocher, boutons radio, etc. La plupart des boîtes de dialogue sont modales : le reste de l'interface est inaccessible pendant que la boîte de dialogue est affichée et l'effet de la modification des paramètres n'est perceptible qu'une fois celles-ci validées (bouton "OK") ou par une demande explicite de prévisualisation (bouton "Apply").

Les fenêtres d'application présentent les données du domaine de l'application dans des documents qui peuvent être enregistrés sur disque. Ces fenêtres sont souvent bordées de barres de défilement pour contrôler la vue sur le document et parfois de barres d'outils, de repères dans les marges, etc. Le contenu des fenêtres d'application est accessible par action directe à la souris. Il est notamment possible de spécifier la sélection, c'est-à-dire les objets de l'application qui sont affectés par les commandes activées par les menus et boîtes de dialogue. La sélection apparaît dans la fenêtre sous une forme graphique: changement de couleur, poignées, voire animation.

Les palettes flottantes et les barres d'outils ont trois rôles. Elles peuvent donner un accès direct à certaines commandes, évitant la sélection dans les menus ; elles contiennent alors de simples boutons, souvent iconiques. Elles servent également à activer des modes temporels qui déterminent l'effet des actions de la souris dans la fenêtre d'application : mode sélection, mode création d'objet, etc. Enfin elles peuvent contenir des champs de saisie, à l'instar les boîtes de dialogue. Nous les appelons alors boîtes de propriétés, car l'entrée d'une valeur dans un champ modifie immédiatement les attributs de l'objet sélectionné et visualise l'effet de cette modification sans la validation imposée par les boîtes de dialogue.

Les techniques d'interaction utilisées dans ces applications reposent sur l'usage de la souris et du clavier. Le clavier est utilisé à la fois pour l'entrée de texte, pour l'activation de commandes (raccourcis-claviers, touches de fonction), et pour contrôler les actions effectuées avec la souris. Ce dernier usage permet une forme primitive d'interaction bimanuelle dans laquelle la main dominante contrôle le tracé à la souris et la main non-dominante contrôle la fonction du tracé par appui sur les touches telles que Shift, Alt, Option, etc. La souris sert au pointage, à la sélection et au tracé [15]. L'interaction de pointage+sélection (clic) permet d'activer des commandes (sélection dans les menus), d'entrer des données dans les boîtes de dialogues (sélection des champs et des valeurs) et de définir les objets sélectionnés. L'interaction de pointage+tracé est utilisée pour deux catégories de fonctions : le "drag-and-drop" qui permet de déclencher des commandes en amenant un objet sur un autre ; le cliquer-tirer qui permet le déplacement, la déformation et la transformation d'objets par action directe sur un objet ou sur ses poignées de sélection.

Évaluation de quelques applications

Afin d'évaluer ce modèle d'interaction, nous avons étudié 10 applications sur Apple Macintosh. Les applications suivantes ont été choisies car elles sont très largement répandues et qu'elles concernent des domaines d'applications différents (traitement de texte, tableur, présentation, retouche photographique, PAO, édition de schémas, modelage 3D) :

Critère    W6   E5   Pe3  P4   X3   C3   Moy.  Somme. 

#menus      8    8    7    8    7    8    7,7   0,5  
#cmds     106   84   97  111   99   74   95,2  13,8  
#dlog      69   44   20   27   40   21   36,8  18,6  
#ssmenu     1   15   27   26   13   22   17,3   9,8  
#sscmds     3   58   73   82   65  121   67,0  38,4  
#ssdlog     0   20   20   40   10   28   19,7  13,9  
Tcmds     108  127  143  167  151  173  144,8  24,5  
Tdlogs     69   64   40   67   50   49   56,5  11,8  
Cmds/M   13,3 10,5 13,9 13,9 14,1  9,1   12,5   2,1  
Cmds/SM   3,0  3,9  2,7  3,2  5,0  5,5    3,9   1,1  
#palettes   9   13    5   11    6    6    8,3   3,2  
#outils   125  106   54   77   68   60   81,7  28,0  
#prefs     12   10    1    8    5   11    7,8   4,2  
#options  113   76   11   51   82   27   60,0  37,7  
macros    oui  oui  non  oui  non  oui               

Tableau 1 : évaluation de 6 applications

Les critères qui ont été choisis sont indépendants de la nature de l'application et sont représentatifs de la complexité de l'interface telle qu'elle peut être perçue visuellement lors de l'utilisation de l'application. Bien entendu, ils ne préjugent pas de l'usage effectif qui peut être fait d'une application. Dans le tableau 1, nous avons établi les moyennes (Moy) et les écarts-type (Somme) pour 6 applications. Dans le tableau 2 nous avons comparé l'évolution des critères pour des versions différentes de 3 applications. Les paramètres mesurés sont les suivants :

Critère     E4   E5      %   W5   W6      %   P2   P4      %  

#menus       8    8     0%    8    8     0%    7   8    +14%  
#cmds       93   84   -10%  107  106    -1%   78  111   +42%  
#dlog       60   44   -27%   55   69   +25%   21   27   +29%  
#ssmenu      0   15    + *    0    1    + *   19   26   +37%  
#sscmds      0   58    + *    0    3    + *   56   82   +46%  
#ssdlog      0   20    + *    0    0    + *   39   40    +3%  
Tcmds       93  127   +37%  107  108    +1%  115  167   +45%  
Tdlogs      60   64    +7%   55   69   +25%   60   67   +12%  
Cmds/M    11,6 10,5   -10% 13,4 13,3    -1% 11,1 13,9   +25%  
Cmds/SM    0,0  3,9    + *  0,0  3,0    + *  2,9  3,2    +7%  
#palettes    8   13   +63%    3    9  +200%    6   11   +83%  
#outil     108  106    -2%   63  125   +98%   49   77   +57%  
#prefs       0   10    + *   10   12   +20%    9   8    -11%  
#options     0   76    + *   52  113  +117%   58   51   -12%  
macros     oui  oui         non  oui         non  oui         

Tableau 2 : comparaison de versions successives (+ * signifie un taux d'augmentation infini)

Ces tableaux appellent plusieurs remarques. D'une part, le nombre total de commandes, de boîtes de dialogues et d'outils accessibles par les palettes est comparable entre les différentes applications (lignes Tcmds et Tdlogs). Par contre, l'organisation des commandes en menus et sous-menus est plus variable. Le nombre de menus dans la barre de menus étant limité par la taille de l'écran, il faut choisir entre un plus grand nombre de commandes dans chaque menu et un nombre plus important de sous-menus. On remarque également que la proportion de commandes qui conduisent à une boîte de dialogue est considérable : entre un 1/3 et 2/3. D'autre part, un effort est fait pour permettre la personnalisation des applications : configuration des menus, palettes et barres d'outils, macros, etc. Enfin, les versions successives d'un même logiciel font systématiquement apparaître une augmentation importante du nombre de commandes et/ou de boîtes de dialogue, et du nombre d'outils dans les palettes. Pour résumer cette évaluation, on peut dire qu'une application "standard" offre 150 commandes dans ses menus, 60 boîtes de dialogues, et 80 outils.

Evaluation qualitative

Pour poursuivre notre évaluation sur le plan qualitatif, nous reprenons les principes de la manipulation directe tels qu'ils ont été énoncés par Shneiderman [24] :

Nous allons montrer que ces applications ne suivent pas les principes de la manipulation directe, ou plus exactement qu'elles ne les interprètent pas correctement.

Ainsi, les objets d'intérêt (M1) sont limités aux objets de l'application. Ces derniers sont bien représentés de façon permanente (bien que souvent occultés par les palettes et boîtes de dialogue), mais l'interface fait généralement intervenir d'autres objets qui, même s'ils ne font pas directement partie du domaine de l'application, sont indispensables à sa mise en oeuvre. Ainsi les feuilles de style de Word ou XPress, les couches de Photoshop ou Canvas, les brosses et les filtres de Photoshop pour ne citer que quelques exemples, sont des objets avec lesquels l'utilisateur doit interagir constamment pour utiliser l'application. Il est donc raisonnable de penser que ces objets existent dans le modèle mental de l'utilisateur et qu'à ce titre ils devraient avoir le statut d'objet d'intérêt : ils devraient être représentables de façon continue dans des fenêtres similaires aux fenêtres d'application, voire enregistrables dans des fichiers. C'est d'ailleurs une évolution que l'on observe dans certaines versions successives du même logiciel, comme par exemple Photoshop.

En ce qui concerne les actions physiques (M2), on peut noter la pauvreté des moyens physiques d'interaction, limités dans l'immense majorité des cas à une souris et un clavier. Certains logiciels de dessin peuvent être pilotés par des tablettes graphiques sensibles à la pression, mais aucun des éléments classiques des interfaces ne sont prévus pour prendre en compte cette dimension, ni même plus d'un seul périphérique de désignation [12]. Il en résulte que le vocabulaire d'entrée des applications est limité à des actions de pointage, de sélection et de tracé, ces dernières n'interprétant la plupart du temps que les positions de départ et d'arrivée et ignorant la trajectoire intermédiaire. Pour pallier cette pauvreté du vocabulaire d'entrée, les applications utilisent des intermédiaires comme les menus et boîtes de dialogue. Dans certains cas, l'activation d'une commande requiert la sélection dans une hiérarchie de menus et le remplissage d'une cascade de boîtes de dialogues : au lieu d'actions physiques sur les objets, l'utilisateur doit se conformer à une syntaxe de saisie imposée par le système, violant ainsi le principe M2. Aussi, bien que les applications étudiées soient dites à manipulation directe, une grande partie des actions de l'utilisateur opèrent en réalité indirectement sur les objets d'intérêt. Dans la suite, nous parlerons de manipulation directe lorsqu'il y a action directe sur les objets de l'application par l'intermédiaire des périphériques de localisation (ici la souris), et de manipulation indirecte pour la sélection des commandes dans les menus, l'entrée de données dans les boîtes de dialogue et de propriétés, l'utilisation des palettes et barres d'outils.

L'utilisation de la manipulation indirecte présente l'inconvénient que les opérations ne sont ni rapides, ni incrémentales (M3) : la navigation dans les menus et sous-menus et l'usage de boîtes de dialogues à onglets ou en cascade diminuent considérablement l'efficacité de l'interaction. En effet un grand nombre d'actions sont destinées à la sélection des paramètres et à la syntaxe d'activation des commandes plutôt qu'à la spécification des valeurs. La saisie des valeurs est également inefficace à cause de l'usage d'un nombre réduit de types d'interacteurs. Ainsi, une valeur numérique est souvent entrée par saisie textuelle, et des tâches de saisie intégrales [17] comme la saisie d'une taille ou d'une position sont souvent artificiellement séparées en deux saisies pour les valeurs en X et en Y. Enfin, la saisie de valeur est rarement incrémentale car on ne peut pas, en général, juger de l'effet de la valeur couramment sélectionnée sur l'exécution de la commande au fur et à mesure de cette spécification. Le style d'interaction est donc largement conversationnel, similaire à l'entrée d'une ligne de commande textuelle dont l'effet n'apparaît que lors de l'appui sur la touche RETURN.

En ce qui concerne la facilité d'apprentissage (M4), la plupart des applications sont utilisables avec un minimum de connaissance, et ceci d'autant plus qu'elles sont conformes au modèle que nous avons décrit. Cependant, il reste difficile de progresser en découvrant de nouvelles fonctionnalités de façon exploratoire. Bien que les interfaces soient configurables, il n'y a pas en général de pré-configuration qui permettrait de choisir entre plusieurs niveaux d'utilisation, et le grand nombre d'options et la complexité de l'interface correspondante réservent la personnalisation aux utilisateurs experts. L'utilisateur novice est donc confronté d'emblée à l'ensemble de l'interface et doit extraire de cette complexité les éléments qu'il reconnaît ou qui sont suffisamment évocateurs.

En conclusion, les applications graphiques interactives actuelles présentent une grande complexité visuelle de leur interface et une faible efficacité de l'interaction. Celles-ci résultent respectivement de la complexité du modèle conceptuel de ces applications et de la pauvreté des techniques d'interaction utilisées, en particulier l'usage de la manipulation indirecte.

L'INTERACTION INSTRUMENTALE

Le modèle d'interaction que nous proposons a pour but de définir un espace de conception pour l'interaction graphique qui facilite la définition de nouvelles techniques d'interaction permettant de résoudre les problèmes tels que ceux identifiés ci-dessus. Ce modèle englobe le modèle classique décrit au début de cet article. En particulier, plutôt que d'opposer manipulation directe et manipulation indirecte, il décrit un continuum allant de l'une à l'autre.

Le modèle est fondé sur la notion d'instrument d'interaction jouant le rôle de médiateur entre les actions de l'utilisateur et les objets de l'application. Le terme d'instrument fait bien sûr référence à l'instrument de musique, médiateur privilégié entre l'artiste et l'oeuvre, mais doit également s'entendre dans le sens du dictionnaire (Petit Robert) : "Objet fabriqué servant à exécuter qqch., à faire une opération (Instrument est plus général et moins concret que outil; désigne des objets plus simples que appareil, machine)." Pour présenter ce modèle, nous définissons d'abord les objets manipulés par les instruments, puis les instruments eux-mêmes et enfin le principe de réification permettant de créer de nouveaux objets et de nouveaux instruments.

Les objets

Les objets manipulés par les instruments sont en premier lieu les objets du domaine de l'application. Dans un traitement de texte, ce sont les caractères, mots, phrases, paragraphes ; dans un tableur les cellules et feuilles de calcul ; dans un logiciel de dessin les objets graphiques qui composent l'image. Chaque objet est constitué d'un ensemble d'attributs, qui sont des valeurs simples ou des objets complexes. Par exemple, le matériau d'un élément d'une scène 3D est un objet qui peut être édité, copié et sauvé au même titre qu'un élément de la scène. Le principe de réification, décrit plus loin, permet de définir d'autres objets nécessaires à l'interaction, comme les feuilles de styles d'un traitement de texte. Enfin, les instruments sont eux-mêmes des objets, ce qui permet d'éditer leurs caractéristiques, voire d'en créer dynamiquement de nouveaux.

Chaque objet a une ou plusieurs représentations. Dans la suite nous ne considérons que les représentations graphiques. Chaque représentation correspond à une vue sur l'objet et présente un sous-ensemble de ses attributs. Ainsi, un éditeur de texte peut proposer un affichage en mode plan ou en mode page, un modeleur 3D une vue fil-de-fer ou une vue solide, etc. Dans le Finder du Macintosh, l'icone d'un fichier et la boîte d'informations qui affiche sa taille, sa date de création, etc. sont deux vues sur le même objet, à savoir le fichier.

Les instruments

Toute création, modification et destruction d'un objet est réalisée par l'intermédiaire d'un instrument. Un exemple simple d'instrument est une barre de défilement manipulée par l'intermédiaire d'une souris. L'action de la souris sur la barre contrôle l'attribut position (en X ou en Y selon l'orientation de la barre) de l'objet document lié à la barre. Les menus, les boîtes de dialogues et de propriétés, les palettes et les poignées de manipulation sont également des instruments puisqu'ils permettent d'agir de façon plus ou moins directe sur des objets.

Un instrument est composé d'une partie physique et d'une partie logique. La partie physique comprend les transducteurs d'entrée-sortie utilisés par l'instrument, en entrée pour capter l'action physique de l'utilisateur et en sortie pour lui présenter un retour d'information. En général, il s'agit de la souris et du clavier en entrée, et de l'écran en sortie. On peut cependant imaginer (et souhaiter) une plus grande palette de périphériques d'entrée et un retour tactile et/ou auditif de l'information. La partie logique de l'instrument comprend en entrée la méthode de transformation des actions de l'utilisateur sur l'instrument logique et en sortie la représentation de l'instrument. Par exemple, une barre de défilement verticale interprète seulement les mouvements verticaux de la souris et sa représentation est constituée d'un ascenseur et de deux flèches.

L'association entre instrument logique et instrument physique peut être explicite ou implicite. Elle est explicite par exemple lorsque l'on pointe une barre de défilement ou lorsque l'on active une boîte de dialogue ; elle est implicite par exemple dans le cas de la roulette de la souris IntelliMouse de Microsoft, qui est assignée à la barre de défilement verticale de la fenêtre courante. L'association explicite rend l'interaction moins efficace puisqu'elle impose une action de sélection de l'instrument logique par l'utilisateur. L'association implicite de son côté peut conduire à un grand nombre de périphériques physiques, comme dans le cas des consoles de mixage audio qui comportent couramment plusieurs centaines de potentiomètres. La combinaison des deux types d'association permet d'établir un compromis et d'adapter l'interface aux périphériques disponibles.

L'interaction instrumentale implique deux niveaux d'interaction (fig. 1) : l'interaction entre l'utilisateur et l'instrument, et l'interaction entre l'instrument et l'objet édité. L'instrument joue ainsi le rôle de médiateur entre l'utilisateur et l'objet édité. Les retours d'information sont à trois niveaux : retour de l'action sur l'instrument physique, retour visuel via la représentation de l'instrument logique, et retour de l'effet de l'interaction sur l'objet édité. Dans le cas de la barre de défilement manipulée à la souris, le retour d'information sur la souris est proprioceptif (position de la souris), le retour d'information de l'instrument est donné par la position de l'ascenseur, et le retour de l'effet de l'interaction sur l'objet édité est le défilement du document. Des dispositifs à retour d'effort comme le clavier rétro-actif modulaire [9] permettraient un retour d'information plus riche sur le périphérique d'entrée en exploitant le sens tactile et kinesthésique.

Fig. 1 : l'instrument, médiateur entre l'utilisateur et l'objet

La réification

Dans la plupart des applications, l'interface ne peut être organisée autour des seuls objets du domaine et des instruments. Des concepts additionnels doivent être introduits pour structurer l'interface, pour simplifier l'interaction ou pour rendre le modèle plus puissant. Un exemple commun dans les traitements de texte consiste à grouper des attributs des objets pour définir des "styles" qui peuvent être partagés par plusieurs objets : en modifiant un attribut d'un style, on modifie plusieurs objets simultanément. Selon notre modèle les styles sont des objets, éditables dans leurs propres fenêtres, enregistrables dans des fichiers, et nécessitant leurs propres instruments d'édition. Un autre exemple commun est la notion de palette d'outils : les instruments sont considérés comme des objets, sélectionnables par un nouvel instrument, la palette.

Nous appelons l'opération qui permet d'identifier les styles ou les instruments d'une palette comme des objets une réification : elle transforme un concept en objet. La réification permet une économie de moyens : le modèle de base reste celui des objets et des instruments, la réification servant seulement à définir de nouveaux objets. De plus, la réification permet de définir un ensemble de commandes génériques s'appliquant à diverses catégories d'objets. Ainsi, lorsqu'un concept est réifié, il devient possible d'éditer ses attributs, de le dupliquer, de le stocker, etc.

De nombreuses applications bénéficieraient de l'usage de la réification. Ainsi, les styles de Word n'ont pas réellement un statut d'objet : ils ne sont éditables que dans des boîtes de dialogue modales, et ne peuvent pas apparaître de façon permanente (à part dans le menu des styles) ; on peut cependant les stocker dans des fichiers. Dans Photoshop, les filtres sont des instruments, accessibles uniquement par l'intermédiaire de commandes et de boîtes de dialogue modales. Pourtant, les filtres sont centraux dans cette application de retouche photographique. En réifiant les filtres, il serait possible de créer des configurations prêtes à l'emploi, sans avoir besoin de spécifier les paramètres à chaque utilisation.

Evaluation des interfaces instrumentales

Plusieurs critères ont été mis en avant pour évaluer la "qualité" de l'interaction. Norman [23] a intoduit les distances d'exécution et d'évaluation dans sa théorie de l'action ; Bastien et Scapin [3] ont défini un ensemble de critères ergonomiques ; Baudel [4] définit les notions d'interaction efficace (utilisation optimale de la bande passante utilisateur-système informatique), naturelle (correspondance entre modèle mental et modèle d'interaction), conforme et complète (correspondance entre les actions possibles et les comportements des objets informatiques). Nous proposons d'opérationnaliser certains de ces critères en définissant les degrés d'indirection et d'intégration d'un instrument.

Le degré d'indirection d'un instrument se mesure par les décalages spatiaux et temporels qu'il met en jeu. Le décalage spatial entre le périphérique logique et le périphérique physique est pratiquement inévitable, sauf dans le cas d'un écran tactile. Il ne semble pas en pratique poser de problème particulier. Le décalage spatial entre le périphérique logique et l'objet édité est plus gênant car il peut induire un va-et-vient du point d'attention. Typiquement, ce décalage est nul dans le cas des interactions à manipulation directe (poignées de sélection par exemple), mais il est important dans les manipulations indirectes (boîtes de dialogue ou de propriétés par exemple). Même s'il est faible dans le cas des barres de défilement qui sont proches des documents contrôlés, il suffit à provoquer un va-et-vient du point d'attention qui distrait l'utilisateur et provoque des erreurs de manipulation. Les décalages temporels concernent les intervalles de temps entre l'action sur l'instrument et le retour d'information. Si ces décalages sont trop importants (à l'échelle de la perception humaine), ils risquent de briser la boucle perception-action et de faire perdre à l'utilisateur le lien de causalité entre ses actions et les réponses du système [21, décrit dans 10]. Les décalages temporels au niveau des instruments physiques et logiques sont en général faibles et ne posent pas de problème. Au niveau de l'objet édité, le décalage temporel peut être dû à un problème de performances que l'on peut résoudre en dégradant la représentation de l'objet [26]. Par exemple si le déplacement d'une fenêtre avec son contenu en temps réel est trop coûteux, on peut afficher seulement son cadre. Le décalage temporel au niveau de l'objet peut également être dû à l'action différée de l'instrument logique. Ainsi, une boîte de dialogue n'agit sur l'objet édité que lorsqu'on la valide, créant ainsi un décalage temporel maximal. Au contraire, une boîte de propriétés agit immédiatement sur l'objet édité et induit donc un décalage temporel nul.

Le degré d'intégration d'un instrument est le rapport entre le nombre de degrés de liberté utilisés par l'instrument logique et ceux fournis par l'instrument physique. Par exemple une barre de défilement utilise un degré de liberté sur les deux que lui fournit la souris tandis que le défilement direct d'un document par l'outil "main" exploite les deux degrés de liberté de la souris. Le degré d'intégration recouvre les notions de tâches intégrales et séparables [17]. Un plus grand degré d'intégration correspond à une interaction plus efficace car la bande passante en entrée est mieux exploitée.

Un exemple : Bryce 2

Parmi les logiciels commerciaux, peu s'écartent du modèle décrit au début de cet article. La version 2 de Bryce (Metatools) est une exception remarquable que l'on peut analyser selon le modèle d'interaction instrumentale. Il s'agit d'un modeleur 3D qui permet la réalisation de scènes réalistes. C'est donc un logiciel complexe, comparable aux applications évaluées plus haut. Pourtant, l'évaluation de Bryce contraste nettement avec ces applications, comme le montre la table 3.

L'interface utilise diverses palettes munies d'instruments très efficaces : un grand nombre d'entre eux permettent de contrôler deux paramètres simultanément par le déplacement XY de la souris (degré d'intégration égal à 1). Toute action a un effet immédiat et incrémental, soit sur la scène principale, soit sur une version réduite lorsque les calculs sont trop coûteux (faible degré d'indirection). L'instrument qui permet de définir les paramètres d'un matériau fait appel à 57 éléments d'interface. Ils sont regroupés sur un seul écran sans que cette complexité ne soit apparente. A titre de comparaison, Word utilise 9 boîtes de dialogue pour spécifier les 84 attributs d'un style, et Excel utilise un enchaînement de 5 boîtes pour spécifier 10 options d'affichage d'un graphique. Enfin, les matériaux de Bryce sont des objets à part entière : ils peuvent être créés, édités, copiés, collés, et sauvés dans des fichiers.

Critère          Moy  Bryce2 % de Moy  

#menus           7,7  3         38,9%  
#cmds           95,2  45        47,3%  
#dlog           36,8  18        48,9%  
#ssmenu         17,3  0          0,0%  
#sscmds         67,0  0          0,0%  
#ssdlog         19,7  0          0,0%  
Tcmds          144,8  45        31,1%  
Tdlogs          56,5  18        31,8%  
Cmds/M          12,5  15,0     120,0%  
Cmds/SM          3,9  0,0        0,0%  
#palettes        8,3  9        108,4%  
#outils         81,7  71        86,9%  
#prefs           7,8  1         12,8%  
#options        60,0  5          8,3%  

Table 3 : évaluation de Bryce

NOUVELLES TECHNIQUES D'INTERACTION

De nombreuses techniques ont été proposées pour améliorer les interfaces graphiques. Nous en analysons un certain nombre dans cette section afin de montrer que le modèle d'interaction instrumentale dépasse largement le cadre des interfaces graphiques classiques.

Couplage action/perception

L'importance du couplage entre action et perception a été noté par de nombreux auteurs et appliqué notamment aux systèmes de visualisation d'information comme l'Information Visualizer [11] et les Dynamic Queries [1]. Dans ces systèmes, l'action continue sur des paramètres produit une réaction continue des objets affichés, facilitant l'ajustement de réglages. Cela correspond pour nos instruments au cas où le décalage temporel du retour d'information sur les objets édités est nul.

Dans Pad++ [6], une surface plane infinie peut être affichée à n'importe quelle résolution. La navigation dans cet espace utilise un instrument permettant de se déplacer en XY et de contrôler le facteur de zoom. Le fort couplage entre les actions de navigation et les informations affichées permet de se repérer aisément. Cette interface a permis l'invention d'un nouveau type d'outil que l'on peut laisser sur le plan de travail et retrouver plus tard là où on les a laissés, comme de vrais outils [7]. Selon notre modèle, ces outils sont des instruments parfaitement réifiés.

Interaction gestuelle

Dans l'interaction de tracé ("drag-and-drop", cliquer-tirer), seules les positions de départ et d'arrivée sont utilisées, sauf pour les logiciels de dessin qui permettent la saisie de tracés à main levée. Dans l'interaction de "drag-and-drop", un retour d'information est fourni au niveau de l'instrument, indiquant les zones sensibles lorsque l'on passe dessus. Mais les objets édités ne prennent pas part à cette interaction. Dans la nouvelle version du Finder du Macintosh (MacOS 8.0), il est possible de parcourir une hiérarchie de dossiers par une simple interaction de tracé : si l'on reste immobile sur l'icône d'un dossier, la fenêtre du dossier s'ouvre et permet de naviguer vers un sous-dossier. Il s'agit donc d'un instrument de navigation sophistiqué, qui interagit avec l'objet édité (le système de fichiers) tout au long de l'interaction et non pas seulement à la fin.

Dans les interfaces gestuelles à reconnaissance de marques [4], l'instrument logique est la feuille transparente superposée à la surface de travail et sur laquelle s'inscrit l'encre électronique. Cette feuille interprète le tracé et transmet la commande correspon-dante à l'objet édité. Dans les Marking Menus [19] deux instruments sont combinés : les marques commandent un menu radial qui n'apparaît qu'en cas d'hésitation de l'utilisateur, qui lui-même contrôle l'objet édité.

Interaction bimanuelle

Les interfaces actuelles utilisent souvent la main non-dominante pour la sélection de mode par l'intermédiaire de touches du clavier. D'autres formes d'interaction bimanuelles sont obtenues en affectant un second périphérique de localisation (en général une track-ball) à la main non-dominante.

Un bon exemple d'interaction bimanuelle est la technique des ToolGlasses [8]. Une ToolGlass est une palette semi-transparente dont la position est contrôlée par la main non-dominante. L'activation d'un outil de la palette est réalisée par un clic "à travers", qui spécifie simultanément l'outil utilisé et l'objet auquel il s'applique. Si nécessaire, une interaction de tracé peut être enchaînée avec le clic "à travers". Cette forme d'interaction s'apparente à des actions familières comme le tracé d'un trait avec la main dominante en utilisant une règle tenue par la main non dominante. Elle permet des gains de temps appréciables [20] dus au parallélisme possible entre l'action des deux mains. Les ToolGlasses s'interprètent immédiatement comme des instruments dont la caractéristique principale est d'éliminer le décalage spatial entre l'instrument logique et l'objet édité, ce qui les rend plus direct que les boîtes de dialogue et de propriétés. De plus ces instruments sont complètement réifiés puisque l'utilisateur peut composer ses propres ToolGlasses.

Nouveaux périphériques physiques

Nous avons vu que l'affectation d'un instrument physique à un instrument logique peut nécessiter une action explicite de sélection de la part de l'utilisateur, à moins de multiplier les périphériques d'entrée ou d'augmenter leurs degrés de liberté.

Plusieurs chercheurs ont introduit un dispositif permettant de capturer la rotation de la souris dans le plan horizontal [20], avec des applications immédiates aux éditeurs graphiques. La Rocking Mouse [2] est une souris 2D qui mesure le tangage et le roulis, soit deux nouvelles dimensions. Wacom propose des tablettes qui captent la pression et l'inclinaison du stylet et qui peuvent distinguer plusieurs stylets, notamment un stylet réversible dont une extrémité sert à dessiner et l'autre à effacer. Les chercheurs de Toronto et du Media Lab ont commencé à explorer la notion de "graspable interface" [14, 16], qui permet de manipuler les objets de l'interface par action directe sur des objets physiques. Tous ces travaux ont pour objet de "dé-virtualiser" les instruments de l'interaction graphique, en transférant les instruments logiques vers les instruments physiques afin de mieux exploiter notre dextérité manuelle.

Réalité augmentée

Une approche symétrique consiste à prendre des instruments et des objets physiques, et à y intégrer des capacités de traitement de l'information de façon à utiliser nos capacités naturelles à interagir avec des objets physiques. Cette approche, dite de réalité augmentée [27, 5], utilise plusieurs techniques pour réaliser cette fusion entre monde physique et monde informatique : intégration de capacités de calcul dans les objets physiques, projection de données informatiques sur les objets physiques comme le papier, etc.

Dans tous les cas, ce sont des instruments physiques qui supportent l'interaction (stylos, briques de Lego, papier, etc.). Les instruments logiques tendent à disparaître car les objets eux-mêmes ont une existence physique : l'interaction instrumentale a lieu alors principalement dans l'univers physique. La réification n'est pas absente des systèmes de réalité augmentée. Ainsi, le répondeur téléphonique de Durell Bishop distribue une bille à chaque message qu'il reçoit. La bille peut être insérée dans le répondeur pour lire le message ou dans le téléphone pour rappeler son auteur [13]. On peut aussi simplement la garder dans sa poche comme pense-bête. En réifiant le message en une bille, le système permet d'utiliser celle-ci non seulement comme objet contenant le message mais également comme instrument de communication et d'interaction sociale.

La communication instrumentale de C. Cadoz

Dans son étude du geste comme canal de communication, Claude Cadoz [9] décrit les trois fonctions du geste : la fonction epistémique (toucher pour acquérir de l'information), la fonction ergotique (transformer les objets par action physique) et la fonction sémiotique (communiquer de l'information). Puis il introduit la notion de geste instrumental qui combine ces trois fonctions : c'est un geste qui s'applique à un objet matériel, qui nécessite une interaction physique avec celui-ci, et dont les effets sur l'objet sont traduits en messages communicationnels. Cadoz classe ces gestes en gestes d'excitation qui fournissent l'énergie qui sera traduite en information, gestes de modulation continus ou discrets qui modifient les propriétés de l'instrument, et gestes de sélection qui permettent de choisir des éléments.

Bien que notre notion d'instrument soit légèrement différente de celle de Cadoz, on retrouve ces trois types d'interactions dans notre modèle : les geste de sélection choisissent les instruments logiques, les gestes d'excitation démarrent les interactions et les gestes de modulation contrôlent leur déroulement.

CONCLUSION

Nous avons montré dans cet article que la majorité des applications actuelles se conforment à un modèle qui détourne les principes de la manipulation directe. Nous avons proposé un nouveau modèle, l'interaction instrumentale, qui permet de décrire les applications existantes ainsi qu'un grand nombre de nouvelles techniques d'interaction.

Au-delà de ce pouvoir descriptif, l'objet de notre modèle est de servir de guide d'une part aux concepteurs d'interfaces, d'autre part aux développeurs d'outils de construction d'interface. Si l'on veut améliorer la qualité des applications les plus répandues en développant l'interaction instrumentale, il faut que les environnements de développement disposent de composants prêt à l'emploi permettant de la mettre en oeuvre. C'est la principale direction dans laquelle nous souhaitons poursuivre ces travaux.

REMERCIEMENTS

L'auteur remercie particulièrement l'un des relecteurs anonymes dont les commentaires détaillés ont permis d'améliorer la qualité de cet article.

BIBLIOGRAPHIE

1. C. Ahlberg, C. Williamson, B. Shneiderman. Dynamic Queries for Information Exploration: An Implementation and Evaluation. In Proc. ACM Conference on Human Factors in Computing Systems, CHI'92, ACM Press, 1992, pp 619-626.

2. R. Balakrishnan, T. Baudel, G. Kurtenbach, G. Fitzmaurice. The Rockin' Mouse: Integral 3D Manipulation on a Plane. In Proc. ACM Conference on Human Factors in Computing Systems, CHI'97, ACM Press, 1997, pp 311-318.

3. C. Bastien, D. Scapin. Ergonomic Criteria for the Evaluation of Human-Computer Interfaces. Rapport Technique INRIA ndeg. 156, juin 1993.

4. T. Baudel. Aspects morphologiques de l'interaction humaine-ordinateur : étude de modèles d'interaction gestuels. Thèse de doctorat, LRI, Université de Paris-Sud, décembre 1995.

5. M. Beaudouin-Lafon. Beyond the Workstation: Mediaspaces and Augmented Reality. In Proc. HCI'94, People and Computers IX, Cambridge University Press, 1994, pp 9-18.

6. B. Bederson, J. Hollan. Pad++: A Zooming Graphical Interface for Exploring Alternate Interface Physics. In Proc. ACM Symposium on User Interface Software and Technology, UIST'94, ACM Press, 1994, pp 17-26.

7. B. Bederson, J. Hollan, A. Druin, J. Stewart, D. Rogers, D. Proft. Local Tools : an Alternative to Tool Palettes. In Proc. ACM Symposium on User Interface Software and Technology, UIST'94, ACM Press, 1994, pp 169-170.

8. E. Bier, M. Stone, K. Pier, W. Buxton, T. De Rose. Toolglass and Magic Lenses : the See-Through Interface. In Proc. ACM SIGGRAPH, 1993, pp 73-80.

9. C. Cadoz. Le geste canal de communication homme-machine - la communication "instrumentale". Technique et Science Informatique, 13(1), janvier 1994, pp 31-61.

10. S. Card, T. Moran, A. Newell. The Psychology of Human-Computer Interaction. Lawrence Erlbaum Associates, 1983.

11. S. Card, G. Robertson, J. Mackinlay. The Information Visualizer, an Information Workspace. In Proc. ACM Conference on Human Factors in Computing Systems, CHI'91, ACM Press, 1991, pp 181-187.

12. S. Chatty. Extending a Graphical Toolkit for Two-Handed Interaction. In Proc. ACM Symposium on User Interface Software and Technology, UIST'94, ACM Press, 1994, pp 195-204.

13. G. Crampton Smith. The Hand That Rocks The Cradle. I.D., mai/juin 1995, pp 60-65.

14. G. Fitzmaurice, H. Ishii, W. Buxton. Laying the Foundations for Graspable User Interfaces. In Proc. ACM Conference on Human Factors in Computing Systems, CHI'95, ACM Press, 1995, pp 442-449.

15. J. Foley, A. van Dam. Computer Graphics, Principles and Practice. Addison-Wesley, 1992.

16. H. Ishii, B. Ullmer. Tangible Bits: Towards Seamless Interfaces between People, Bits and Atoms. In Proc. ACM Conference on Human Factors in Computing Systems, CHI'97, ACM Press, 1997, pp 234-241.

17. R. Jacob, L. Sibert, D. McFarlane, M. Preston Mullen. Integrability and Separability of Input Devices. ACM Transactions on Human Computer Interaction, 1(1), mars 1994, pp 3-26.

18. P. Kabbash, W. Buxton, A. Sellen. Two-Handed Input in a Compound Task. In Proc. ACM Conference on Human Factors in Computing Systems, CHI'94, ACM Press, 1994, pp 417-423.

19. G. Kurtenbach, W. Buxton. The Limits of Expert Performance Using Hierarchical Marking Menus. In Proc. ACM Conference on Human Factors in Computing Systems, InterCHI'93, ACM Press, 1997, pp 482-487.

20. G. Kurtenbach, G. Fitzmaurice, T. Baudel, W. Buxton. The Design of a GUI Paradigm based on Tablets, Two-hands, and Transparency. In Proc. ACM Conference on Human Factors in Computing Systems, CHI'97, ACM Press, 1997, pp 35-42.

21. A. Michotte. La perception de la causalité. Publications Universitaires de Louvain, 1946.

22. J. Nanard. La manipulation directe en interaction homme-machine. Thèse d'état, Université de Montpellier II, 1990.

23. D. Norman, S. Draper (Eds). User-Centered System Design: New Perspectives on Human-Computer Interaction. Lawrence Erlbaum Associates, 1986.

24. B. Shneiderman. Direct Manipulation : a Step Beyond Programming Languages. IEEE Computer, 16(8), août 1983, pp 57-69.

25. D. Smith, C. Irby, R. Kimball, B. Verplank, E. Harslem. Designing the Star User Interface. Byte, 7(4), avril 1982, pp 242:282.

26. S. Tang, M. Linton. Pacers, Time Elastic Objects. In Proc. ACM Symposium on User Interface Software and Technology, UIST'93, ACM Press, 1993, pp 35-44.

27. P. Wellner, W. Mackay, R. Gold. Computer-Augmented Environments. Special Issue of Communications of the ACM, 23(7), juillet 1993.