Interaction

2 - Dénomination

a - Généralités

S'appliquant aussi bien aux termes de commande qu'aux labels des touches fonctions ou aux options de menus, l'activité de dénomination est cruciale pour la qualité de l'interface homme-ordinateur.

Pour rendre la communication homme-ordinateur aussi naturelle que possible, i.e., prédictible par l'utilisateur, les entrées qu'il effectue doivent appartenir à un langage correspondant bien à ses attentes, capacités et expérience.

Un langage tel que le langage naturel est certainement le plus familier. Cependant ce n'est pas toujours le bon choix. Dans de nombreuses applications spécialisées, d'autres langages tel le langage mathématique, sont probablement des formes de communication meilleures que des termes français.

La langue naturelle n'est un moyen utile de communication que dans des situations où il y a peu de jargon, où les messages n'ont pas à être répétés souvent, et quand l'idée à transmettre est définie précisément.

Dans les communications avec l'ordinateur, il y aura toujours des limitations sémantiques (i.e., liées au sens) ou syntaxiques ( i.e., liées à l'arrangement des mots selon des règles) dans l'utilisation du langage naturel. De plus, les utilisateurs n'accepteront un langage restreint que s'il est adéquat pour décrire les tâches à exécuter.

Contrairement aux langages qui ont évolué au cours du temps (à part peut être l'espéranto, qui n'est d'ailleurs pas une vraie langue naturelle), un langage de commande est une création du concepteur. Bien qu'un langage de commande soit restreint, le concepteur peut créer un langage qui n'a pas les inconvénients du langage naturel. Le concepteur peut définir un vocabulaire très précis, mais ce vocabulaire est forcément en interaction avec le vocabulaire du langage naturel. Un nouveau langage de commande et le langage naturel doivent bien s'harmoniser. Des incohérences conduisent à une performance dégradée de l'utilisateur. Souvent, les concepteurs tendent à croire qu'il existe une correspondance univoque entre les termes de commande et leur signification, i.e., les fonctions auxquelles elles correspondent, alors que souvent les utilisateurs identifient certaines commandes comme étant identiques. Par ailleurs, les concepteurs imaginent que les utilisateurs ne font aucune hypothèse, et s'en tiennent strictement à ce qui leur est dit sur la commande, alors qu'on sait qu'ils effectuent de nombreux présupposés. Enfin, les concepteurs croient aussi que les déductions, interprétations faites par les opérateurs se font à partir d'un système de référence invariant, alors que la signification d'une commande est très dépendante du contexte immédiat.

b - Recommandations

Avec toutes les réserves liées aux tâches et applications particulières, il est possible de fournir quelques recommandations de conception des langages de commande: un bon langage de commande doit être précis, homogène, de taille raisonnable, flexible, permissif, et comporter un guidage.

b1 - Précis
Tout d'abord, la dénomination des commandes devrait refléter le point de vue de l'utilisateur plutôt que celui du programmeur. Des termes signifiants doivent être employés; par exemple, il vaut mieux utiliser "ajouter", "tracer", "sortir" que "option1", "option2", "option3". Des termes communément admis doivent être utilisés (e.g., o pour oui et n pour non au lieu de 0 ou1).

Un langage de commande doit être simple et le comportement du logiciel doit être prédictible et apparaître consistant logiquement en toutes circonstances.

Une commande doit décrire exactement la fonction a exécuter. Par exemple, imprimer pourra signifier imprimer une ligne, ou une page, ou un texte, alors que lister pourra signifier lister le contenu d'un fichier.

L'utilisation de termes sémantiquement proches, tels Ajouter, Somme et Total doit être bannie.

b2 - Homogène
Tous les termes de commande doivent être utilisés de façon homogène et standardisés du point de vue du sens, d'une transaction à une autre, et souligner les différences de fonction (e.g., deux commandes ne devraient pas être dénommées respectivement "Afficher" et "Voir" quand l'une permet l'édition et l'autre pas). Les termes doivent aussi être standardisés. Par exemple, si 1 représente oui et 0 représente non, alors cette représentation doit être maintenue tout au cours du dialogue (bien que y et n eussent été préférables). De plus, cette représentation ne doit pas être en conflit avec les conventions habituelles, comme 4 pour oui et 6 pour non.

b3 - Flexible
Il devrait être possible aux utilisateurs de dénommer eux-mêmes leurs fichiers ou commandes, notamment ceux et celles qui sont utilisés fréquemment.

L'utilisateur doit pouvoir sentir qu'il contrôle le dialogue en entrant ses commandes et, à mesure qu'il acquiert de l'expérience, il doit avoir l'option d'utiliser des formes plus brèves de commande.

b4 -Taille
Bien que le nombre de commandes dans une séquence ne doive pas être trop élevé, l'utilisation de codes, de commandes mnémoniques et de formats fixes doit etre limitée. D'un autre côté, le concepteur ne peut donner entière liberté d'utilisation du langage naturel. Dans le premier cas, les commandes seront trop structurées, dans l'autre pas assez.

Chaque entrée doit être courte afin de favoriser la détection d'erreurs.

b5 - Permissif
Le logiciel devrait permettre des erreurs, en particulier des erreurs de frappe ou des fautes d'ortographe.

Le logiciel devrait être capable de distinguer des abréviations proches et de reconnaître par exemple "i", ou "imp" pour imprimer.

Le logiciel doit être capable d'interpréter capitales ou minuscules comme ayant la même valeur et reconnaître les erreurs de frappe comme l'utilisation inappropriée du shift (e.g., 1 et & sur un clavier azerty, ou 4 et $ sur un qwerty).

Entrer une commande et ses paramètres ne devrait pas requérir l'utilisation contraignante de zéros ou de blancs.

Quand l'entrée de paramètres est nécessaire, l'utilisateur doit pouvoir les entrer individuellement, dans une séquence, ou pas du tout (en utilisant des valeurs par défaut), selon son degré d'expérience.

b6 - Guidage
Il doit y avoir une forme de guidage à la demande, aisément accessible dans le cas où l'utilisateur a oublié certaines commandes. De plus, à chaque étape des séquences d'action, l'utilisateur devrait pouvoir demander ce qui est attendu de lui, ce qui lui est possible.

Dans l'avenir, le logiciel pourra peut-être fournir une aide automatique chaque fois qu'il pourra déterminer que l'utilisateur est en difficulté.

c - Abréviations

Chaque fois que possible, le concepteur devrait fournir pour les utilisateurs expérimentés un ensemble d'abréviations bien choisies, en particulier pour les commandes répétitives (dans le cas de commandes répétitives, on peut envisager l'utilisation de touches fonctions, dans une aire specialisée).

Dans l'utilisation d'abréviations, il convient de n'employer que celles qui sont le plus largement admises car les utilisateurs pourront avoir rencontré certaines abréviations qui signifient autre chose. Par exemple, "e" peut signifier éditer sur un système et effaçer sur un autre.

L'utilisateur doit pouvoir entrer à sa guise une abréviation ou la commande complète.

Les abréviations sont déconseillées pour les affichages.

Les utilisateurs doivent être informés de la règle d'abréviation utilisée.

Ils doivent pouvoir définir leurs abréviations eux-mêmes.

Il ne doit pas y avoir de ponctuation dans une abréviation.

La troncature est une méthode d'abréviation recommandée.

Les abréviations doivent être beaucoup plus courtes que la commande complète.

Il ne doit y avoir qu'une abréviation par commande.

L'auto-complètement des abréviations est deconseillé.

  page précédente page suivante