13.07.2015 Views

LOG2420 — Analyse et conception d'interfaces utilisateur ... - Cours

LOG2420 — Analyse et conception d'interfaces utilisateur ... - Cours

LOG2420 — Analyse et conception d'interfaces utilisateur ... - Cours

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

´Le principe de l’évaluation◮ Même principes que les tests logiciels◮ Toute exigence d’utilisabilité devrait faire l’obj<strong>et</strong> d’un testd’utilisabilité empirique◮ Les exigences d’utilisabilité doivent être vérifiables◮ L’évaluation d’une interface doit donc se faire par rapport àdes tâches, des <strong>utilisateur</strong>s <strong>et</strong> des objectifs d’utilisabilitéspécifiques.


Tests d’utilisabilité´


Méthode◮ Utilisateurs représentatifs◮ Tâches représentatives <strong>et</strong> exhaustives◮ <strong>Analyse</strong> du protocole de pensée à voix haute◮ Différents outils s’offrent pour faciliter la tâche d’analyse :◮ Observation par plusieurs ergonomes◮ Enregistrement du “click through” <strong>et</strong> “playback”◮ Vidéo◮ Miroir à sens unique´


Définition des tâches◮ Comment déterminer les bonnes tâches ?◮ La priorité dépend de :◮ Fréquence : les plus fréquentes sont plus prioritaires◮ Criticalité : les plus incontournables◮ Représentativité : correspond aux besoins des <strong>utilisateur</strong>s◮ Granularité :◮ Niveau adéquat : correspond à des buts relativementautonomes◮ Vérifiables :◮ Le succès peut être validé´


´Expérience de Nielsen <strong>et</strong> Landauer (1993)http://www.nngroup.com/articles/how-to-conduct-a-heuristic-evaluation/


Combien d’<strong>utilisateur</strong>s/experts pour l’évaluation ?◮ Le nombre de problèmes identifiés suit la courbe suivante 1 :◮ N 0 (1 − (1 − L) k )◮ Où :N 0 : nombre de problèmes au totalL : proportion de problèmes identifiés par un suj<strong>et</strong>k : nombre de suj<strong>et</strong>s1. Nielsen, Jakob, and Landauer, Thomas K. : ”A mathematical model of thefinding of usability problems,” Proceedings of ACM INTERCHI’93 Conference(Amsterdam, The N<strong>et</strong>herlands, 24-29 April 1993), pp. 206-213.´


Relations entre le nombre de problèmes trouvés <strong>et</strong> lenombre de suj<strong>et</strong>sN 0 (1 − (1 − L) k )Nombre d’erreurs trouveesErreurs trouvees0 20 40 60 80 100L = 0,75L = 0,50L = 0,25L = 0,12 4 6 8 10n Suj<strong>et</strong>s´


Solution pour estimer le nombre de problèmes◮ Le problème est de la même famille que la loi de ladécroissance exponentielle :◮N0 e −λt◮ Où :N 0 : nombre de problèmes initiauxλ : taux de décroissance (des problèmes)t : temps sur une échelle continue (nombre de suj<strong>et</strong>s pour nous)◮ En spécifiant le nombre de problèmes restants à l’itération tcomme N t = N 0 (1 − L) t , <strong>et</strong> en posant e −λ = (1 − L), leproblème s’exprime sous la forme de la loi de décroissance :◮ N t = N 0 e −λ◮ C<strong>et</strong>te loi correspond à un modèle d’évolution du nombre debogues restants suite à des itérations de tests logiciels 2 32. Goel, A.L., and Okumoto, K. (1979). A time dependent error d<strong>et</strong>ectionmodel for software reliability and other performance measures. IEEE Trans. Reliability,vol R-28, 1979, 206–211.3. Wood, A. (1996) ”Predicting software reliability.” Computer , vol.29,no.11, 69–77.´


´Solution pour estimer le nombre de problèmes (suite)◮ Posons n t comme le nombre de problèmes trouvés au suj<strong>et</strong> t :n t = N t − N t−1= N 0 e −λt − N 0 e −λ(t−1)= N 0 e −λt − N 0 e (−λt−λ )= N 0 e −λt (1 − e −λ )◮ Il reste alors à estimer les paramètres λ <strong>et</strong> N 0 , le nombre deproblèmes initiaux, à partir des données d’observations de n t ,le mombre de problèmes identifiés.◮ C<strong>et</strong>te estimation peut se faire aisément par la méthode desmoindres carrés avec des logiciels comme R ou même MSExcel.


´Résultats avec les données de Nielsen <strong>et</strong> Landauer◮ 19 experts◮ 16 problèmes◮ Estimation basé sur unéchantillon aléatoired’experts◮ Moyenne pour 10 replis(runs—répétitions de lasimulation)◮ Conclusion : le modèlen’est pas tout à fait juste !Néanmoins, il donne unordre de grandeur valable.Estimé nb. problèmes12 14 16 18●●●●●●●●●● ●●● ●●2 4 6 8 10 12 14 16Nb. d'experts


´Laboratoire d’utilisabilité◮ Un miroir à sens unique◮ Un écran qui réplique celui de l’<strong>utilisateur</strong> (aussi enregistré survidéo)◮ Un vidéo qui filme l’<strong>utilisateur</strong>◮ Des outils de montage de vidéo◮ Image (Sun Microsystem)◮ Sondage, Nielsen, 1994 :http://www.useit.com/papers/uselabs.html


Métriques´


´Utilisation des métriques◮Établir un barème minimal à respecter pour des spécifications◮ Identifier <strong>et</strong> quantifier des éléments problématiques del’interface◮ Comparer différentes versions◮ Comparer entre produits ou concepts concurrents◮ Utilisation de métriques dans différents contextes :◮ Un élément de performance pour l’évaluation du succès (bonis)◮ Élément pour entente contractuelle


´Métriques objectives◮ Pourcentage de tâches complétées en un temps donné◮ Pourcentage de tâches réussies◮ Temps de complétion de tâches◮ Nombre d’erreurs◮ Temps de récupération des erreurs◮ Courbe d’apprentissage


´Métriques subjectives◮ Cinq catégories◮ (1) efficacité, (2) affectif, (3) assistance, (4) contrôle,(5) facilité d’apprentissage◮ Mesurable par questionnaire, par exemple :◮ Ce logiciel répond trop lentement◮ Je recommanderais ce logiciel à mes collègues◮ Les instructions sont utiles <strong>et</strong> accessibles◮ Je me demande parfois si j’utilise la bonne commande◮ Travailler avec ce logiciel est efficace


´Questionnaires◮ Échelles d’évaluation d’attitude, de satisfaction oud’appréciation◮ De p<strong>et</strong>its détails dans la formulation d’une question peuventfaire une énorme différence◮ Exemple : “votre écran est-il monochrome ?”◮ Les questionnaires sont comme des interfaces :◮ Ils doivent être testés !


´Conseils pratiques◮ Importance des vidéos◮ Souvent le moyen le plus convaincant◮ Ex. de Xerox PARC <strong>et</strong> de Bombardier◮ Démontrer l’impact en termes financiers ou autre◮ Opter pour les tests plus souvent possible


´Difficultés méthodologiques◮ L’eff<strong>et</strong> Hawthorne◮ Étude dans l’Illinois du travail dans l’usine Hawthorne, 1939◮ Eff<strong>et</strong> de l’éclairage sur le travail◮ Dissonance cognitive◮ L’eff<strong>et</strong> de la rémunération sur l’appréciation de l’expérience◮ L’Eff<strong>et</strong> de halo◮ L’eff<strong>et</strong> de proximité dans le temps (recency effect)◮ L’eff<strong>et</strong> d’ordre des tâches/questions (mesures répétées)◮ Les eff<strong>et</strong>s de groupe◮ ...<strong>et</strong> les mille <strong>et</strong> un dédales de l’expérimentation avec dessuj<strong>et</strong>s humains


´Outil intéressant◮ Questionnaire Web de Perlman http://www.acm.org/~perlman/question.cgi?form=CSUQ


Évaluations heuristiques´


´Méthode d’évaluations heuristiques◮ Nécessite une maîtrise des règles heuristiques◮◮NielsenBastien <strong>et</strong> Scapin◮ Dure en général d’une à deux heures◮ Utile d’assister l’évaluateur par un aide◮ On fournit une liste de tâches ou/<strong>et</strong> des scénarios d’utilisation◮ Les problèmes identifiés sont ensuite classifiés selon leurgravité


´Efficacité <strong>et</strong> efficience des tests heuristiques◮ Selon plusieurs, la méthode la plus rentable◮ Suj<strong>et</strong> à la même loi quant au nombre de problèmes identifiéspar <strong>utilisateur</strong>◮ Toutefois, le ’L’ peut être fort différent des tests <strong>utilisateur</strong>s◮ Exemple d’évaluation avec 19 évaluateurs <strong>et</strong> 16 problèmesd’utilisabilité(http://www.useit.com/papers/heuristic/heuristic_evaluation.html)


Tests automatisés´


´Tests automatisésComment tester les interfaces dans une perspective logicielleuniquement ?Quelques outils utiles basés sous le principe de JUnit(http://www.junit.org/index.htm) :◮ Swing :◮ JFCUnit : http://jfcunit.sourceforge.n<strong>et</strong>/◮ Sites web :◮ HTMLUnit : http://htmlunit.sourceforge.n<strong>et</strong>/g<strong>et</strong>tingStarted.html◮ JWebUnit :http://jwebunit.sourceforge.n<strong>et</strong>/quickstart.html◮ .NET :◮ Nunitforms :http://nunitforms.sourceforge.n<strong>et</strong>/index.html◮ NunitASP pour le web :http://nunitasp.sourceforge.n<strong>et</strong>/


´Principes de jfcUnit◮ Inspiré de JUnit :◮ Perm<strong>et</strong> de tester une interface graphique Swing◮ Code intégré au programme source <strong>et</strong> faisant appel à desroutines pour faciliter l’écriture de test◮ Tous les tests sont automatiquement effectués par un appel◮ Offre trois utilitaires :1. des routines pour accéder à la hiérarchie de composants <strong>et</strong>pour générer des événements transmis à ces composants2. possibilité de spécifier des tests en XML pour diminuer laquantité de code Java à écrire directement3. enregistrement d’événements pour faciliter le suivi deséquences complexes d’événements d’un cas d’utilisation


´Quelques conseils◮ Les tests automatisés ne remplacent pas des tests <strong>utilisateur</strong><strong>et</strong> des tests heuristiques◮ Le paradigme MVC facilite grandement la réalisation de testsunitaires◮ en rendant explicite la fonctionnalité par le contrôleur◮ en perm<strong>et</strong>tant de valider que le modèle se comporte commevoulu◮ Il faut évaluer si les tests unitaires d’interfaces sont un boninvestissement de temps car l’effort est non négligeable, enparticulier l’effort de maintenance si l’interface changeconstamment.◮ Voir http://wiki.java.n<strong>et</strong>/bin/view/Javapedia/TestingGUIApplications pour une liste d’outils Java

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!