Cours 3 - lutes.upmc.frlutes.upmc.fr/delozanne/2009-2010/IHM-IFL-TICE... · Cours 1 : Facteurs de...

Preview:

Citation preview

Conception des logiciels interactifs

Méthodes de conception centrée utilisateurs

Cours 3

1

M2-IFL/DU-TICE, UPMCElisabeth.Delozanne@upmc.fr

http://www.lutes.upmc.fr/delozanne/2009-2010/M2-IFL-DU-TICE-09-Accueil.htm

Méthodes de conception centrée utilisateurs

Cours 1 : IHM, complexité

Tâche

Conception

2

HumainsTechnologie

Organisation et environnement socialChacun des facteurs influence les autres

Cours 1 : Facteurs de succès

�Cycle de conception�Conception centrée usager�L’analyse des tâches et les analyses en

contexte de travail usuel

3

contexte de travail usuel�Le prototypage rapide�L’évaluation constante�Conception itérative�La qualité de la programmation

Cours 2 : les utilisateurs ?

�L’analyse des tâches et les analyses en contexte de travail usuel� Travail prescrit/travail réel� Techniques

4

� Techniques• Entretiens, incidents critiques,

observation, magicien d’oz, • Scénarios, jugements d’experts, revue

de conception, maquette et prototype

Cours 1bis et 6 : Évaluation� Au cœur du processus de conception� Évaluation sans utilisateur

� Méthodes d’inspection (cours 1bis)• Inspection heuristique• Revue de conception• Revue de conception• Expertises

� Méthodes avec utilisateur• Tests d’utilisabilité• Évaluation coopérative

5

Plan�Méthodes de conception et Conception centrée

utilisateur� Approche génie logiciel� Approche ergonomique� Exemples de démarches de conception en IHM

6

� Exemples de démarches de conception en IHM� Points communs à toutes ces méthodes

�Exemples de méthodes de conception� Sites web : Coutaz, Lynch, Landay, Boucher� Lucid� Gould

Idées de base�Équipe pluridisciplinaire

� Au moins : • informaticien, ergonome, graphiste, spécialiste du

domaine de l’application� Dépend des finances et de l’ampleur du projet

7

� Dépend des finances et de l’ampleur du projet• Techniques « low cost »• Syndrome de l’ABS

�Intégration de méthodes issues � de l’informatique (Génie logiciel)� de l’ergonomie

Différences GL/ergonomie� Objet d’étude

� GL : la machine : fonctionnement du système � Ergo : les humaines : utilisation du système

� Analyse des besoins� GL : fonctionnalités (utilité)� Ergo : utilisateurs et activité (utilisabilité)

8

� Ergo : utilisateurs et activité (utilisabilité)� Conception

� GL : conception de l’application puis de l’interface� Ergo : conception en parallèle du noyau applicatif et de

l’interface� Évaluation

� GL : Validation (tests unitaires, d’intégration du système) � Ergo : Évaluation ergonomique

GL : Modèle en cascade (1970)

Analyse des besoins

Conception du système et du logiciel

9

Intégration et test du système

Codage et tests unitaires

GL : Modèle en cascade avec itérations

Analyse des besoins

Conception du système et du logiciel

10

Intégration et test du système

Codage et tests unitaires

GL : Modèle en V� (pour les systèmes où la finalité est bien cernée, 1981)

Conception

Analyse des besoins Tests d'acceptation

Tests du système

11

Conception logicielle

Codage

Tests d'intégration

Tests unitairesConception détaillée

Autres modèles en GL� Modèle en spirale (Boehm 1988) pour les applications à

risques� Modèles itératifs

� Méthode incrémentale (UP, Unified Process)• Prototype livrable à chaque incrément)• Prototype livrable à chaque incrément)

� Modèles en Y (2TUP toutiyoupi)• Spécification fonctionnelle//spécification technique

� Méthodes agiles (2001)� RAD (rapid application development)� X-P (Extrem programing)

12

Méthodes et cycle de développement

•Analyse •des besoins •Élaboration •Construction •Transition

•Processus projet•Processus organisationnels•Spécifications•Analyse & Conception

•Phases•RUP

•2TUP

•XP

13

•Analyse & Conception•Implémentation•Tests•Déploiement•Support du projet•Configuration•Gestion du projet•Environnement

•Itérations

•Itération•Préliminaire

•Iter.•#1

•Iter.•#2

•Iter.•#n

•Iter.•#n+1

•Iter.•#n+2

•Iter.•#m

•Iter.•#m+1

[Didier Girard]

User Centered System Design (UCSD, Norman 86)

Étape d'analyse- systèmes existants- contexte d'utilisation

Synthèse de l'analyse :- Modèle de l'utilisateur- Modèle de la tâche

ConceptionCentréeUtilisateur

Caractéristiques de l'utilisateur

14

Étape de conception :- Les concepts informatiques- Modèle de l'interaction

Critères d'Utilisabilité

Scénariosd'utilisation

de l'utilisateur

Norme ISO 13407 (1999)� Les 5 principes de la conception centrée utilisateur

� Une analyse des besoins des utilisateurs, de leurs tâches et de leur contexte de travail

� La participation active des utilisateurs à la conception� Une répartition appropriée des fonctions entre les

utilisateurs et la technologie

15

� Une répartition appropriée des fonctions entre les utilisateurs et la technologie

� Une démarche itérative de conception� L’intervention d’une équipe de conception

multidisciplinaire

Conception centrée utilisateur

� l'utilisateur et sa tâche sont prioritaires sur le fonctionnement du système� remplacer la logique de fonctionnement par la logique

d ’utilisation dans la conception de logiciel� "Talking to users is not a luxury, it's a necessity"(Gould

88)

16

88)� "Early and continual focus on the user, fight for user "

(Schneiderman)�démarche qui intègre

� l'analyse de l'activité et des modèles d'utilisateurs� les guides et principes ergonomiques

� Conception techno-centrique

Contre-exemples� Conception ego-centrique

17

( cours Landay)

Préoccupations ergonomiques & modèle en V (Coutaz)

Analyse des besoins

Modèle de l'utilisateurModèle de la tâche

Évaluationergonomique

18

Conception logicielle

Conception

Analyse des besoins

Codage

Tests d'acceptation

tests d'intégration

Espace IHM

Modèle de l'interaction

tests unitaires

tests du système

Espace Logiciel

L'évaluation au cœur de la conception

19

Un modèle proposé par des ergonomes

20

(Kolski 2001)

Conception participativeW. Mackay, C. Letondal (2004)� l'utilisation de la technologie est co-adaptative

� la technologie modifie les habitudes de travail et les attentes des utilisateurs

� les utilisateurs adaptent la technologie à leurs besoins, l'interprètent et la modifient

� obtenir des informations sur les utilisateurs

21

� obtenir des informations sur les utilisateurs� par différentes approches au sein d'équipes

pluridisciplinaire (triangulation)� par différentes techniques (dont prototypage)

� intégrer les utilisateurs au processus de conception� indispensable sur les activités de collaboration ou sur les

activités ouvertes et mal identifiées

Conception itérative� Proposer des solutions techniques à partir de scénarios

qui permettent d’explorer leurs avantages et leurs inconvénients

� Techniques d’exploration des scénarios pour les faire évoluer

� Techniques de protoypage

22

� Techniques de protoypage

Plan� Méthodes de conception � Exemples de méthodes de conception centrée utilisateur

� Coutaz

� Landay

� Lucid

� Gould

23

� Gould

� Synthèse personnelle

Conception de sites web (Coutaz)� Principes de base

� Ne se limite pas à écrire du code html ou Java� La valeur du contenu est centrale� Nécessite une bonne connaissance du public cible, de

leur activité et du contexte de l’activité

24

leur activité et du contexte de l’activité� Analyses de terrain indispensables

� Spécificités du web� Multiplicité des types d’accès� Variabilité des ressources physiques� Diversité des utilisateurs� Temps de développement très courts� Mises à jour fréquentes

Processus de développement1. Organisation de l’équipe

� Chef de projet, Concepteur d’interaction, développeur, expert en utilisabilité, graphiste, auteur, rédacteur

2. Définition du site� Cahier des charges, scénarios, contenu du site

25

� Cahier des charges, scénarios, contenu du site3. Conception et prototypage

� Critères de succès, structure du site, navigation, contenu, présentation

� Règles ergonomiques, contraintes techniques4. Évaluation

� Tout au long de la conception� Implique tous les membres de l’équipe + le client + des

utilisateurs

Le cahier des charges� Objectifs généraux et critères de succès� Utilisateurs cibles� Spécifications techniques de la plateforme d’accueil� Contraintes particulières� Analyse des tâches

26

� Analyse des tâches

Landay : design of sites

27

Document à la fin de l’étape : découverte

� Site :

� Buts du site :

� Contraintes :

28

� Critères de succès :

� Catégories d’utilisateurs (personnages) :

� 10 principales utilisations du site (scénarios d’utilisation)

LUCID� Logical User-Centered Interactive Design� Principes :

1. Distinguer� Conception centrée utilisateur • Conception technique

29

• Conception technique2. Logiciel : composant d’une activité humaine plus large3. Prendre en compte les communications humaines dans

l’activité4. Garder trace des actions passées de l’utilisateur5. Concevoir dans les termes de l’utilisateur, de l’activité

et non dans les termes techniques

Les 6 étapes de Lucid1. Développement du concept du produit

� Construire une vision claire et partagée2. Analyse des besoins

� Découvrir les utilisateurs et leur activités3. Conception d’un prototype

Conception globale

30

� Conception globale4. Conception itérative

� Conception détaillée5. Conception et développement informatiques

� Suivi de réalisation6. Sortie du produit

� Support à l’adoption du produit et préparation de la version suivante

1. Développer le concept � Décrire rapidement le produit

� Son nom, à qui s’adresse-t-il ? Que fait-il ? Quel problème résout il ?

� Définir les retombées attendues� Quels sont les bénéfices attendus du projet ?

� Identifier le public ciblé et le segmenter

31

� Identifier le public ciblé et le segmenter� Construire des catégories (rôles, tâches, compétences)� Ne pas oublier les utilisateurs secondaires : vendeurs…

Identifier les principales tâches qui pourront être accomplies avec le système

� Identifier les contraintes de haut niveau� Plateforme, bruit, accès public

� Proposer une maquette pour illustrer le concept�Produit : une description d’une page et une maquette

2 Analyse des besoinsIndispensable de travailler avec des utilisateurs

finaux dans cette étape� Segmenter le public cible� Identifier les principales tâches� Créer des scénarios pour décrire le travail actuel

32

� Créer des scénarios pour décrire le travail actuel� Identifier les fonctionnalités à définir

� intégration dans l’activité� besoins de communication

� Identifier les objets métier� objets métiers : pas les objets informatiques

Produit : un document de synthèse des besoins

3 Conception d’un prototype� Développer le modèle conceptuel de l’interface � Identifier les métaphores � Déterminer les principaux écrans et la navigation d’un

écran à l’autre� Définir les grandes lignes d’une charte graphique

33

� Définir les grandes lignes d’une charte graphique

Produit de cette étape : un diaporama présentant� les principaux écrans � la navigation

4 Conception itérative� Affinement de la conception à partir du premier

prototype� Revue de conception� Inspection par des experts� Inspection par des utilisateurs

34

� Inspection par des utilisateurs� Tests d’utilisabilité

Produit : un dossier de spécifications et un prototype stabilisé

5 Conception et développement informatiques

� Méthode de Génie Logiciel� Modélisation informatique (UML)� Mise en œuvre informatique

� Suivi de réalisation� Ajustements de budgets, de délais, suivi de

modification de spécifications

35

modification de spécifications� Définir

� Les procédures d’installation� L’aide en ligne� La documentation� La formation

6 Livraison du produit� Tests finaux auprès de quelques utilisateurs� Évaluation du système� Préparation de la prochaine version

36

La méthode de J. D. Gould� Objectif : Développer des systèmes utilisables� Utilisabilité ? 11 critères� Le processus de conception

� 4 phases• Démarrage, conception initiale, développement

itératif, installation

37

itératif, installation� 4 principes

• Se centrer continuellement et depuis le tout début sur les utilisateurs

• Tester continuellement et depuis le début auprès des utilisateurs

• Adopter une méthode de conception itérative• Maintenir une vision globale des problèmes

d’utilisabilité

11 critères d’utilisabilité� Performance du système : fiabilité et réactivité� Fonctionnalités : adéquation à l’activité� Interface utilisateur : organisation, dispositifs matériels

d’entrée sortie, conception pour les utilisateurs finaux mais aussi pour d’autres groupes

� Documents d’accompagnement : utilisateurs finaux et

38

� Documents d’accompagnement : utilisateurs finaux et autres groupes

� Traduction : de l’interface et des documents� Diffusion : formation, aide en ligne, support téléphonique� Adaptabilité et extension� Installation et désinstallation� Maintenance et service� Publicité : acheter et utiliser� Groupes d’utilisateurs

Leçons de l’expérience� Dans des systèmes complexes personne ne réussit du

premier coup� Le développement de logiciel comporte toujours des

surprises� Il faut naviguer dans un océan de changements

Rédiger des contrats n’élimine pas les besoins de changer

39

� Rédiger des contrats n’élimine pas les besoins de changer� Les besoins évoluent avec le système� Les concepteurs ont besoin d’outils logiciels pour les

assister� Définissez des objectifs de comportement du système et

des objectifs de performance� Aussi bon que soit votre système, les utilisateurs feront

des erreurs en l’utilisant

Les étapes incontournables (1)� Démarrage

� Définir le problème qui se pose aux utilisateurs� Étude de l’existant, des normes, recommandations etc.

� Conception initiale� Identifier les utilisateurs et les tâches qu’ils ont à

40

� Identifier les utilisateurs et les tâches qu’ils ont à effectuer

� Étudier les compétences des utilisateurs� Étudier les contraintes matérielles et logicielles� Définir des objectifs de comportement du système

Les étapes incontournables (2)� Conception itérative

� Construire des scénarios d’utilisation� Concevoir et construire des prototypes� Tester les prototypes� Modifier itérativement les prototypes jusqu’à ce que

41

� Modifier itérativement les prototypes jusqu’à ce que soient atteints :

• Les objectifs• Les dates butoirs

� Installation� Installer le système chez les utilisateurs� Évaluer les réactions des utilisateurs et leur degré

d’adoption du système

Principe 1� Se centrer continuellement et depuis le tout début sur les

utilisateurs� Comment ?

� Définir un ensemble d’utilisateurs potentiel. Penser aux utilisateurs secondaires : formateurs, vendeurs etc.

� Parler avec eux des points positifs et négatifs de leur travail� Visiter les lieux de travail , Observer ces utilisateurs quand ils

42

� Visiter les lieux de travail , Observer ces utilisateurs quand ils effectuent les tâches, Les filmer

� Étudier l’organisation du travail� Leur demander de commenter à haute voix quand ils travaillent� Essayer de faire leur boulot (si possible)� Faites participer les utilisateurs� Intégrer un expert du domaine dans l’équipe de conception� Utiliser l’analyse de tâches� Utiliser des questionnaires� Définissez des objectifs de comportement du système

Analyse de tâches� Qui utilisera le système ?� Quelles sont les tâches qu’ils effectuent actuellement ?� Quelles tâches sont souhaitables ?� Comment sont apprises les tâches� Où sont elles accomplies ?

43

� Où sont elles accomplies ?� Comment les utilisateurs accèdent-ils aux données pour

effectuer leur tâches ?� De quels autres outils les utilisateurs disposent-ils ?� Comment les utilisateurs communiquent-ils entre eux ?� Quelle est la fréquence des tâches ?� Quelles sont les contraintes temporelles et matérielles ?� Qu’est-ce qui arrive quand ça ne va pas ?

Synthétiser l’analyse de tâches (1)� Méthodes formelles

� Ex : GOMS (Goals, Operators, Methods, Selection rules)� Lourdes et complexes à mettre en œuvre

� Modèles hiérarchiques de tâches� Tâche = but + procédure (sous-tâches avec des relations)

44

� Tâche = but + procédure (sous-tâches avec des relations)� Tâches composites et tâches élémentaires� Arbres de tâches « décorés »

• Objets métiers, pré ou post conditions, fréquence, complexité, durée, acteur

Synthétiser l’analyse de tâches(2)� Listes de tâches

� Description� Catégorisation� Séquencement

Dépendances

45

� Dépendances� Durée

�Scénarios de tâches� Commentaires, questions, minutage etc.

Appliquer l’analyse de tâches� Quelles sont les tâches que le système doit couvrir et

celles qu’il vaut mieux faire manuellement ?� Quelles sont les tâches qui posent le plus de problèmes

aux utilisateurs ?� Le système résout-il des problèmes essentiels ou

marginaux ?

46

marginaux ?� Est-ce qu’on oblige l’utilisateur à des tâches redondantes� Quelles sont les relations entre les tâches ?

Principe 2 : tester, tester, tester� Faire tester des scénarios écrits ou filmer� Rédiger les manuels utilisateurs avant le codage� Faire des maquettes et simuler le futur système� Construire très tôt des prototypes� Faire très tôt des démonstrations� Utiliser des vidéos

47

� Utiliser des vidéos� Utiliser les forums, les réseaux, les conférences� Tester les prototypes de façon rigoureuse� Organiser des séances de cassez-moi-ça� Mener des études de terrains� Faire des études de suivi d’utilisation� Inclure des programmes qui gardent des traces des

actions des utilisateurs pour les analyser

Principe 3� Adopter une méthode itérative de conception� 3 impératifs

� Identifier les changements et les évaluer• Tests auprès des utilisateurs, inspection etc.• Conséquences du changement

48

• Conséquences du changement� Se donner les moyens d’effectuer des changements

• Organiser le travail de développement• Disposer d’outils logiciels

� Vouloir effectuer des changements

Principe 4� Maintenir une vision globale des problèmes d’utilisabilité� Comment ?

� Un groupe doit être chargé de l’utilisabilité sur l’ensemble du projet et sur l’ensemble des critères

� Rédiger les manuels utilisateurs avant le codage pour

49

� Rédiger les manuels utilisateurs avant le codage pour guider le codage

� Rédiger des manuels utilisateurs pour les utilisateurs secondaires (formateurs, vendeurs, maintenances, chercheurs etc.)

� Prévoir la diffusion et l’exploitation du produit

Synthèse personnelle : besoins� Utilité globale

� Moyens :• Entretiens, étude de l’existant

� Résultats :• Objectifs généraux, critères de succès (client/donneur

d’ordre)� Utilisateurs

MoyensUtilisateurs� Moyens

• Entretiens, observations, statistiques, règles générales, Magicien d’oz

� Résultats• Personnages (moins de 10) et des scénarios d’utilisation

� Tâches� Pour un site Web

• Énumérer le contenu, les fonctionnalités principales

50

Synthèse personnelle : conception (1)Conception générale� Pour un site web

� Architecture de l’information, choix des termes, navigation et les transactions

� Moyens : tris des cartes, concurrence, scénarios et personnages

� Moyens : tris des cartes, concurrence, scénarios et personnages

� Résultats : plan de site, parcours clients, transactions� Micro-utilité : Les petits plus qui font la différence

� Moyens : Analyse concurrentielle, Scenario de conception, Remue-méninges, Revue de conception, storyboard, prototype video, maquette papier

� Résultats : prototypes low fidelity, scenarios de conception

51

Synthèse personnelle : conception (2)Interface conceptuelle� Pour un site web :

� Organisation générale des pages (zoning), maquettage conceptuel

� Pour une application� Pour une application� Table des objets et des fonctions� Prototypes

Interface concrète� Alternatives de conception, Storyboard, Charte

graphique, Revue de conception, inspection par des experts

52

Synthèse personnelle (plus tard)� Développement� Évaluation

53

Références� http://www.ergolab.net/

� http://iihm.imag.fr/docs/coutaz.ecole2/ConceptionPagesWeb.html

� http://www.designofsites.com/home/� http://leadersintheknow.biz/UsabilityUserExperience/L

UCIDFramework/tabid/178/Default.aspx

54

� http://leadersintheknow.biz/UsabilityUserExperience/LUCIDFramework/tabid/178/Default.aspx

� Gould, J. D., Boies, S. J., & Ukelson, J. (1997). How to design usable systems. In Helander, M. G., Landauer, T. K., & Prabhu, P. V. (Eds.), Handbook of human-computer interaction, 2d ed., 231-254. Amsterdam, The Netherlands: North-Holland.

� John M. Carrollhttp://www.personal.psu.edu/faculty/j/m/jmc56/

Reférences (suite)� Boucher A., Ergonomie Web, Eyrolles, 2009� Brangier E., Barcenilla J., Concevoir un produit facile à utiliser :

Adapter les technologies à l’homme, Editions d’organisation, 2003.� Letondal C., Mackay W., Participatory Programming and the Scope of

Mutual Responsability: Balancing Scientific, design and software commitment, Proceedings Participatory Desing Conference, Toronto, Canada, 2004.

55

Canada, 2004.� Mackay W., Fayard A.-L., "Radicalement nouveau et néanmoins

familier : les strips papiers revus par la réalité augmentée" , Actes des Journées IHM 1997

Take home messages�Idée force

� Talking to users is not a luxury (Gould)� Time spent in the early phases pays most dividends

(Landay)�Deux problèmes de conception

56

�Deux problèmes de conception� Conception centrée utilisateur (Ergo)� Conception technique (GL)

�Conception centrée utilisateur en deux niveaux� Niveau tâche/activité : interface conceptuelle,

conception globale� Niveau écran : conception détaillée

Recommended