Résumé :
Face à la prolifération et à la démocratisation
des dispositifs d'entrée " non standards ", il est nécessaire
de disposer de nouveaux outils de construction d'interfaces graphiques.
Afin de faciliter la sélection et l'exploitation de nouveaux dispositifs
d'entrée, nous proposons d'inclure dans ces outils un modèle
de " dispositifs concrets ", ainsi qu'un mécanisme de connexion
autorisant l'émulation de dispositifs. Par la suite, nous proposons
une piste possible pour la construction d'un tel modèle.
Mots-clés :
dispositifs d'entrée, outils, interaction, modèle physique,
émulation.
Introduction
Depuis de nombreuses années, la configuration
des ordinateurs individuels et des stations de travail s'est stabilisée
en termes de dispositifs d'entrée, et la façon dont les applications
interactives gèrent ces dispositifs n'a guère évolué
[8]. Cependant, les besoins en nouveaux dispositifs augmentent, notamment
en ce qui concerne les ordinateurs portables et les mondes virtuels, et
ils risquent d'augmenter encore avec l'apparition de nouveaux modes d'interaction.
Non seulement les dispositifs autres que le clavier et la souris prolifèrent
et se diversifient, mais surtout, ils sont de moins en moins marginalisés.
Malheureusement, les applications interactives manquent
encore énormément de souplesse. A ce jour, elles permettent
l'interchangeabilité technique de certains dispositifs, mais sont
incapables d'exploiter les caractéristiques de nouveaux dispositifs,
et deviennent inutilisables lorsqu'un dispositif n'est pas disponible:
elles manquent de " transparence " [4]. D'autre part, les applications
interactives considèrent que les dispositifs de même " type
", c'est-à-dire compatibles entre eux, sont tous équivalents.
Or, " interchangeabilité technique " ne signifie pas " interchangeablilité
fonctionnelle " : les dispositifs possèdent des caractéristiques
propres qui les rendent adaptés à certaines tâches
mais pas à d'autres [3],[4].
Nous pensons que les outils de conception d'interfaces
doivent à la fois élargir et affiner la notion de compatibilité
entre dispositifs d'entrée en intégrant une meilleure connaissance
des dispositifs concrets, et en utilisant ces connaissances de manière
à accroître leur extensibilité. A cette fin, il est
nécessaire de construire un modèle de dispositifs d'entrée
concrets à la fois assez général pour pouvoir décrire
de nouveaux dispositifs, et assez complet pour pouvoir prendre en compte
les caractéristiques pragmatiques essentielles des dispositifs.
Dans la suite, nous proposons une piste possible
pour la construction d'un modèle de dispositifs concrets, ainsi
qu'un paradigme de connexion à des dispositifs virtuels autorisant
la simulation et l'émulation de dispositifs, ainsi que certaines
vérifications.
Un modèle de dispositifs concrets
Nous présentons un modèle de dispositifs concrets à deux niveaux : le niveau physique et le niveau transducteurs.
* NIVEAU PHYSIQUE : Un dispositif d'entrée peut
être représenté par un ensemble de " systèmes
" et de " sous-systèmes " purement physiques. Ces systèmes
traduisent le comportement du dispositif indépendamment des valeurs
captées, et sont modélisés à l'aide d'un ensemble
de paramètres et d'équations. Certains de ces paramètres
décrivent des grandeurs physiques représentées par
un domaine et une valeur.
A titre d'exemple, un joystick possède un
certain nombre de propriétés intrinsèques: masse du
manche, raideur des ressorts, retour mécanique pour le bouton. Il
peut être représenté à l'aide du système
" bouton ", du système " manche " et des deux sous-systèmes
" axeX " et " axeY " (figure 1). Les systèmes axeX et axeY décrivent
chacun deux grandeurs physiques indissociables: la position (le manche
du dispositif se déplace) et l'angle du manche. Nous supposons que
ces deux sous-systèmes dérivent d'un modèle mécanique
générique, comprenant des équations et des paramètres
linéaires et angulaires supplémentaires, tels que la vitesse,
l'accélération, la résistance du dispositif et la
force appliquée par l'opérateur.
Discussion
Les outils de construction ou d'aide à
la construction d'interfaces qui intègrent des connaissances sur
les dispositifs concrets sont peu nombreux. Parmi ceux-ci, Toto est un
outil d'aide à la sélection de techniques d'interaction à
partir des caractéristiques physiques et pragmatiques des dispositifs
[1]. L'intérêt de cet outil est qu'il décrit les dispositifs
d'entrée à partir d'un certain nombre de propriétés
significatives, et qui sont assez générales pour pouvoir
décrire un grand nombre de dispositifs. Ces propriétés
s'inspirent des travaux sur les taxonomies, qui placent les dispositifs
d'entrée existants dans un espace de comparaison et d'analyse, en
donnant parfois des pistes pour la conception de futur dispositifs.
Les trois principales taxonomies de dispositifs
sont celles de Buxton [2], de Foley, Wallace, et Chan [7], et de Card,
Mackinlay et Robertson [5],[6]. Lipscomb et Pique [10] ont étendu
la classification de Buxton en ajoutant un certain nombre de propriétés
significatives.
Notre modèle et celui de Card, Mackinlay
et Robertson présentent des concepts similaires: la composition
de transducteurs élémentaires, et l'existence de fonctions
de transposition de domaines (fonctions de résolution) permettant
de décrire des dispositifs discrets. Nous avons aussi fait mention
de la possibilité d'instancier des dispositifs génériques.
Une des différences majeures est l'adjonction d'un modèle
physique quasi-indépendant des dimensions captées par le
dispositif. Ce modèle physique présente un certain nombre
d'intérêts:
* Il décrit l'ensemble des propriétés caractérisant
l'état du dispositif, ainsi que leurs relations, et non pas uniquement
les propriétés captées. Ceci permet par exemple d'"unifier"
les joysticks linéaires et angulaires (dont certains, comme le manche
à balai d'avion, ont une faible variation angulaire), de même
que dispositifs isotoniques, isométriques et intermédiaires
(joysticks).
* Il permet de décrire des comportements propres au dispositif.
Dans notre exemple, le modèle mécanique permet de déduire
des propriétés de stabilité, et donc de volatilité
des données. Il est même possible, pour les systèmes
à ressort, de calculer la fréquence propre du dispositif,
et d'en déduire des critères de performance.
* Le modèle du dispositif constitue le lien physique entre l'utilisateur
et les dimensions captées. En agissant sur une dimension, l'utilisateur
agit en réalité sur plusieurs grandeurs physiques (déplacement,
force, vitesse, etc). Il est donc possible d'établir un lien direct
entre les données reçues et ce qui est physiquement accompli
par l'utilisateur. D'autre part, des modèles d'utilisateur pourraient
permettre de déduire les conséquences des limitations physiques
sur les données, ainsi que les grandeurs caractéristiques
du dispositif (en termes de retour).
En outre, nous pensons que ce modèle peut
prendre en compte la majeure partie des propriétés énoncées
par Lipscomb et Pique [10], souvent de façon plus détaillée.
A titre d'exemple, la position au repos, ainsi que les positions émettant
un retour (mécanique, tactile, visuel, auditif, butée), sont
différents types de positions reconnaissables. Cependant, la propriété
d'orthogonalité/emboîtement n'est pas prise en compte, car
les dimensions ne possèdent pas de référentiel.
Pour être inclus dans un outil de construction
d'interfaces, ce modèle doit posséder au moins deux caractéristiques
: la simplicité de description et l'extensibilité. En ce
qui concerne les dispositifs existants, la simplicité de description
peut être améliorée grâce à une taxonomie
de dispositifs structurée en classes et sous-classes. Cependant,
une des faiblesses de ce modèle est que la plupart des paramètres
nécessitent des mesures expérimentales. Il est donc indispensable
de donner une totale liberté au concepteur quant à l'instanciation
de ces paramètres, quitte à diminuer le nombre de propriétés.
L'autre point important est l'extensibilité : il doit être
possible d'ajouter de nouveaux types de dispositifs, quitte à créer
de nouveaux modèles physiques. Le modèle mécanique
peut s'appliquer à un certain nombre de dispositifs, mais il est
tout à fait envisageable de définir d'autres grandeurs physiques,
voire d'autres modèles (notamment pour des dispositifs plus complexes
qui possèdent un grand nombre de degrés de liberté
non indépendants).
Malgré tout, il faut garder à l'esprit
que le modèle physique ne décrit que partiellement le dispositif
d'entrée, étant donné le rôle important joué
par la partie logicielle (le pilote périphérique, par exemple).
Ainsi, certains dispositifs allient un modèle physique pauvre à
un traitement logiciel complexe. C'est le cas des microphones pour le traitement
de la parole.
Un mécanisme de connexion de dispositifs autorisant
l'émulation
Nous proposons un paradigme inspiré du modèle
de flot de données (data flow), permettant de modifier le comportement
des dispositifs concrets de manière à les connecter à
des dispositifs virtuels. Dans ce modèle, nous supposons que chaque
canal du dispositif envoie des valeurs entières de manière
régulière. Les phénomènes temporels sont abordés
de manière partielle, mais il est possible d'envisager une extension
du modèle afin de prendre en compte le débit, les délais,
et la synchronisation des données.
Le dispositif est représenté par l'ensemble
de ses canaux (canaux de sortie), correspondant aux transducteurs du dispositif
concret. Chaque canal possède un domaine de valeurs entières
et des propriétés issues du modèle concret du dispositif.
Le dispositif virtuel est décrit de manière similaire: un
ensemble de canaux (canaux d'entrée), des domaines et des propriétés.
Nous dirons qu'un canal de sortie peut être connecté à
un canal d'entrée s'il possède le même domaine, et
au moins les mêmes propriétés. Nous prendrons comme
exemple un joystick devant être connecté à un pointeur.
Chacun des deux canaux du pointeur possède un domaine correspondant
à la résolution de l'écran, et une propriété
de non-volatilité: ils conservent leur valeur lorsque l'opérateur
n'exerce plus d'effort sur le ou les dispositif(s) d'entrée. Les
deux canaux du joystick sont quant à eux volatiles et possèdent
une valeur au repos. Cette valeur est la valeur émise par le dispositif
lorsqu'il est relâché. Dans la figure 3, un ensemble d'opérateurs
a été appliqué aux canaux de sortie d'un joystick
de manière à pouvoir le connecter au pointeur (seul un canal
est représenté).
En pratique, il est bien sûr conseillé
d'ajouter des propriétés supplémentaires afin d'assurer
une certaine utilisabilité. Notons que les propriétés
de fusion et d'influence sont parfois utiles (voir l'article de Jacob et
al [9] sur l'intégrabilité et la séparabilité
des dimensions). La propriété de fusion entre les canaux
d'entrée X et Y éliminerait ainsi les deux dernières
constructions de la figure 4. De même, imaginons que nous complétions
notre pointeur par un déclencheur, représenté par
un canal d'entrée de domaine [0,1], et une position au repos nulle.
Il aurait été alors possible d'assurer une certaine fiabilité
en ajoutant la propriété de non-influence entre le pointeur
et le déclencheur.
Discussion
L'intérêt principal de ce modèle
est qu'il met en avant la partie " transformation " du dispositif, qui
est souvent oubliée ou confondue avec le dispositif. A titre d'exemple,
les dispositifs de pointage tels que la souris, la tablette graphique ou
le joystick, possèdent chacun une transformation particulière
qui les rendent adaptés à la tâche de pointage. Ce
modèle possède donc un certain intérêt didactique,
et permet en outre de construire divers types de transformations de manière
exploratoire, tout en vérifiant que certaines propriétés
sont conservées. En outre, ce modèle pourrait facilement
être intégré à un éditeur graphique,
ce qui lui conférerait une grande simplicité d'utilisation.
Conclusion
Le modèle que nous avons présenté
mérite d'être raffiné : à quel niveau de détail
doit-on s'arrêter ? Doit-on décrire certains comportements
spécifiques comme l'électronique du dispositif et le pilote
périphérique dans le niveau physique, dans le niveau transducteur,
ou dans la transformation ? Peut-on modéliser des transformations
complexes mettant en oeuvre du traitement de signal, voire de la classification
(reconnaissance de geste, de la parole) dans un paradigme de flot de données
? Ces questions seront traitées dans nos futurs travaux, où
nous nous attacherons à définir et à implémenter
le modèle présenté de manière informelle.
Nous pensons qu'en intégrant dans un outil
de conception la chaîne complète reliant l'utilisateur au
dispositif virtuel, il est possible de faciliter le développement
d'applications à la fois transparentes et ergonomiques. La principale
nouveauté de cette " chaîne " est qu'elle permet à
l'outil de remonter le fil des données jusqu'au dispositif concret.
L'adjonction d'un modèle de l'utilisateur pourrait éventuellement
donner lieu à modèle prédictif générique
instanciable avec des dispositifs existants ou non. Une autre perspective
possible de ces travaux serait d'intégrer la " chaîne " complète
des données dans les applications interactives, afin qu'elles puissent
s'adapter intelligemment aux dispositifs disponibles.
Bibliographie
[1] Bleser T.W., Sibert J., " Toto : A tool for Selecting Interaction
Techniques ", Third Annual Symposium on User Interface Software and
Techniques, Proceedings of the ACM SIGRAPH Symposium, 1990.
[2] Buxton W., " Lexical and Pragmatic Considerations of Input Structures
", Computer Graphics, 17(1), pp 31-17, 1983.
[3] Buxton, W., " There's More to Interaction than Meets the Eye
: Some Issues in Manual Input ", in Norman. D.A, Draper S.W., " User
Centered System Design : New Perspectives on Human-Computer Interaction
", pp 319-337, 1986.
[4] Buxton W., " Touch, Gesture and Marking ", Chap. 7 in Baecker
R.M., Grudin J., Buxton W., Greenberg S., " Readings in HCI : Toward the
year 2000 ", 1995.
[5] Card S.K., Mackinlay J.D., Robertson G.G., " The Design Space
of Input Devices ", Proceedings of the CHI'90 Conference on Human Factors
in Computing Systems, 117-124, 1990.
[6] Card S.K., Mackinlay J.D., Robertson G.G., " A Morphological
Analysis of the Design Space of Input Devices ", ACM Transactions on
Office Information Systems, 9, pp 99-122, 1991.
[7] Foley J.D., Wallace V.L., Chan P., " The Human Factors of Computer
Graphics Interaction Techniques ", IEEE Computer Graphics and Applications,
4(11), 13-48, 1984.
[8] ISO, " Information processing systems - Computer graphics -
Graphical Kernel System (GKS) ", ISO 7942, ISO Central Secretariat,
1985.
[9] Jacob R.J.K., Sibert L.E., McFarlane D.C., Preston M., " Integrality
and Separability of Input Devices ", ACM Transactions on Computer-Human
Interaction, Research Contributions, 1, pp 3-26, 1994.
[10] Lipscomb J., Pique M.E., " Analog Input Device Physical Characteristics
", SIGCHI Bulletin, 25(3), pp. 40-45, 1993.