• Aucun résultat trouvé

IFT2905 Interfaces personne-machine 10. Undo

N/A
N/A
Protected

Academic year: 2022

Partager "IFT2905 Interfaces personne-machine 10. Undo"

Copied!
18
0
0

Texte intégral

(1)

IFT2905 Interfaces personne-machine 10. Undo

S´ebastien Roy

D´epartement d’Informatique et de recherche op´erationnelle Universit´e de Montr´eal

12 mars 2007 Universit´e de Montr´eal

(2)

Horreur oiu splendeur?

1800flowers (suggestion de Ryan Damico)

Le but du formulaire est de composer une carte de souhait pour accompagner des fleurs.

(3)

Horreur oiu splendeur?

(majeur) Limite de 210 caract`eres: bien justifi´e mais on n’a aucun moyen de compterA. Suugestion: une bar de

poucentage. (pr´evention des erreurs, flexibilit´e et efficacit´e) (majeur) special symbols like & est tr`es vague. Il serait mieux de les d´etecter et d’avertir pendant qu’on tape.

(pr´evention des erreurs)

(cosm´etique) les soulign´es dans le menu. Donne une fausse perception des choix. (connecter avec le monde)

(majeur) Comment est-ce que le Greeting typeaffecte la carte finale? (visibilit´e, aide et documentation)

(mineur) Les ´etiquettesto,from,message n’aligneront probablement pas avec ce qui est entr´e, donc ne servent `a rien. (esth´etique et minimalisme)

(4)

Au programme

Undo

Les principes de design du Undo Visualisation de l’historique Undo s´electif

objets de commande Pourquoi le Undo?

El´´ement incontournable de l’utilisabilit´e

La manipulation directe implique la reversibilit´e Le Undo encourage l’exploration et l’exp´erimentation (important pour apprendre)

R´eduit l’impact des erreurs

Donne un sentiment de s´ecurit´e de de contrˆole

Mais le Undo n’est pas si simple `a implanter...

(5)

Mod` ele conceptuel du Undo

Le Undo inverse l’effet d’une action Quelques question sans r´eponses...

Quelles s´equences d’actions peut ˆetre renvers´ees?

Comment diviser les actions en unit´es r´eversibles?

Quelles actions sont r´eversibles?

Lors d’un Undo, combien de l’´etat pr´ec´edent est r´ecup´er´e?

Jusqu’o`u peut-on reculer?

Undo agit de facon myst´erieuse et souvent impr´evisible.

(6)

S´ equence d’actions

Il n’existe pas deUndo global.

Chaque application ou widget propose son propre Undo.

Quelle s´equence d’action sera invers´ee?

Actions dans la fenˆetre courante

Microsoft Word: un Undo par texte ouvert Actions dans un champs de formulaire web

chaque champs supporte Undo, un `a la fois Mes actions, ou celles de tous les usagers?

calendriers partag´es, ...

Actions d´eclench´ee par l’ordinateur correction automatique, ...

(7)

Unit´ es d’action

La s´equence d’actions est s´epar´ee en unit´es indivisibles pour le Undo.

Niveau lexical

Clic de souris, touche au clavier, mouvement de souris

(aucun Undo ne fonctionne `a ce niveau) Niveau syntaxique

Commandes et activation de boutons Niveau s´emantique

Changement aux structures de donn´ees (ex: r´esulats d’un dialogue)

(le Undo fonctionne g´en´eralement `a ce niveau) Entr´ee texte consid´er´ee comme une action unique Que faire d’un macro d´efini par l’usager?

Undo du macro comme un tout, ou chaque commande individuelle?

(8)

Quelles actions sont reversibles?

Les actions d’un usagers peuvent inclure des actions ignor´ees par le Undo...

S´election Focus du clavier

Changement de point de vue (scroll, zoom) Gestion de l’interface

palettes, panneaux, barres, ajout de boutons taille et position des fenˆetres

Quelles actions doivent ˆetre invers´ees?

En g´en´eral...

Les changement de vue sont ignor´es

Les changement aubackend (mod`ele) sont inversibles ...

Le dernier mot revient `a l’application...

(9)

Undo et ´ etat

Quelle partie de l’´etat est r´ecup´er´ee lors d’un Undo?

S´electioner du texte, l’effacer, puis faire Undo.

Le texte est restaur´e

La s´election est-elle restaur´ee? et la position du curseur?

Mˆeme si la vuen’est pas prise en charge par le undo, un Undo sur lemod`ele peut avoir un impact sur la vue.

(10)

Jusqu’o` u reculer?

Limite sur la taille de l’historique pass´e lointain: 1 seule action maintenant: 100, 1000,∞

Est-ce que la s´equence d’action persiste entre les sessions?

si oui, il faut sauvegarder les actions dans un fichier Est-ce que la s´equence persiste apr`es une sauvegarde?

g´en´eralement pas...

on doit donc sauvegarder moins souvent... (!?)

(11)

Principes de design pour le Undo

Principe de base: Il est difficile de pr´edire l’effet d’un Undo.

En g´en´eral, on presse Undo jusqu’`a l’obtention de l’effet d´esir´e (o`u on est all´e trop loin).

Visibilit´e

S’assurer que l’effet d’un Undo est visibles Aggr´egation

Les unit´es devraient ˆetre coh´erentes: chaˆıne de texte, dialogue, macros.

Undo r´eversible

Permettre un Redo

Revenir dans un ´etat o`u la commande peut ˆetre

imm´ediatement ´ex´ecut´ee de nouveau, avec le mˆeme effet.

(12)

Principes de design pour le Undo

Autres principes...

Undo du mod`ele, pas de la vue

Pour plus de coh´erence avec les autres applications, le Undo s’applique aux changements de mod`ele, pas de vue.

Autres m´ethodes de r´eversibilit´e Touche d’effacement pour le texte

Document r´ecent pour un fichier sauvegard´e

Bouton de d´efilement (scrollbar) permet de revenir `a une vue pr´ec´edente

Undo est une forme deR´ecup´eration d’erreur par marche arri`ere, alors qu’on peut aussi r´ecup´erer par marche avant (une commande peut en inverser une autre). La r´ecup´eration par marche avant est pr´ef´erable.

(13)

Visualisation de l’historique

Gros probl`eme d’utilisabilit´e

L’usager ne voit pas l’historique du Undo.

G´en´eralement, on visionne l’historique en faisant Undo, puis Redo.

(pas id´eal...)

On peut essayer une repr´esentation visuelle explicite

Menu de retour des navigateurs web Affichage graphique des commandes

(14)

Listes de Undo et Redo

Une repr´esentation utilis´ee pour Undo/Redo est laliste d’actions Liste des actions sous forme d’un script

L’´ex´ecution du script transforme un ´etat de d´epart en ´etat courant

L’´etat de d´epart est g´en´eralement celui d’un fichier sur disque

Dans ce cas, l’historique s’arrˆete `a la sauvegarde Undo/Redo modifient le script

Undo enl`eve une commande `a la fin du script et la place dans le script Redo

Redo replace une commande de son script vers le script Undo.

Certains actions ne sont pas conserv´ees dans le script

Historique Redo

(15)

Manipulation de l’historique

Une nouvelle commande est ajout´ee `a la l’historique

→ et vide la liste du Redo

Historique Redo

Une nouvelle commande fait un branchement exp´erimental

requiert une visualisation explicite de l’historique peu d’avantage en pratique

(16)

Gestion de l’historique

Undo s´electif

Permet d’´eliminer une commande de l’historique, pas n´ecessairement la derni`ere.

Redo s´electif

Permet de r´e-´ex´ecuter une action de la liste Redo, mais pas n´ecessairement la premi`ere.

On doit pouvoir visualiser l’historique pour choisir l’action Essentiel pour les applications multi-usagers collaboratives Attention `a l’interd´ependance des commandes!

Exemples: tic-tac-toe, othello, ´echecs, ... (pas toujours aussi simple)

(17)

Implantation du Undo

L’historique est une liste d’objets de commande ethodesundo()etredo()

L’objet de commande doit stocker des donn´ees. Les donn´ees servent `a remettre l’´etat du mod`ele `a jour.

Point de sauvegarde partielle de l’´etat eplace cercle de (0,0) `a (100,100) Change police de Times vers Helvetica

Changement local ou global d’une image dans gimp ef´erences aux objets VS localisation

Ins`ere ”abcd” `a la position 33 o`u au marqueur #55393 Diff´erences relatives VS valeurs absolues avant et apr`es

eplace cercle de (+5,-10) VS d´eplace de (10,10) `a (15,0)

(18)

D´ efis d’implantation

Parfois un changement global impose de conserver trop d’information d’´etat

filtre sur une image dans gimp

Redo d’une cr´eation d’objet va produire une r´ef´erence nouvelle cette r´ef´erence doit ˆetre utilis´ee par les Redo subs´equents Cr´ee cercle #123, Change couleur cercle #123, Undo, Undo, Redo Redo

Comment retrouver la r´ef´erence originale?

Conserver des r´ef´erences dans l’historique inhibe legarbage collection

on peut limiter la longueur de l’historique

Références

Documents relatifs

Most popular semantic wikis support a revert feature, some provide an undo feature to remove any modification at any time.. However this undo feature does not

Dans un traitement de txt, ctrl-p pour monter d'une ligne, mais imprimante qui apparaît mode. Deux techniques générales pour éviter erreur de mode Éliminer

Avertit les Vues/Contrˆ oleurs des changements Si le pattern Observateur (observer) est utilis´ e: les Vues s’enregistrent au mod` ele pour recevoir les changements (en tant

Est-ce que l’attention peut ˆ etre dirrig´ ee vers une seule valeur d’une variable, en excluant les aurtes variables et valeurs.

Trois versions: Court, Moyen, Long Les courts sont faible et sensibles au bleu Les moyens et longs sont plus sensibles Les moyens sont sensibles au vert. Les longs sont sensibles

Alterner entre l’´ evaluation heuristique et les tests usagers Chaque m´ ethode trouve diff´ erents probl` emes. l’´ evaluation heuristique est moins

12 Prototypes sur ordinateur 13 Outils pour les interfaces 14 Evaluation par heuristiques 15 Tests usagers.. 16 Conception et analyse

L’interface devrait ˆ etre coh´ erente avec le monde et l’exp´ erience de l’usager.. Speak the user’s