La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Object-Oriented Software Engineering Practical Software Development using UML and Java Chapitre 7: Focusing on Users and Their Tasks.

Présentations similaires


Présentation au sujet: "Object-Oriented Software Engineering Practical Software Development using UML and Java Chapitre 7: Focusing on Users and Their Tasks."— Transcription de la présentation:

1 Object-Oriented Software Engineering Practical Software Development using UML and Java Chapitre 7: Focusing on Users and Their Tasks

2 © Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks2 7.1 Conception centrée sur lutilisateur Le développement dun logiciel devrait toujours être centré autour des besoins de ses utilisateurs Bien comprendre qui sont les utilisateurs Bien comprendre les tâches que doivent réaliser ces utilisateurs Sassurer que les utilisateurs sont impliqués dans le processus de décision Concevoir linterface utilisateur en suivant bien les lignes directrices établies Demander aux utilisateurs dévaluer les prototypes et de faire part de leurs commentaires

3 © Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks3 Limportance dêtre centré sur les utilisateurs Réduit les coûts liés à la formation et au support Diminue le temps dapprentissage Permet une utilisation plus efficace Permet de ne développer que les options qui sont réellement requises Réduit les coûts liés aux modifications subséquentes Permet de mieux définir les priorités dans le développement Rend le système plus attrayant et mieux adapté à son marché

4 © Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks4 7.2 Caractéristiques des utilisateurs Lingénieur logiciel doit bien connaître les utilisateurs Quels sont leurs buts De quelle façon utiliseront-ils le logiciel Quelle sont les caractéristiques démographiques des utilisateurs Quel est leur niveau de connaissance de linformatique Quels sont leur habilités physiques Quelles sont leur caractéristiques psychologiques et émotives

5 © Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks5 7.3 Les bases de la conception des interfaces utilisateur La conception des IUs devrait se faire en conjonction avec les autres activités de développement Lanalyse de cas permet de connaître les tâches que les IUs doivent permettre de réaliser Les prototypes de IU se créent de façon itérative, par exemple en incorporant un cas-type à la fois Les prototypes produits aident à compléter la liste des exigences

6 © Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks6 Utilisabilité vs Utilité Est-ce que le système permet à lutilisateur de réaliser ses tâches? Cest lutilité Est-ce que le système permet à lutilisateur dapprendre et de comprendre comment utiliser le système? Cest lutilisabiltié aussi appelée convivialité Ces deux aspects sont essentiels Ils se mesurent dans le contexte des utilisateurs particuliers du système

7 © Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks7 Les différents aspects de lutilisabilité Lutilisabilité comprend différents aspects : Facilité dapprentissage La vitesse à laquelle un nouvel utilisateur peut arriver à utiliser le système Efficacité dutilisation Avec quelle rapidité un utilisateur entraîné arrive à accomplir ses tâches Traitement des erreurs Jusquà quel point le système prévient les erreurs, les détecte et aide à les corriger Acceptation Jusquà quel point les utilisateurs apprécie ce système

8 © Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks8 Courbes dapprentissage

9 © Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks9 Terminologie de base dans la conception des interfaces utilisateur Dialogue: Une fenêtre avec laquelle un utilisateur interagit mais qui nest pas la fenêtre principale Contrôle (Widget): une composante spécifique dune interface Affordance: Lensemble des opérations quun utilisateur peut effectuer à un certain instant État: à un certain point, le système affiche une certaine information, certains contrôles, et a une certaine affordance Mode: une situation où lIU restreint les opérations que peuvent faire lutilisateur Dialogue modale: Un dialogue plaçant le système dans un mode restrictif Rétro-action: la réponse du système à une action de lutilisateur Technique de codage: Différentes façons de représenter linformation afin de communiquer avec lutilisateur

10 © Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks Quelques principes pour lutilisabilité 1. Ne pas se fier seulement sur ces lignes directrices – toujours effectuer des tests avec les utilisateurs Les principes mentionnés ici comporte toujours des exceptions; une interface est de bonne qualité seulement si les utilisateurs la jugent ainsi 2: Baser la conception des IUs sur les tâches que doivent réaliser les utilisateurs Effectuer une analyse de cas afin de structurer lIU 3: Sassurer que la séquence des actions requises pour réaliser une tâche est aussi simple que possible Réduire la quantité dinformation à lire et les manipulations à faire Sassurer que les utilisateurs ne doivent pas avoir à se promener un peu partout afin de réaliser une tâche

11 © Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks11 Quelques principes pour lutilisabilité 4: Sassurer que les utilisateurs savent toujours ce quil doivent faire ensuite Les utilisateurs doivent toujours savoir quelles commandes sont disponibles et lesquelles ne le sont pas Rendre plus apparente les commandes plus importantes 5: Fournir une bonne rétro-action Informer les utilisateurs du progrès des opérations en cours, du point où ils en sont Lorsque quun problème surgit, expliquer en détails les causes et aider lutilisateur à résoudre ce problème

12 © Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks12 Quelques principes pour lutilisabilité 6: Sassurer quil est toujours possible de reculer, de sortir ou de défaire les tâches en cours Laction undo devrait toujours être disponible Les options next et back vont de pair 7: Sassurer que le temps de réponse est adéquat Les utilisateurs sont très sensibles aux temps de réponse trop longs cela peut rendre un système moins attrayant Garder le temps de réponse sous la seconde pour la plupart des opérations Avertir lutilisateur lorsquun temps réponse plus long est anticipé et len informer de la progression

13 © Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks13 Quelques principes pour lutilisabilité 8: Utiliser des techniques de codage facilement compréhensibles Choisir les représentations avec soin Donner toujours accès à une explication textuelle pour assurer que les utilisateur comprennent bien votre symbolique 9: Sassurer que lIU na pas une apparence désordonnée Ne pas afficher trop dinformation à la fois Bien organiser linformation

14 © Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks14 Quelques principes pour lutilisabilité 10: Prendre en considération les besoins des différents groupes dutilisateurs Permettre laffichage en différents langages Le système doit être accessibles aux débutants comme aux experts 11: Fournir toute laide nécessaire Organiser laide correctement Intégrer laide dans lapplication Sassurer que linformation est précise et à jour

15 © Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks15 Quelques principes pour lutilisabilité 12. Être consistant Les graphiques, lorganisation doit être consistante à lintérieur de toute lapplication Utiliser les standard reconnus Demeurer semblables aux applications de même type

16 © Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks16 Quelques techniques de codage Textes et polices de caractères Icônes Photographies Diagrammes et graphiques Couleurs Groupement et entourage Instructions vocales Musique Autre sons Animations et vidéo Clignotement

17 © Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks17 Contre- Exemple

18 © Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks18 Exemple

19 © Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks Évaluation des interfaces Évaluation heuristiques 1. Choisir quelques cas-types 2. Pour chacune des fenêtres impliquées Identifier minutieusement les problèmes qui peuvent être présents 3. Lorsquun défaut est découvert: Donner une brève description du problème Proposer une solution permettant de corriger ce défaut

20 © Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks20 Évaluation des interfaces Évaluation par lobservation des utilisateurs Sélectionner les utilisateurs représentant les plus importants acteurs du système Sélectionner les cas-type les plus importants Décrire des scénarios dusage Bien expliquer le but de lévaluation aux utilisateurs Filmer si possible la session Discuter avec les utilisateurs à mesure quils exécutent la tâche à faire A la fin, débattre avec lutilisateur des difficultés rencontrées Formuler des recommandations

21 © Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks Réaliser une interface simple avec Java Le Abstract Window Toolkit (AWT) Composante (component): ce sont les éléments de base pour construire une interface graphique Button, TextField, List, Label, ScrollBar. Contenants (container): les éléments servant à contenirles composantes constituant lIUG Frame, Dialog et Panel Organisateur (LayoutManager): definit la façon dont les composantes seront assemblées GridLayout, BorderLayout

22 © Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks22 Exemple public class ClientGUI extends Frame implements ChatIF { private Button closeB = new Button("Close"); private Button openB = new Button("Open"); private Button sendB = new Button("Send"); private Button quitB = new Button("Quit"); private TextField portTxF = new TextField(""); private TextField hostTxF = new TextField(""); private TextField message = new TextField(); private Label portLB = new Label("Port: ", Label.RIGHT); private Label hostLB = new Label("Host: ", Label.RIGHT); private Label messageLB = new Label("Message: ", Label.RIGHT); private List messageList = new List();... }

23 © Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks23 Exemple public ClientGUI(String host, int port) { super("Simple Chat"); setSize(300,400); setVisible(true); setLayout(new BorderLayout(5,5)); Panel bottom = new Panel(); add("Center", messageList); add("South", bottom); bottom.setLayout(new GridLayout(5,2,5,5)) bottom.add(hostLB); bottom.add(hostTxF); bottom.add(portLB); bottom.add(portTxF); bottom.add(messageLB); bottom.add(message); bottom.add(openB); bottom.add(sendB); bottom.add(closeB); bottom.add(quitB);

24 © Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks24 Exemple sendB.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { send(); } }); } public void send() { try { client.sendToServer(message.getText()); } catch (Exception ex) { messageList.add(ex.toString()); messageList.makeVisible(messageList.getItemCount()-1); messageList.setBackground(Color.yellow); }

25 © Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks Risques et difficultés dans la modélisation des cas-types et de linterface utilisateur Les utilisateurs diffèrent grandement Tenir compte de ces différences Concevoir un système pouvant être internationalisé Tester le système avec différentes catégories dutilisateurs Les technologies de conception dIU changent rapidement Utiliser des technologies simples et répandues Éviter des designs trop élaborés

26 © Lethbridge/Laganière 2001 Chapter 7: Focusing on Users and Their Tasks26 Risques et difficultés dans la modélisation des cas-types et de linterface utilisateur La conception de lIU occupe la majorité du temps de développement de lapplication: Faire de la conception de IU une activité faisant partie intégrale du processus de développement Prévoir une conception de IU comptant plusieurs itérations et évaluations Les développeurs tendent à sous-estimer limpact dune IU Sassurer que tous les ingénieurs logiciels ont une formation en conception de IU Toujours effectuer des test avec les utilisateurs Étudier les IU de dautres applications


Télécharger ppt "Object-Oriented Software Engineering Practical Software Development using UML and Java Chapitre 7: Focusing on Users and Their Tasks."

Présentations similaires


Annonces Google