Illustration des différents niveaux de rétroaction qui peuvent être offerts par une IHM




Ceci va se faire à l'aide d'un exemple d'applet permettant de résoudre manuellement le problème des tours de Hanoï :
l'utilisateur doit déplacer tous les anneaux pour les emmener dans une autre tour.

Les règles sont les suivantes :
Afin de donner un maximum d'informations à l'utilisateur en cours d'interaction,
on utilise ici des couleurs différentes et des curseurs différents pour lui donner des rétroactions sémantiques :
Exemple de manipulations avec rétroactions sémantiques

En supposant que la syntaxe des manipulations repose sur des successions d'empilement et de dépilement d'anneaux,
qu'il faut d'abord dépiler un anneau d'une tour, puis l'empiler sur une (autre) tour,
et que ce dépilement se fait grâce à la manipulation des anneaux qui sont au sommet des tours,
on peut aussi choisir de ne donner à l'utilisateur que des rétroactions syntaxiques.
On peut maintenant être invité à déposer un anneau sur un plus petit que lui, et cette manipulation échouera !

Exemple de manipulations avec rétroactions syntaxiques

En abaissant le niveau d'information indiqué à l'utilisateur, on peut aussi lui faire simplement comprendre
que les déplacements sont basés sur la manipulation d'anneaux qu'on doit déplacer d'une tour à l'autre,
sans montrer à l'utilisateur que seuls les anneaux des sommets peuvent être manipulés,
on obtient alors seulement des rétroactions lexicales :
On peut maintenant être invité à déposer un anneau sur un plus petit que lui, et cette manipulation échouera !
On peut aussi être invité à manipuler un anneau qui n'est pas au sommet d'une tour, et cette manipulation échouera !

Exemple de manipulations avec rétroactions lexicales

Enfin, il est possible de ne donner aucune rétroaction en cours de manipulation, ni au niveau des anneaux à manipuler,
ni au niveau des tours sur lesquelles déposer les anneaux.
Pas de messages d'erreurs non plus en cas de mauvaise manipulation.
Comme dans le cas de la rétroaction lexicale, on peut être amené à faire des manipulations qui échoueront.

Exemple de manipulations sans rétroactions