UP :
1. Espace de Conception
PREVIOUS :
1. Espace de Conception
NEXT :
1.4 Du matériel ou de l'imagination?
TOP : Table des matiéres
1.3 Les 'objets logiciels'
Le matériel informatique détermine les bornes de l'espace que le
concepteur explore à la recherche d'un design. Cet espace est vaste et
non structuré. Si on considère uniquement la sortie vidéo,
l'espace brut du concepteur se constitue des milliards de combinaisons de N
points (N = définition d'écran) que l'on puisse former en
attribuant à chaque point une couleur parmi les M couleurs possibles (M
dépend de la profondeur du pixel). Heureusement, le concepteur dispose
d'un ensemble de concepts de plus haut niveau qui lui permettent de structurer
cet ensemble de points en objets graphiques: fenêtres, icônes,
menus,... La plupart des outils de développement permettent au
concepteur de s'exprimer directement au moyen de ces concepts et de ne
descendre au niveau du pixel que lorsque les concepts offerts au niveau
supérieur ne correspondent pas à ce qu'il cherche. Nous
décrivons brièvement les objets les plus communs:
- Le curseur: petit objet graphique qui se déplace à
l'écran et indique la position de la prochaine action. Le curseur est
l'équivalent électronique de la main de l'utilisateur
(Billingsley, 1988). Les curseurs les plus fréquents sont la barre
verticale pour indiquer la prochaine opération sur un texte, la
flèche pour désigner un objet, la croix pour dessiner un pixel
individuel, la gomme pour effacer un ensemble de pixels, la loupe, la montre,
etc. La forme du curseur renseigne l'utilisateur sur la nature de
l'opération qu'il va effectuer ou qu'il est en train d'exécuter.
La relation métaphorique entre la forme du curseur et l'opération
peut cependant induire certaines ambiguïtés (par exemple, le
rôle du curseur en forme de main).
- Les icônes: objets graphiques qui représentent un
fichier, un programme, un outil ou une opération. Le symbole graphique
est éventuellement complété par un mot. La relation
sémantique entre une icône et l'objet ou la commande qui lui est
associé s'appelle 'distance articulatoire' (Blankenberger & Hahn,
1991). Lodding (1983) distingue les icônes figuratives (par exemple, une
imprimante), les icônes abstraites (par exemple, une feuille de papier
qui représente un fichier) et les icônes arbitraires (pas de lien
évident entre l'icône et sa signification). Certaines icônes
animées permettent de représenter l'état ou la
transformation d'état de l'objet: lorsque l'icône de la poubelle
gonfle, elle indique qu'au moins un fichier est en attente d'effacement;
lorsque l'icône 'facteur' trépigne, elle indique qu'un message est
en attente, etc. Parmi les conventions établies, on notera qu'une
icône apparaissant en contraste inversé indique que l'objet
correspondant a été sélectionné et une icône
apparaissant en gris signale généralement que cet objet est
ouvert ou en fonction (donc non disponible). Blankenberger & Hahn (1991)
comparent des représentations iconiques et textuelles d'un jeu de
commandes de traitement de texte. Les deux modes de représentation ne se
différencient pas quant au taux d'erreur, mais les
représentations iconiques conduisent en général à
des temps de réaction plus courts (sauf si la représentation
textuelle a des qualités graphiques particulières). La
supériorité des icônes est accrue si celles-ci apparaissent
à des positions fixes.
- Les fenêtres: sous-espaces de l'écran
indépendants les uns des autres, que l'on peut considérer comme
des écrans dans l'écran. L'utilisateur peut
généralement les fermer, les déplacer, les agrandir ou les
rétrécir au moyen de 'poignées' (boutons particuliers
décrits ci-après) ou de commandes figurant dans les menus. Au
sens large, toute zone d'écran (y compris un menu) est une
fenêtre. Au sens devenu plus habituel, une fenêtre constitue une
ouverture à travers laquelle l'utilisateur aperçoit une partie
d'un document, d'un fichier ou peut entrer des commandes. Il existe deux
manières de faire défiler le contenu d'une fenêtre au moyen
des barres de défilement (scrollbars): déplacer le contenu dans
la fenêtre ou la fenêtre sur le contenu. Dans le second cas,
abaisser l'ascenseur (ou slider - le symbole représentant la position de
la fenêtre dans le document) provoque donc un défilement du
document vers le haut. Cette différence est souvent source d'erreurs de
manipulation chez le débutant. Certains 'sliders' varient en longueur
afin d'indiquer le rapport entre la quantité d'information
présentée dans la fenêtre et celle disponible dans le
fichier. On pourrait imaginer que chaque page d'un document soit
affichée dans une fenêtre différente, poussant en cela
jusqu'au bout la célèbre métaphore du bureau. Toutefois,
en n'ouvrant qu'une fenêtre par document (et en obligeant donc
l'utilisateur à 'scroller' à l'intérieur de cette
fenêtre pour accéder aux diverses pages du document), on a pu
réduire fortement la complexité des interfaces (Billingsley,
1988). Fermer une fenêtre consiste soit à la faire
disparaître de l'écran, soit à la réduire à
la taille d'une icône ('iconify'). L'utilisation de systèmes
multi-fenêtres a un impact significatif sur les méthodes de
travail (pour autant que l'écran soit suffisamment grand), car cela
permet à l'utilisateur de travailler sur plusieurs documents ou
programmes simultanément, de passer d'une tâche à une autre
pour un coût très faible (cliquer dans la bonne fenêtre)
(Billingsley, 1988). On distingue les systèmes dans lesquels les
fenêtres sont juxtaposées ('tiling') et superposées
('overlapping'). Dans les premiers, l'écran est divisé en N
fenêtres par le système ou par l'utilisateur. L'espace propre
à chaque fenêtre est relativement limité. Dans les
systèmes à superposition, la taille de chaque fenêtre est
indépendante de la taille des autres fenêtres. L'utilisateur doit
utiliser diverses commandes pour faire passer une fenêtre devant ou
derrière une autre. En d'autres termes, les systèmes de
fenêtres juxtaposées sont bi-dimensionnels (Billingsley, 1988),
alors que les systèmes à fenêtres superposées
ajoutent une troisième dimension, la profondeur de l'écran. La
fenêtre active, celle qui est au-dessus de toutes les autres, est
généralement affichée dans un graphisme différent
(bords surlignés, couleur différentes ou autre effet visuel).
- Les menus désignent en réalité toute question
à choix multiple intervenant en cours d'interaction. On distingue les
menus de type 'pop-up' qui sont affichés en plein écran au cours
de l'interaction et les menus permanents qui se trouvent en haut de
l'écran ou d'une fenêtre et s'ouvrent lorsque le sujet clique sur
le titre du menu et tire ensuite la souris vers le bas (d'où le nom
'pull-down' menu). Certains menus sont hiérarchisés,
c'est-à-dire comprennent des sous-menus.
Le terme WIMP
désigne les interfaces basés sur ces quatre
éléments (windows, icons, menus and pointers). D'autres objets
sont généralement associés:
- Les boutons simples transmettent une commande au système,
les boutons 'radio' permettent de choisir une option parmi un choix d'options
exclusives et les 'check-box' permettent de sélectionner plusieurs
options complémentaires au sein d'une liste.
- Les palettes présentent un jeu d'icônes qui ont des
fonctions similaires, par exemple un ensemble d'outils de dessin, un ensemble
de patterns de remplissage de forme,...
- Les boîtes de dialogue sont des fenêtres de type
'pop-up', généralement ni déplaçables ni
modifiables, utilisées pour communiquer une information brève
à l'utilisateur. Leur utilisation ponctuelle est souvent liée
à une clarification de l'interaction personne-machine. Leur affichage
au-dessus de toute autre fenêtre interrompt momentanément
l'activité du sujet. L'usage abusif de ces interruptions peut irriter
l'utilisateur.
L'alphabet du concepteur de logiciels interactif comporte en
outre un certain nombre d'objets de base dont les propriétés ont
été progressivement standardisées:
- des lignes droites, courbes ou brisées et autres arcs de cercle
dont l'utilisateur peut déterminer l'épaisseur, le motif
(pattern) de remplissage, le pattern du trait, la couleur, la présence
d'une flèche à une ou aux deux extrémités, ...
- des polygones réguliers ou irréguliers dont l'utilisateur
peut arrondir les angles, épaissir les côtés, fixer le
pattern et la couleur, la transparence;
- des paragraphes dont le sujet peut choisir la police de caractère,
la taille, le style (gras, italique,...), la justification, l'espacement des
lignes, les tabulations, les bordures, la position, le dictionnaire
associé, la numérotation, l'hyphénation, ...
- les bitmaps, c'est-à-dire des ensembles de pixels,
créés soit par des outils de dessin (dont le fameux 'spray' qui
permet les dégradés) ou par numérisation (scanning) d'un
document;
- les objets complexes construits à partir de plusieurs des objets
élémentaires décrits ci-dessus, selon un ordre de plans
déterminé par l'utilisateur;
- les objets résultant de la déformation des objets
élémentaires décrits ci-dessus: rotation, agrandissement,
réduction, déformation selon un axe, étirement à
partir d'un sommet, ...
- ...
Deux remarques importantes doivent être formulées
ici, l'une concerne l'utilisateur novice, l'autre l'utilisateur
expérimenté. Le premier éprouve parfois des
difficultés à 'penser' son document en termes de ces objets. Par
exemple, il n'existe pas d'outil de dessin qui construise un disque avec un
large trou au centre. Le dessinateur doit donc penser à créer un
disque plein et puis à y superposer un disque blanc. Un autre exemple
concerne la difficulté des novices à concevoir un paragraphe
comme un objet en tant que tel, avec un certain nombre de
propriétés attachées, plutôt que comme une
séquence de lignes (séparées par une ligne blanche de la
séquence suivante).
A l'opposé, un utilisateur familier maîtrise la manipulation
directe et la métaphore du bureau. Par exemple, lorsqu'il déplace
une icône fichier d'une fenêtre vers une autre, il se concentre
uniquement sur le déplacement du fichier d'un répertoire vers un
autre. En réalité, sur le plan informatique, il demande au
système d'éteindre et d'allumer certains pixels de telle sorte
que l'ensemble des points de l'icône représentant un 'fichier'
soient, au prochain balayage de l'écran par le canon à
électrons, redessiné un pixel plus a droite, et cela un grand
nombre de fois consécutivement. Cependant, grâce à la
vitesse du procédé, l'utilisateur a vraiment l'impression de
déplacer un objet. Il en arrive facilement à concevoir un curseur
ou une fenêtre presque comme des objets physiques, qu'il
déplacerait réellement. C'est cette illusion qui définit
la manipulation directe. Toutefois, en tant que concepteur, il faut rester
conscient que seul le programme traduit les actions de la souris en actions
à l'écran. C'est le programme (ou la superposition des couches
logicielles) qui définit quels points afficher à l'écran,
quels écritures réaliser sur le disque, etc. Le rôle du
concepteur est de concevoir ces mécanismes de réponse du
système, non de les ignorer.
Voici quelques exemples de mécanismes qui définissent la syntaxe
et la sémantique implicites de la manipulation directe:
- cliquer sur un objet le sélectionne en vue d'une opération
future;
- cliquer deux fois rapidement sur un objet vise à 'ouvrir' cet
objet, c'est-à-dire à lancer l'application associée
à cet objet (si ce n'est pas déjà le cas et d'ouvrir le
document au sein de cette application (le délai entre deux 'clicks'
successifs devant être considérés comme formant un
double-click est généralement réglable);
- cliquer sur le corps d'un objet, garder le bouton enfoncé tout en
bougeant la souris déplace l'objet préalablement
sélectionné, ce déplacement pouvant créer une trace
(par exemple si l'objet est un crayon);
- cliquer sur une 'poignée' d'un objet (généralement un
petit rectangle placé sur un sommet ou sur un côté de
l'objet) et garder le bouton enfoncé tout en bougeant la souris,
déplace ce point de l'objet sans déplacer les autres
'poignées', ce qui déforme l'objet (allongement,
rétrécissement, ...) ;
- lorsqu'un objet est sélectionné, on peut en
sélectionner un second en enfonçant la touche majuscule (ou
'contrôle') au moment où on sélectionne sur l'objet suivant;
- cliquer â côté d'un objet et déplacer la souris,
sélectionnera tout objet dans le rectangle fictif (parfois
matérialisé à l'écran par un contour en
pointillé) dont le déplacement de la souris forme la diagonale;
- la touche 'majuscule' crée généralement des
contraintes sur le dessin construit: la droite dessinée ne peut
être que verticale, horizontale, ou à 45 degrés par rapport
à l'horizontale, l'objet sélectionné ne peut être
déplacé que verticalement ou horizontalement, le polygone en
cours de création sera régulier (côtés
isométriques); ...
En réalité, ces mécanismes
sont aujourd'hui devenus des 'standards'. D'une part, ils sont fortement
intégrés dans l'architecture des systèmes, à un
niveau auquel le concepteur ne désire généralement pas
intervenir. D'autre part, ils sont devenus part entière de la culture
informatique de base et créent de ce fait une inertie semblable à
celle du clavier QWERTY. Ce succès remarquable dans l'histoire des
interfaces s'explique de deux manières complémentaires. En
premier lieu, les métaphores utilisées sont simples et
intuitives. Par exemple, ouvrir un objet (double click) exige une intention
plus forte que de le désigner (simple click); déplacer un objet
peut se percevoir comme 'le garder suspendu', etc... Toutefois, ces conventions
conservent - par définition - un caractère arbitraire. Aussi, la
seconde raison de leur succès est liée à leur utilisation
homogène à travers un grand nombre de programmes (politique
imposée par Apple(TM) aux sociétés développant du
logiciel pour le Macintosh(TM)).