By Ingeniweb. A Django site.
Juin 6, 2008
Pierre-Julien Grizel
Pierre-Julien Grizel
Cogito Ergonome Sum is about »
» Un message très utile

J’ai une passion pour les jeux désuets. L’autre jour, j’installe dans mon Mac le premier des deux CDs qui m’ont été livrés avec un de ces jeux désuets.

Le programme s’installe, tout va bien, je n’éjecte pas le disque et décide de tester immédiatement la chose. Je double-clique sur l’icône, et là, j’ai le message d’erreur suivant :

La fameuse boîte de dialogue

Oui, ça semble anodin comme ça, mais le concepteur de la boîte a pensé que l’utilisateur pouvait avoir le disque 1 dans le lecteur. Le concepteur a pensé que l’utilisateur, en voyant un message “veuillez insérer le disque gna gna gna” aurait pu se dire l’espace d’une fraction de seconde “mais… pourtant j’ai le disque dans le lecteur, que se passe-t-il ?”. Et il l’a anticipé, par cette petite remarque “You currently have Disk 1…”.

J’adore.

L’ergonomie, c’est ça. Sobre, précis, efficace. La classe.

Mai 21, 2008
Pierre-Julien Grizel
Pierre-Julien Grizel
Cogito Ergonome Sum is about »
» Trouver le nom d’un projet

Un article qui change un peu de l’ordinaire. Je présente ici ma méthode à moi pour trouver le nom d’un projet (je prendrai l’exemple d’un site web, mais ce processus peut s’appliquer à beaucoup d’autres choses !). Nommer une chose permet de se l’approprier, d’une certaine façon.

Je ne prétends pas détenir la science infuse sur ce sujet, loin de là. Mais c’est une démarche construite, qui vaut ce qu’elle vaut, et peut servir de base ou d’inspiration pour vos propres projets.

Donc. En préalable, il faut organiser une réunion avec les acteurs impliqués dans la trouvaille du nom. La séance dure grand maximum une heure. Entre 5 et 8 personnes, c’est parfait.

Ça se passe en trois parties : d’abord, trouver les idées générales qui doivent s’appliquer au nom. Ensuite, trouver des noms, et enfin voter. Voici comment se passe chacune des étapes…

1/ Les idées générales

Il faut, en premier lieu, demander à chaque participant de noter sur un bulletin trois grandes impressions que doit dégager le nom du site, ce que doit évoquer le nom du site.

Ça peut être trois mots ou groupes de mots, simples, et le moins “vagues” possible. Ça peut être des termes de “valeur” ou des termes liés au métier ou à la nature de l’intranet. La question à se poser est : “le nom doit être…” ou “le nom doit évoquer…” et les réponses possibles peuvent être, par exemple, “fun“, “drôle“, “sérieux“, “court“, “une consonnance asiatique“, “un jeu de mots“, “original“, mais aussi des termes directement liés au métier, à la destination première du site (exemple : un site de gestion documentaire peut évoquer… “la gestion documentaire” ; c’est pas interdit…).

Pour que ça marche, il ne faut pas donner d’exemple (comme je viens de le faire ;)) : sinon les participants vont s’orienter dans le même type d’idées que celles proposées par l’organisateur.

Par contre, on peut donner des contre-exemples, le cas de mots qui ne marcheront pas : ce sont les mots trop vagues pour être exploités et à double tranchant. On peut par exemple expliquer que si quelqu’un écrit “sérieux”, le revers de la médaille est immédiatement “ennuyeux” (et ça se finit en général avec le nom d’une divinité ou d’une lettre de l’alphabet grec)

Chacun écrit, donc, ses 3 mots sur un bulletin secret et le communique à l’organisateur. Il aligne les mots sur un tableau et peut en général les regrouper (souvent il y en a deux ou trois qui écrivent “sérieux” par exemple). Il faut ensuite les garder sous les yeux pour la deuxième partie.

Certaines des valeurs peuvent se contredire : ça n’est pas grave, il y a peu de chances qu’un nom respecte TOUTES les valeurs - mais on va s’attacher à faire en sorte qu’il en respecte le plus possible.

2/ Trouver des noms

C’est le nerf de la guerre. Là, par contre, pas de papier : chacun peut dire, oralement, tous les noms qui lui passent par la tête. L’organisateur les inscrit au fur et à mesure où ils sont donnés par les participants.

Contrairement à la phase précédente, l’organisateur peut très bien donner des exemples. Voici plusieurs pistes (il y en a beaucoup, beaucoup d’autres) pour former des noms, sachant que plusieurs pistes peuvent se combiner :

  • Former un mot-valise d’après des termes métier ou des valeurs (exemples : “Intranous” pour “Notre intranet à nous, ou même “Evene” pour un site web dédié aux événements… c’est un mot trousse-de-voyage). C’est très facile à décliner. À noter par exemple l’utilisation du radoteur de Roland Moreno.
  • Trouver un anglicisme (c’est indémodable, mais à titre personnel je ne recommande pas). Par exemple : “Quick Builder” - certains termes comme “quick” sont parfois plus séduisants en Anglais qu’en Français.
  • S’inspirer de noms d’animaux, d’objets, etc et les déformer pour les rapprocher de termes proches des mots listés à la première étape. “Les Beatles” ont trouvé leur nom avec ce principe. Il y a beaucoup d’exemples formés sur la base d’acronymes liés au métier. Par exemple, un site basé sur un projet qui s’appelait “P.A.R” a donné le nom “GuéPAR”.
  • Pour un “site” internet ou intranet, l’idée de lieu peut être reprise. Que ce soit un lieu abstrait (et donc en général précédé d’un article) comme “Le Pont”, “La Place”, “L’Avenue”, “La Forêt” ou un nom propre de lieu (une ville, un fleuve, …). Par exemple “Genova” peut être un nom intéressant.
  • Diphtonguer un nom commun. Par exemple, “Oser” devient “Oseo”, Excellent devient “Excelleo” (ou étude devient “Etudeo”….). C’est à la mode depuis quelques années mais comme toute chose à la mode ça peut être très, très lassant.
  • Latiniser un nom. Là encore, c’est à la mode (Vinci…), mais ça peut être efficace. Solution facile : rajouter “(i)um” ou “eos” (pour grecquifier) à la fin d’un mot. Mailium, Estudium, Intraneos, etc. 
  • Utiliser un nom de personnage célèbre. On peut utiliser à peu près n’importe quel nom à part Leonard de Vinci (Vinci, encore…) qui du point de vue du nommage présente autant d’originalité qu’une lettre grecque. Éviter d’utiliser des noms d’hommes politiques illustres ça fait porte-avion… Mais utiliser “Euclide”, “Pythagore” (pas très original), “Turing”, “Pasteur” (pour un intranet médical), Hugo pour un site sur la poésie, etc. Il vaut mieux privilégier quelqu’un de décédé, ça présente nettement moins de risque juridique. Se méfier des noms déposés, c’est notamment le cas pour certains artistes contemporains (un exemple connu ici).
  • Utiliser un prénom féminin. Énormément utilisé surtout quand ledit nom féminin commence par une voyelle (voici un exemple avec Elise). Utilisé énormément dans l’administration publique, mais avec des fautes (une constante). Vous ne me croyez pas ? Cliquez ici…
  • Faire des fautes à des mots. Voir l’exemple ci-dessus. Là encore, allez savoir pourquoi, ce procédé est majoritairement utilisé dans le cadre d’administrations publiques.
  • Faire un jeu de mot. Exemple : “Le web de Zéro“, site web de Karl Zéro et jeu de mot (idiot, mais c’est un pléonasme) sur le patronyme d’icelui et la “technologie” utilisée pour le réaliser.

Il y en a bien d’autres, et l’on peut associer plusieurs combinaisons entre elles. Par exemple, quelque chose à oser : latiniser un nom anglicisé. Si, si, ça existe. C’est le moment de se lâcher et de faire original !

3/ Voter

Cette phase a d’autant plus d’intérêt que le nombre de participants est nombreux. Il n’est pas nécessaire de faire un tri des noms trouvés à l’étape 2, tout comme il peut être intéressant de joindre au groupe d’autres participants, qui prendront part au vote sans avoir cherché les noms.

Le vote a lieu, évidemment, à bulletin secret.

Seul problème : en général, ça n’est pas le nom qui obtient le plus de suffrages qui s’avère le plus intéressant. L’astuce consiste à utiliser un vote selon la méthode de Condorcet ou une autre méthode de vote alternative.

Personnellement, je propose souvent à chaque personne d’écrire les 3 noms préférés et les 3 noms les moins appréciés. Chacun des trois noms de la liste “positive” reçoit un point, chacun des trois noms de la liste “négative” se voit ôter un point. Ainsi, on élimine les noms qui provoquent un hérissement de poil manifeste dans l’assistance. Le vainqueur est le nom qui obtient le plus de point : facile !

Et vous ? Comment feriez-vous pour trouver le nom d’un projet ?

Mars 31, 2008
Pierre-Julien Grizel
Pierre-Julien Grizel
Cogito Ergonome Sum is about »
» Tester un site : le B-A-BA

L’ergonomie, c’est bien beau, mais un site qui fonctionne, c’est encore mieux. Voici donc une petite parenthèse qui exposera les différents mécanismes à prendre en compte pour tester un site. À respecter impérativement.

C’est quoi, “tester un site” ? C’est effectuer une série d’actions permettant de lever le plus grand nombre possible de bugs techniques (c’est à dire de dysfonctionnements du site par rapport aux fonctionnalités attendues). Voici la liste des éléments à prendre en compte pour tester un site.

  1. Tester en conditions réelles. Un test n’est pertinent que s’il est mené dans des conditions réelles d’utilisation, à savoir :
    • Sur une instance du site qui est soit la même que l’utilisateur final( même serveur), soit la plus proche possible (instance de recette par exemple)
    • Avec un navigateur qui soit celui utilisé par l’utilisateur final (et en cas de doute : IE 6). La plupart des sites intranet n’ont pas besoin de marcher sous Firefox ni Safari. C’est donc souvent une perte de temps de les qualifier sur ces environnements (oui, c’est triste ; mais c’est comme ça).
    • Retaillez la fenêtre de votre navigateur en 1024 x 768.
    • Avec un compte utilisateur classique : tout tester en “superadmin” est une erreur de débutant courante et malheureusement tenace.
  2. Ne pas se focaliser sur un point précis mais prendre au contraire du recul. Tester une page d’accueil, par exemple, prend énormément de temps car il faut cliquer sur tous les liens que l’on voit… Il ne faut pas non-plus se borner à tester ce que l’on a développé : il faut élargir son attention pour tester l’intégration générale du site.
  3. Ne pas se dédouaner : à l’inverse, il faut aussi impérativement tester ce que l’on a soi-même développé ! L’adage selon lequel “celui qui a développé ne peut pas tester” est à la fois faux et stupide. C’est une façon particulièrement inélégante de passer la patate chaude à d’autres et de se déresponsabiliser («s’il y a un bug, ça n’est plus de ma faute, mais de la faute de celui qui ne l’a pas trouvé»). Tester, ça commence par vérifier que son propre travail se comporte correctement. Ça prend du temps, c’est vrai ; ça prend beaucoup moins de temps que d’attendre que quelqu’un constate que ça ne fonctionne pas, revienne se plaindre et fasse faire la correction.
  4. Toujours penser à consigner les incidents trouvés. Les trackers sont faits pour ça (ils ne sont pas réservés au cient ou au CDP, ils sont aussi faits pour les bugs trouvés par les dev !). Il peut être très fastidieux de le faire au fil de l’eau (et surtout le risque de perdre le cours de ses tests est grand). Une méthode pratique est la suivante :
    • Agir sur le site avec un outil de screenshot sous la main et une feuille + crayon sous le coude. En cas d’incident…
    • Prendre un screenshot significatif et incluant la barre d’adresse du site;
    • Noter sur la feuille le nom du fichier du screenshot et un descriptif abrégé du bug
    • Puis, une fois la phase de tests terminer, reporter immédiatement toutes ces infos dans un tracker
  5. Le bug le plus critique est souvent celui qui se remarque le plus : il y a de fortes chances qu’il soit sous votre nez (faute d’orthographe, erreur d’alignement, …).
  6. Testez au limites : saisissez des données volontairement (ou pas ;)) incohérentes, sans objet, avec des caractères bizarres, des types de données inattendus, etc. Voir ci-dessous pour plus de détails.
  7. Une séance de tests doit obligatoirement aboutir sur au moins un ticket pour être considérée comme satisfaisante. N’oubliez pas : les tests servent à mettre en évidence les dysfonctionnements, et pas à affirmer qu’il n’y en a aucun. L’absence de dysfonctionnement est d’ailleurs impossible à prouver.

Pour tester aux limites un formulaire :

  •  Si vous devez saisir une plage de dates, inversez-les (mettez la plus récente d’abord et la plus ancienne ensuite) pour valider le comportement.
  • Pour tester une chaîne de caractères, utilisez systématiquement des accents. Vous n’imaginez pas le nombre d’erreurs I18N qui peuvent survenir…
  • Un formulaire vous demande de saisir un nombre ? Mettez-y des virgules, ou même des lettres.
  • Saisissez des valeurs particulièrement élevées pour les nombres que l’on vous demande. Exemple : “Combien d’exemplaires de cet objet voulez-vous commander” dans un site d’e-commerce. Répondez “10000″, pour vérifier le comportement du site.

Le présent site fourmille de bugs (qui seront sans doute un jour corrigés, j’espère !). Allez, une petite séance de 10 minutes :

  • Les 4 liens “Home, About, Photos, Contact” ne fonctionnent pas.
  • La date des posts est en franglais (mars, 29th, 2008).
  • Le bouton “Chercher” à droite dans la boîte de recherche est en anglais.
  • Toujours à droite, “Last post” est en anglais. Enfin, même pas : ça devrait être “Last posts
  • Plus subtil : certaines captures d’écran sont remplacées par le logo de “rue des entrepreneurs” (arf)

Et il y en a d’autres (beaucoup de termes non-traduits). À vous de jouer : prenez un site au hasard (si possible un que vous avez réalisé vous-mêmes…) et décortiquez-le !

Mars 29, 2008
Pierre-Julien Grizel
Pierre-Julien Grizel
Cogito Ergonome Sum is about »
» L’ergonomie dans l’actualité

À écouter d’une oreille attentive : l’(excellente) émission “Rue des entrepreneurs“, sur France Inter, du samedi 29 mars. Le sujet : La pénibilité au travail.

Rue des entrepreneurs

Où l’on y évoque notamment le rôle de l’ergonomie du poste de travail dans l’amélioration des conditions de travail. De son rôle crucial pour lutter contre la pénibilité du travail. Sont évoqués le travail à la chaîne (forcément : ergonomie et Taylorisme ne sont pas toujours très éloignés), mais aussi des métiers plus basiques comme celui de plombier (oui, le monsieur qui est toujours à quatre pattes sous un évier et qui dévisse dans des positions farfelues des tuyaux).

Vous pouvez écouter cette émission pendant encore 180 jours en suivant ce lien.

Mars 28, 2008
Pierre-Julien Grizel
Pierre-Julien Grizel
Cogito Ergonome Sum is about »
» Au fait, à quoi ça sert ?

Bon, c’est bien beau, mais à quoi ça peut bien servir, tout ça ? À quoi peuvent bien servir les efforts faits pour obtenir des interfaces utilisateur un tant soit peu ergonomiques ? Voici quelques éléments de réponse… …qui ne sont pas uniques !

La première chose qui vient en tête, c’est un gain de temps. Une des tâches de l’ergonome est de faire des choix qui permettent en particulier de rendre les tâches répétitives beaucoup plus rapides pour l’utilisateur d’un système. Cela peut parfois paraître dérisoire, mais, prenons un peu de recul : gagner du temps, n’est-ce pas là le but de tout automatisme ?

L’ergonomie accélère ces automatismes en rendant leur déclenchement plus naturel. Le gain de temps engendré peut même éventuellement être mesuré. Un cas particulièrement intéressant est celui du gros bouton rouge « Arrêt d’urgence » qui trône fièrement sur le panneau de contrôle de la plupart des machines dont le mauvais fonctionnement risque de broyer l’utilisateur qui pointe son nez (allez : une scie industrielle, par exemple).

Un calcul (que j’ai d’ailleurs oublié mais on s’en fout) permet de montrer que le temps pour actionner ce gros bouton est une fonction inversement proportionnelle à la distance de l’opérateur par rapport à ce bouton ET à la taille du bouton. Plus le bouton est gros, plus le temps d’action va être rapide.

Dérisoire ? Imaginez votre bras entraîné par la scie. Là, vous verrez qu’une seconde, ou même un dixième de seconde peut avoir une importance critique. Mais nous y reviendrons.

Le gain de temps potentiel est à tous les niveaux. Celui de l’action, comme nous venons de le voir, mais aussi celui de la décision. Nous aurons l’occasion d’en reparler, mais les mécanismes d’information et d’action sont étroitement liés : c‘est l’information qui déclenche l’action ; une action déclenchée sans prise d’information préalable ne serait que du chaos (à toutes les échelles, d’ailleurs : une personne qui bougerait ses membres indépendamment des stimulis qu’il perçoit ne tarderait pas à être qualifiée de cinglé).

Plus l’information est précise, plus elle est fiable, plus elle est porteuse de sens et de valeur, et plus l’action aura de chances de déclencher une action appropriée. Des exemples ?

Une voiture est équipée de roues, en contact avec le sol. Il est assez simple, en plaçant un capteur sur cette roue, de déterminer quelle est la fréquence de rotation de la roue, et de retourner cette information à l’utilisateur (le conducteur) de la voiture. Exemple : “La roue avant-gauche effectue 9,25 tours par seconde”. À quoi sert cette valeur, du point de vue du conducteur ? À rien. Alors que, multipliée par la circonférence de la roue et ramenée dans une unité pertinente, elle permet d’affirmer que “La voiture avance à 50 km/h”. Ergonomie : au lieu d’afficher une information totalement inutile sur un tableau de bord, on retraite cette information pour en extraire ce qui est pertinent pour l’utilisateur. Magique, non ?

Une centrale nucléaire est d’un point de vue électronique, pour schématiser, un gros automate avec des capteurs partout (température et pression pour la plupart) et des commandes qui permettent d’agir sur des équipements (essentiellement vannes et pompes). Le “pilote” d’une centrale (le terme est à dessein) doit actionner des équipements en fonction des informations qui lui sont retournées par des capteurs, en suivant des procédures qui expliquent quoi faire dans quel cas. La procédure indique que “si tel capteur de pression renvoie une valeur trop élevée, alors il faut agir sur la vanne X pour la faire baisser”, “si tel capteur de température est trop bas, alors accélérer la pompe P”, etc. Dans les années 70, la centrale nucléaire de Three Mile Island en Pensylvanie s’est emballée : un incident a eu lieu à un endroit de la centrale, et a eu pour effet de faire “s’affoler” énormément de capteurs. Le pilote de la centrale a pu constater avec joie que ses capteurs sont passés au rouge, et il a donc été incapable d’identifier la cause réelle du problème. Le coeur a commencé à fondre et on a frôlé la catastrophe. Depuis, allez savoir pourquoi, des ergonomes sont intervenus pour remettre à plat les salles de commande des centrales : si le pilote avait disposé de la bonne information au bon moment, la catastrophe aurait été évitée. Nous aurons souvent l’occasion de reprendre l’exemple des centrales nucléaires car c’est un des domaines de l’industrie dans lesquels l’arrivée de l’ergonomie a eu énormément d’impact.

(Attention, paragraphe technique pénible à lire mais tout à fait dispensable) Le “shell” d’un système d’exploitation regroupe en un seul programme l’essentiel des outils pour exploser complètement son système. C’est une sorte de bistouri : très précis, mais un écart d’un millimètre peut avoir des conséquences dramatiques. L’exemple typique est celui d’un shell où le nom du répertoire n’est pas affiché dans l’invite de commande : l’utilisateur croit être dans un certain répertoire mais se trouve en fait à la racine de son système de fichiers, il fait un joli “rm -rf” et trouve soudainement de l’occupation pour les deux jours qui suivent.

Le concept de “panier” dans les sites internet de commerce est une avancée assez significative. Il fut un temps où sur certains sites, pour chaque article, l’utilisateur devait saisir son numéro de carte bleue et payer individuellement. Avec la panier, il dispose d’une vue synthétique de ses achats permettant de ré-évaluer son acte en fonction de son budget ou de ses souhaits. C’est ici un peu plus du fonctionnel que de l’ergonomie, mais l’idée est là.

Mars 17, 2008
Pierre-Julien Grizel
Pierre-Julien Grizel
Cogito Ergonome Sum is about »
» L’heure des choix (3) : L’exemple par WordPress

J’allais vanter les mérites de WordPress en matière de choix (WordPress c’est le système de blog que j’utilise). Mais j’ai tout de même trouvé de quoi le mettre en défaut (gniark gniark).

Un bon point : l’installation. Une fois l’installation faite, ça marche, je peux commencer à écrire dans mon blog sans rien avoir à configurer. Ca va dans le bon sens…

MAIS… certains choix sont assez stupides.

Ici, les “options les plus courantes” sont sans doute très courantes, mais pas très pertinentes. Choix par nature, pas par fonction : pourquoi choisir une option que je ne comprends pas ? Pour rendre les URLs jolies ? Si oui, pourquoi les choix sont-ils dans deux des trois cas des URLs “moches” (enfin, pas lisibles) ? Mystère.

image-1.png

Là, c’est le paneau de contrôle d’un module qui s’appelle “WP-Cache Manager”. Sans doute un très bon composant, mais son panneau de contrôle ne simplifie absolument pas la vie de ses utilisateurs.

image-2.png

Un truc me chiffonne : comment, un utilisateur qui n’y connaît rien à la problématique de cache peut-il déterminer de façon pertinente la durée du cache ? Ben la réponse n’est clairement pas “en lisant le texte explicatif de ce composant”.

Celui qui s’ennuie pourra toujours s’inscrire comme développeur sur Wordpress et prêcher la bonne pratique. Qui lève le doigt ?

Février 29, 2008
Pierre-Julien Grizel
Pierre-Julien Grizel
Cogito Ergonome Sum is about »
» L’heure des choix (2) : Souvent, ne pas choisir a du bon…

Devinette : je suis une attitude qui traduit l’incertitude, l’indécision, l’arrêt dans l’action… je suis, je suis, je suis ?……. L’hésitation !

L’hésitation, c’est un des pires ennemis de l’ergonome. L’hésitation, ça fait :

  • Baisser la productivité (c’est du temps de cerveau indisponible pour penser à quelque chose de VRAIMENT utile)
  • Monter le stress (un contre-exemple dont l’idée générale explique parfaitement l’angoisse que peut provoquer un choix)

Alors parfois, il faut vraiment, mais alors vraiment s’abstenir de demander à l’utilisateur de faire un choix qui n’a aucun sens pour lui. Et c’est valable dans plein de domaines (on retrouve ça aussi en productivité personnelle, par exemple).

Alors, règle d’or, à encadrer dans ta chambre : Quand un choix proposé à un utilisateur est évident ou sans impact fonctionnel, il ne faut pas proposer le choix. Je n’ai pas dit “il ne vaut mieux pas” ou “il faudrait éviter”, non non : il-ne-faut-pas, point à la ligne.

Des exemples ? Y’en a pléthore.

  • Imaginez un distributeur automatique de billet de trains (jaune si possible, pour le voir de loin). Vous prenez un billet et le concepteur de l’automate a l’idée géniale de proposer à l’utilisateur de le composter lui-même : c’est une vaste connerie. À la SNCF, le choix a été fait de façon beaucoup plus intelligente : si je suis dans ma gare de départ moins d’une heure avant que le train ne parte, alors la distributeur composte automatiquement mon billet, sinon il ne le fait pas. Le choix est automatique, silencieux, et… judicieux (et ‘faut en profiter, ça ne m’arrive qu’une fois l’an de féliciter la SNCF).
  • Sur un site web, un menu déroulant propose à l’internaute lambda (Mam’ Michu) de choisir le thème visuel du site. Si Mam’ Michu aime le rose, elle choisit “rose”, si elle aime le jaune elle choisit “jaune” et ainsi de suite (un peu comme sur l’excellent CSSZenGarden). C’est totalement inutile, superflu, et débile (vous noterez que sur CSSZenGarden, il y a bien un intérêt fonctionnel, c’est le but du site).
  • Le concepteur d’un composant manipule une structure de données. Lors de l’installation de son composant, il demande à l’utilisateur quelle stratégie il souhaite utiliser pour cette structure de données : c’est un choix carrément angoissant pour l’utilisateur. Et ça prouve que le développeur n’a pas été foutu de développer une stratégie suffisamment efficace ! Vous imaginez un système d’exploitation qui demanderait à l’utilisateur, lors de son installation, s’il veut utiliser un système de fichiers sur 16 bits ou un sur 32 bits ? (ah bah merde alors, Windows NT demandait ça à l’installation…).
  • Etc, etc, etc…… (j’en croise tous les jours)

Le fait d’offrir à un utilisateur des choix sans impact fonctionnel découle souvent d’un attitude conservatrice de la part d’un développeur. Exemple : j’ai écrit 2 algorithmes pour un process, et je ne suis pas foutu de dire si l’algorithme A va être plus ou moins performant que le B. Conservatisme : je propose à l’utilisateur de choisir. Comme ça, s’il choisit le moins performant, c’est de sa faute, à ce p’tit con !

Ne riez pas trop vite : on peut trouver, plein, plein d’exemples. Les fichiers de configuration ou les procédures d’installation de certains programmes en sont pleins.

Parfois aussi, il s’agit juste d’une réticence à aller vers la simplicité. Je suis développeur, et je suis capable d’offrir un choix à un utilisateur, pourquoi ne pas le faire ? (parce que ça ne sert à rien, eh, patate !)

Il n’y a qu’une exception possible à cette règle, c’est la confirmation (allez jeter un oeil à Docteur Folamour pour comprendre à quoi peut bien servir une confirmation…). Si une action a un caractère irréversible, alors elle doit être confirmée. Sinon, c’est pas la peine. La notion d’irréversibilité est fondamentale : parfois, une action “grave” est facilement réversible (et ne mérite donc pas de confirmation). Exemple : je détruis un fichier sur mon poste de travail. Pas besoin de demander confirmation de quoi que ce soit tant que cette suppression place le fichier au chaud dans la corbeille, prêt à être restauré au premier doute. Je veux formater mon disque ? Là, par contre, confirmation obligatoire car la réversibilité de cette opération n’est pas évidente. Et quand on est développeur, on ne demande pas confirmation parce que l’on n’est pas sûr de la solidité de son algorithme de réversibilité : là encore, c’est du conservatisme à deux balles ;)

Dernière chose : déterminer le choix “évident” de l’utilisateur est un art difficile. Mal le maîtriser conduit à des erreurs pouvant engendrer du simple inconfort à l’inutilisabilité d’un système. Un seul exemple : imaginez une machine à laver qui ne proposerait pas de choix de température de lavage… (il y a des exemples concrets mais je ne les ai plus en tête). Comme quoi, il est parfois difficile pour l’observateur qu’est le concepteur d’une machine de se figurer quel sera le choix que va faire un utilisateur. Ainsi, prenons cet exemple…

Quand on fait un choix à la place de l’utilisateur, il ne faut jamais oublier la motivation qu’aurait l’utilisateur à faire ce choix…

Février 28, 2008
Pierre-Julien Grizel
Pierre-Julien Grizel
Cogito Ergonome Sum is about »
» L’heure des choix (1) : Motiver son choix

Une des choses les plus difficiles, pour un être humain (et d’une manière générale pour un être vivant), c’est de choisir. Voici quelques conseils gratuits pour aider à gérer le douloureux problème du choix dans un dialogue homme-machine.

Choisir, c’est une forme de liberté (aaaah, la liberté…) mais aussi un facteur de stress énorme, parce que choisir c’est ouvrir la porte à un mauvais choix, donc à une erreur (ou, pire, une faute, une catastrophe, un cataclysme, etc). Du coup, l’être humain a tendance à être parfois mal à l’aise face à un choix qui ne lui paraît pas clair.

Bon, ok, des exemples ? Celui-ci est bien parlant (cliquez pour ouvrir la vidéo) :

On voit bien que le bonhomme, dans l’incapacité de faire un choix de façon rationnelle, abandonne toute logique pour déterminer son choix sur des critères indépendant des objets de son choix. Un peu comme tirer à pile ou face pour départager deux issues possibles à un problème. Bizarrement, cette pub met en fait en valeur un défaut inhérent à son annonceur : l’incapacité à conseiller le client.

Voici maintenant un exemple de choix correctement exposé (pour la petite histoire, il s’agit ici d’un cas subtil de choix par motivation contredisant un choix par nature - voir plus bas pour l’explication…) :

La morale de l’histoire ? Lorsque tu présentes un choix à un utilisateur, il faut que les motifs du choix lui soient également présentés.

Il y a trois façons d’aider un utilisateur à faire son choix (en fait, il y en a peut-être plus, mais 3 je trouve que ça sonne pas mal) :

  1. La première façon est le choix par nature : mon choix va être déterminé par ce que je suis, l’état dans lequel je me trouve. À la limite, même un observateur extérieur pourrait faire ce choix en lieu et place de l’utilisateur.
  2. La seconde (ou deuxième, au… choix) est de se figurer quel est l’objectif de l’utilisateur lorsqu’il va choisir cette option. Quand je tiens mon tuyau d’aspirateur, a priori je sais ce que je veux aspirer, je n’ai donc pas à me figurer une relation de cause à effet pour déterminer la position de ma brosse. C’est un choix par destination.
  3. Enfin, on peut aussi présenter les choix en les assortissant des explications nécessaires pour que l’utilisateur choisisse en toute connaissance de cause. C’est le choix motivé, que je déconseille par rapport aux deux précédents (il demande possiblement une intense réflexion de la part de l’utilisateur pour trancher).

Comment ça s’applique dans la vraie vie ? Voici quelques exemples.

  • Mon aspirateur a un suceur double position (oui, bon, désolé mais ça s’appelle comme ça, allez voir le TLF si vous ne me croyez pas). Une position avec brosse et une position sans brosse. S’il n’y avait pas un petit dessin “moquette” et un petit dessin “parquet”, je ne suis pas sûr que je n’aurais pas du mal à choisir quelle position pour quel type de sol. Voire à arracher les poils de ma moquette et rayer le parquet. C’est un choix par destination.
  • Allez voire le site de Biopredictive : deux choix successifs basés sur la nature de l’utilisateur (son pays puis son “statut” dans le monde médical)
  • Allez donc faire un tour sur impots.gouv.fr : un excellent exemple de choix basé sur la nature de l’utilisateur, et en plus c’est argumenté ! Que demande le peuple… (oui, je sais, il demande à payer moins d’impôts, justement…).

Si vous proposez à un utilisateur un choix qui ne correspond pas à l’une de ces trois options : vous faites une faute d’ergonomie. Quand vous programmez une combo box, une série de cases à cocher ou de boutons radio, c’est la question à vous poser.