De l’analyse des tâches à l’ingénierie des Modèles de tâches

Slides:



Advertisements
Présentations similaires
MOT Éditeur de modèles de connaissances par objets typés
Advertisements

Julie Dugdale Génie Logiciel 2 Julie Dugdale
Processus d'expression du besoin
Plate-forme de conception de systèmes interactifs
Introduction Pour concrétiser l’enseignement assisté par ordinateur
Analyse de la tâche et méthode des scénarios
La démarche clinique infirmière
- TUTORIAL MCIE - Méthode de Conception d’Interfaces Ergonomiques
UML (Unified Modeling Langage)
Système de gestion de bases de données. Modélisation des traitements
PARTIE 3 : Le SYSTEME D’INFORMATION FUTUR
Initiation au système d’information et aux bases de données
De l’analyse des tâches à l’ingénierie des Modèles de Tâches
Évaluation des IHM et ergonomie
Analyse et Conception des Systèmes d’Informations
L’ELABORATION DES FICHES DE POSTE
Parcours de formation SIN-7
Initiation à la conception de systèmes d'information
Vers la conception objet
Modèle, Méthode et Conception
TECFA Technologies pour la Formation et l’Apprentissage
Entre construction théorique et mise en œuvre opérationnelle
MOT Éditeur de modèles de connaissances par objets typés
IGL301 - Spécification et vérification des exgiences 1 Chapitre 2 Le processus dingénierie des exigences (ref : Bray chapitre 2)
Cours Ergonomie des Interactions Personne-Machine 17 et 23 novembre 2011 Les différentes méthodologies dévaluation en IPM Mireille Bétrancourt - TECFA.
Les différentes méthodologies dévaluation en IPM Cours Ergonomie des Interactions Personne-Machine 17 novembre 2009 Mireille Bétrancourt - TECFA - FPSE.
Présentation du mémoire
Lergonomie des IPM : pourquoi, comment ? Présentation 9 Novembre 2005 Mireille Bétrancourt - TECFA TECFA Technologies pour la Formation et lApprentissage.
Stéphanie Bernonville 1, 2 Christophe Kolski 2
La plateforme Multicom
ADAMOS Une plate-forme pour concevoir et évaluer des services proactifs Système proactif ? qui évolue en fonction des paramètres de lenvironnement physique.
Conception des Réalisé par : Nassim TIGUENITINE.
Portée, arrimages et intervenants Évolution des méthodes
SEMINAIRE DE CONTACT novembre 2008 Outils de gestion de projet.
Sensibilisation a la modelisation
Ingénierie Système en SysML appliquée à la rédaction du cahier des charges Y. Le Gallou Séminaire académique STI2D - Calais – 1er avril 2014.
Supports de formation au SQ Unifié
Interface Homme-machine (interaction humain-machine) Emna Hakem Université 7 novembre à Carthage Faculté des Sciences Economiques et de Gestion de Nabeul.
2003 (revisé 2008)SEG Chapitre 11 Chapitre 1 “The Systems Engineering Context” Le contexte du génie de systèmes.
Interface Homme-machine (interaction humain-machine)
Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev.
UML : un peu d’histoire H. Lounis.
LA POSE D’UN DIAGNOSTIC Jm bouthors - Consultant
Le système informatique et le système d’information
Introduction au Génie Logiciel
Unified Modeling Langage
Intro en dessin.
Extrait du Referentiel BTS Systèmes numériques Options : Informatique et réseaux et Électronique et communication S1 à S9 Définition des savoirs et savoir-faire.
Modèle de conception et de production à la SOFAD Journée d’échange du CLIFAD Trois-Rivières, le 3 décembre 2004 Jean-Simon Labrecque, Chargé de projets.
DESIGN MULTIMÉDIA Initiation aux bases de La scénarisation multimédia
Initiation à la conception des systèmes d'informations
Présentation AICHA REVEL INGENIEUR D’ÉTUDE STERIA DEPARTEMENT TRD
TECFA Technologies pour la Formation et l’Apprentissage
Unified Modeling Language
Modélisation des flux Introduction et définition
1-Conception centrée utilisateur 2-Évaluation heuristique
L’Ergonomie dans la conception
Soutenance Phase 1 Bibliographie et Analyse des besoins
2 Tracks Unified Process
Les différentes méthodologies d’évaluation en IPM
Informatique et Sciences du Numérique
Les concepts d’UML - Le Processus Unifié -
UML support à la COO 2ème année IUT Calais-Boulogne Bénédicte Talon
Initiative pour une méthode publique   +33 (0) 
Conception des IHM.
Démarche d’enseignement de l’APL : analyser
FORMULAIRES FOMULAIRE Permet à l’utilisateur d’entrer des renseignements le concernant. Utilisation –Inscription sur un site –Mise à jour d’une base.
1 Philippe TRIGANO - Université de Technologie de Compiègne - FRANCE Philippe TRIGANO INGÉNIERIE MULTIMÉDIA PÉDAGOGIQUE.
Transcription de la présentation:

De l’analyse des tâches à l’ingénierie des Modèles de tâches À partir d’un cours de Philippe Palanque Lui-même tiré d’un tutorial de Fabio Paternò (HCI 2000), Philippe Renevier et Chrsitophe Bortolaso

Processus de conception Concevoir pour l’humain  Sciences (multi/inter)disciplinaires & non-exactes Informaticiens Ergonomes/Psychologues Graphistes Utilisateurs finaux … Concevoir une interaction relève plus de l’artisanat que de l’ingénierie ! Comment concevoir en limitant les erreurs ? Comment vérifier/évaluer ? (le plus tôt possible)

Conception centrée utilisateur Intervention des utilisateurs tout au long du processus Favorise l’explicitation des problèmes/besoins (i.e. émergence d’insights) Implication forte des utilisateurs en conception Gestion des erreurs & feedback rapide Supporte la considération de toutes les dimensions Outillage méthodologique pour chaque étape

Outils méthodologiques

Outils méthodologiques Analyse: observations, interviews, scenarios de travail, modèles de tâches Conception: sessions d’idéation, modèles d’interaction, scénarios de conception Prototypage: story-boards, dessins, maquettes, vidéos, codage, … Evaluation: design walk-through, étude utilisateur, expérimentations in vitro/in vivo, évaluations expertes (heuristiques, recommandations ergonomiques)

Analyse Observation/Interview des utilisateurs Objectif: Support: Comprendre le contexte d’usage Identifier les exigences (fonctionnelles/non- fonctionnelles) Support: Scénarios de travail Analyse/Modélisation de l’activité/tâches

Limites des approches courantes en conception d’IHM UML est dirigé uniquement vers la modélisation des composants du systèmes Peu d’outils disponibles Pas d’outils permettant d’exécuter les modèles pour comprendre leur fonctionnement

Modélisation de la tâche UML: Dans quels modèles est représenté l’utilisateur ? Diagramme comportementaux Diagramme de cas d’utilisation Diagramme d’activité Limites Modèles centrés système Pas de support à l’analyse de l’existant

Pourquoi les approches basées modèles ? Pour mettre en avant les informations abstraites Pour mettre en avant les informations importantes Pour aider à gérer la complexité Un élément important de la plupart des méthodes de conception est la possibilité de raisonner sur des modèles

Des modèles importants en IHM Modèles de tâche Architectures cognitive Modèles de l’utilisateur Modèles du domaine Modèles du contexte Modèles de présentation Modèles de dialogue

UML et IHM Approche à base de modèle Neuf notations Pas de prise en compte de l’interface utilisateur (un peu à partir des Use Cases) Comment améliorer cela ? Raffiner les Use Cases en modèles de tâches ?

Qu’est-ce qu’un modèle de tâches ? Qu’est-ce qu’une tâche ? Qu’est-ce qu’un modèle (de tâches) ?

Qu’est-ce qu’une tâche ? Ses composantes Buts Etat à atteindre (ex. : produire une lettre) Moyens Méthodes, outils ou techniques pour atteindre les buts Activités nécessaires pour atteindre les buts à l’aide des dispositifs Tâche = reflet d’une activité

Qu’est-ce qu’un modèle de tâches ? Les modèles de tâches sont des descriptions logiques des activités à réaliser pour atteindre les objectifs des utilisateurs. Ils se sont révélés utiles pour concevoir, analyser et évaluer les applications logicielles interactives.  Les modèles de tâches décrivent comment les activités peuvent être réalisées pour atteindre les objectifs des utilisateurs lors de l’interaction avec l’application considérée. Fabio Paterno, 2001

Démarche Analyser l’activité des utilisateurs Identifier les concepts Nominale Exceptionnelle Identifier les concepts Énumérer les opérations (tâches) Organiser les opérations (hiérarchie de tâches) Évaluer la décomposition

Analyse des besoins… Comment déterminer les tâches ? Établir/consulter le cahier des charges Comment communiquer entre Psychologues-ergonomes (analyse de l’activité, évaluation ergonomique) Graphistes (conception de l’interface) Informaticien (développement, tests) Utilisateurs

L’approche par scénario En IHM (descriptions détaillées du contexte d'utilisation pour la conception) [Carroll 1995] En ingénierie logicielle ("cas d'utilisation" et description narrative d'usage) [Jacobson 1995]. Pour les systèmes d'information (configuration sociale et environnementale d'un système et impact [Kyng 1995] )

Rôles des scénarios Simplicité et accessibilité aux acteurs [Carroll 1995] Langage commun pour tous les participants facilitant la coopération [Kyng 1997] Catalyseur de la participation des acteurs, de leur créativité et des implications dans choix de conception [Ackoff 1979]. Concrétisation du produit et flexibilité. Intégration de plusieurs niveaux d’abstraction : d’abstrait à concret [Carroll 2000].

Démarche de conception Analyse des besoins Evaluation ergonomique Tests Utilisateurs Conception Conception logicielle Tests d’intégration Tests Unitaires Codage

Démarche de conception Analyse de l’activité Scénario d’activité Analyse de la tâche réelle Scénario de la tâche réelle Analyse des besoins

Exemples de format d’un scénario Représentation narrative (illustrée) Story-board Graphe en ligne (découpage en fonction des tâches) Graphe de déplacement (accompagné de description) Animation …

Description narrative Diffusion d’information contextuelle, géolocalisation, saisie d’information, évaluation collective, diffusion de connaissances établies antérieurement Thèmes Acteur(s) mobilisé(s) V., C. & M. Support(s) utilisé(s) Fond de carte Découverte d’un élément hautement significatif avec perte partielle de localisation Sortie de la séquence 11:04:30 C. trouve une pièce de métal (un culot de forge), elle l’apporte à V. qui arrête immédiatement son activité, ils reviennent à l’endroit où était C. Elle tente de retrouver l’endroit exact où le culot de forge a été trouvé, mais la localisation reste approximative. Tout le monde se regroupe autour de cette découverte. V. recherchait ce type d’élément pour confirmer son hypothèse de la présence de forge dans cette zone. 11:06:45 l’élément est localisé sur la carte et analyser par V. pendant que M. et C. recherche d’autre indice sur la zone de découverte. Une première analyse de la position de l’élément oriente la recherche d’autres indices près de cet élément.

Story-board Extrait du projet européen GLOSS – équipe IIHM (CLIPS-IMAG)

Recueil d’information Il y a des différences entre la : procédure prévue procédure effective Et la procédure minimale

Logique de fonctionnement / d’utilisation Exemple d’un système informatique On dispose d’une base de données conçue suivant le schéma suivant : Proposer une arborescence de menu permettant de manipuler les informations de cette base Visite Client Représentant 1,1 1,n

Logique de fonctionnement Vision de l’informaticien L’arborescence de menus reflète les fonctions internes de la base de données Client Ajouter Supprimer Modifier Consulter Représentant Ajouter Supprimer Modifier Consulter

Exemple de tâche « Je passe mon temps à saisir des nouveaux clients dans la base de données, et je dois leur affecter le représentant le mieux adapté (en fonction de différents critères) … Parfois je reçois un bon de commande envoyé par un représentant nouvellement recruté, je dois alors saisir à la fois le nouveau client et le nouveau représentant … Il arrive que des représentants quittent la société, en général ils partent avec leurs clients, il faut faire du ménage dans la base de données … » Proposez une arborescence de menus adaptée à cette tâche.

Logique d’utilisation Organiser le système d’après l’analyse de la tâche Gestion commerciale Ajouter Consulter représentant Ajouter représentant Consulter Modifier Consulter représentant Ajouter représentant Supprimer représentant Supprimer Client

Méthodologie Analyser l’activité des utilisateurs En amont du processus de conception En collaboration étroite avec les usagers finaux Formaliser/Documenter l’analyse Comprendre l’activité des utilisateurs Que font les utilisateurs? Dans quel ordre? Sous quelle(s) condition(s) ? Avec quel outils travaillent-ils? Quelles informations connaissent ils ? Que doivent ils savoir sur leur travail ? Quelles sont les spécificités du contexte de travail?

Comment analyser l’activité des utilisateurs ? Observation In vitro (Laboratoire) In situ (dans la réalité) Attention à l'écologie des évaluations Suffisant ? Interviews Les responsables (principalement procédure prévue) Les utilisateurs (procédure effective)

Décrivent Mettent en évidence Scénarios en général Qui ? Quoi ? Où ? Comment ? Pourquoi ? Mettent en évidence Les buts La dynamique Les problèmes éventuels Les artefacts utilisés Le contexte d’utilisation

Scénarios de travail Créer une description réaliste du travail d’un utilisateur Demander aux utilisateurs de décrire Des incidents critiques Des situations habituelles/inhabituelles Des activités planifiées/non-planifiées Des situations qui aboutissent/n’aboutissent pas Les éléments du contexte Le contexte d’usage Les artefacts utilisés Les personnes impliquées dans la tâche Documenter ces observations Scénarios + Modèles de tâche 1 modèle de tâche = 1..n Scénarios

Pourquoi modéliser la tâche ? Améliorer la compréhension d’une activité Assister l’évaluation de l’utilisabilité (efficience & efficacité) Enregistrer les résultats d’échanges pluridisciplinaires Support interdisciplinaire Notation modifiable et concise Approche systématique Outils automatiques pour simuler/vérifier Aider l’utilisateur durant son travail

Granularité & niveau d’abstraction Si vous posez la question suivante : Qu'êtes-vous en train de faire ? Vous pouvez vous attendre à : Je tape ctrl-B Je met "bonjour" en gras Je met un mot en gras Je met en évidence un mot Je modifie un document Je tape une lettre Je garde le contact avec ma famille J'attends un coup de fil

Exemple de la tasse de café Faire une tasse de thé Faire bouillir de l’eau Remplir la bouilloire Poser la bouilloire sur la cuisinière Allumer la cuisinière Attendre que l’eau boue Eteindre la cuisinière Prendre la tasse Ajouter le sachet de thé dans la tasse Vider l’eau bouillante dans la tasse Attendre 4 ou 5 minute Boire le thé

Exercice: Faire cuire des pâtes 1) Identifiez les tâches impliquées 2) Construisez l’arborescence des tâches 3) Si vous réalisiez cette tâche chez un ami, quelles questions resteraient en suspens ?

Exercice: FAIRE CUIRE DES Pâtes. Pour faire cuire des pâtes Sortir une casserole et des pâtes Remplir la casserole d’eau Doser les pâtes Attendre que l’eau bout Mettre les pâtes dans l’eau Attendre 10 minutes Attraper une passoire Verser le contenu de la casserole dans la passoire Verser le contenu de la passoire dans une assiette Il faut savoir Où est la casserole et la passoire ? Où sont les pâtes ? Comment fonctionne la gazinière ? Evaluer si les pâtes sont cuites ou non …

Modèles de tâches : différentes utilités Système existant Décrire les tâches des utilisateurs sur les systèmes actuellement à leur disposition Système futur Concevoir les tâches de l'utilisateur sur un système futur (en cours de conception) Activité de l'utilisateur Recenser les activités menées par les utilisateurs sur les systèmes actuels ou futur

Utilisation des modèles de tâche Améliorer la compréhension de l’application (et en particulier son utilisation) Enregistrer les résultats de discussions multidisciplinaires Aider à la conception Aider à l’évaluation de l’utilisabilité Aider à l’évaluation de l’efficacité Aider l’utilisateur durant son travail (aide contextuelle) Documentation (contenu + structure)

Représentation des modèles de tâche Hierarchical task analysis (HTA) GOMS (famille de notation) UAN (User Action Notation) MAD (INRIA) Différentes syntaxes (textuel vs graphique) Différents niveaux de formalisme Différents opérateurs pour la décomposition des tâches

Goal, Operators, Methods, Selection Rules (Card 83) GOMS Goal, Operators, Methods, Selection Rules (Card 83) Goal : ce que l’utilisateur doit accomplir Operators : action effectuée en service d’un but Method : séquence d’opérateurs qui accomplissent un but Selection Rule

GOMS : un exemple

Limitations de GOMS Ne prend pas en compte les erreurs utilisateur Ne prend pas en compte les interruptions de tâches Ne considère que les tâches séquentielles Inadéquat pour les systèmes distribués (notamment les applications web)

UAN - User Action Notation 2 représentations complémentaires Une hiérarchie de tâches utilisant les opérateurs LOTOS (proche de CTT) Les actions de l’utilisateur et le feedback des utilisateurs sont spécifiés sous forme tabulaire (et à bas niveau) Notation textuelle Introduit en 1992 (Hix & Hartson grand succès Developing user interfaces Ensuring, Usability Through Product & Process) LOTOS est un langage permettant de spécifier l'architecture et le fonctionnement de systèmes distribués. La définition formelle de LOTOS fait l'objet de la norme ISO 8807 [ISO88].

Exemple de description UAN

MAD : Model for Activity Description MAD (Sebillote, 94) Aide au recueil de données (interviews, questionnaires, entretiens) Lien : http://kmade.sourceforge.net/

Lien : http://www.irit.fr/recherches/ICS/softwares/hamsters HAMSTERS : Human-centered Assessment and Modeling to Support Task Engineering for Resilient Systems HAMSTERS (Racim, 2014) outil logiciel de modélisation permettant d’éditer, de simuler et d’analyser des modèles de tâches Lien : http://www.irit.fr/recherches/ICS/softwares/hamsters

Un formalisme : Concur Task Tree (CTT)

CCT : ConcurTaskTrees Met l’accent sur les activités de l’utilisateur Structure hiérarchique Syntaxe graphique Ensemble de plusieurs opérateurs temporels (qualitatifs uniquement) Allocation des tâches aux opérateurs Objets et attributs pour les tâches http://giove.cnuce.cnr.it/ctte.html

CTTE Édition interactive de modèles de tâches Utilisation de descriptions informelles Vérification de la complétude de la spécification Enregistrement des modèles dans plusieurs formats Simulation des modèles de tâches Comparaison de modèles de tâches Exécution de scénarios

Typage des tâches Icon Type Exemple Abstract task Any high level task which can be decomposed Human task Think for, Look at, Talk to, … Interaction task Selection, Edit, Control, … Application task Computing, Comparison, Locate, Printing, ...

Operateurs temporels T1>>T2 T1[]>>T2 T1[>T2 T1|>T2 Action Operateurs Enabling/Activation T1>>T2 T1[]>>T2 Disabling/Désactivation T1[>T2 Interruption/Interruption T1|>T2 Choice/Choix T1[]T2 Concurrency/Concurrence T1|||T2 T1|[]|T2 Iteration/Itération T1* T{n} Optionality/Facultative [T]

Opérateurs temporels T1|||T2 : les actions de T1 et T2 peuvent être effectuées dans n’importe quel ordre T1|[]|T2 : T1 et T2 doivent se synchroniser sur certaines actions pour échanger des informations T1>>T2 : quand T1 est terminée T2 devient active T1 []>>T2 : quand T1 se termine elle fournit des informations à T2 et l’active T1[>T2 : quand une action de T2 se produit, la tâche T1 est désactivée

Caractéristique des tâches [T1] : T1 est facultative pour atteindre le but (la tâche de niveau supérieur) T1* : T1 peut être répétée autant de fois que possible pour atteindre le but T1n : T1 doit être répétée n fois pour atteindre le but

Priorité des opérateurs Ambiguïté dans la signification Ambiguïté levée Priorité: [], |||, [>, >>

Hiérarchie et relations temporelles

Relations tâches / sous-tâches

Tâches facultatives

Editeur de modèle de tâches

Des scénarios aux tâches

Simulation

Comparaison de modèles

Conception 1. Analyse des opérateurs au travers des tâches 2. Analyse de chaque tâche (objets, attributs, ...) Identification de la structure des dialogues Choix d’une bonne présentation

Conception Relations temporelles entre les tâches Frequence des tâches uniques et “patrons de tâches” Interaction et techniques de présentation conformes aux types de tâches et aux données manipulées Représentations multiple consistantes ...

Exercice : DAB Modéliser les tâches d’un utilisateur d’un distributeur de billets automatique

Exercice : contraintes du DAB Insérer_Carte, Entrer_Code, Retirer_Carte Demander_Cash, Select_Montant, Retirer_Cash

But : obtenir de l’argent Pré-requis : DAB : tâches But : obtenir de l’argent Pré-requis : Avoir une carte Connaître le montant que l’on veut retirer Connaître le code secret Résultats Prendre l’argent Prendre la carte

DAB : Modèle de tâches

DAB : Modèle de tâches

DAB : Modèle de tâches

DAB : Modèle de tâches

DAB : Erreurs utilisateur

DAB : Scénarios

DAB : Vérification

DAB : Création du modèle de tâche à partir d’interviews

Aller plus loin TERESA : Transformation Environment for inteRactivE Systems representAtions http://giove.cnuce.cnr.it/teresa.html