IUT- Département d’Informatique G. Rey 2016 Département Informatique - IUT Nice-Côte d'Azur Université Nice – Sophia Antipolis 41, Bd Napoléon III, 06206 Nice Cedex 3 Tél : +33 (0) 4 97 25 82 11– Fax : +33 (0) 4 97 25 83 31 1 Introduction à l’IHM – M2105 TD n° 1 1 Objectifs Ce TD/TP illustre la partie du cours sur la programmation des interfaces homme-machine. Les concepts principaux abordés seront : Modèle de tâches Approche par scénario Un compte rendu donnant la réponse à chacune des questions posées devra être rendu à votre responsable de TD/TP par email à la fin de chacune des séances. L’objet (sujet) de l’email devra être le suivant : [S2T][IHM][Gx][TDx]Nom-Prénom / Nom-Prénom Avec Gx le numéro de votre groupe (exemple G1 pour le groupe 1) et TDx le numéro du TD/TP inscrit sur le sujet du TD/TP (exemple TD1 pour le premier TD). Vous ne pouvez pas faire 2 séances avec le même binôme. De même, vous ne pouvez pas faire plus de la moitié des séances seul. Veuillez, sauf indication contraire de votre responsable de TD, faire l’ensemble des exercices marqués « Obligatoire » dans l’ordre de la feuille de TD/TP. Les exercices « Conseillés » sont à faire si vous avez terminé les précédents ou lors de vos révisions. Les exercices « optionnels » sont là pour les plus passionnés d’entre vous. 2 Exercice 1 : Modèle de tâches et notation HTA (obligatoire) Comme nous l’avons vu en cours, le but de l'analyse des tâches est de mettre en évidence et de décrire les tâches à effectuer pour accomplir un travail. Une analyse très fine des tâches peut également servir à prédire ou à expliquer les performances d'un utilisateur dans un environnement donné [Wikipédia]. La méthode d’analyse et de représentation (HTA), vue en cours, consiste en une décomposition hiérarchique d’une tâche en un ensemble de sous-tâches. Un ensemble d’opérateurs et d’annotations permettent de définir l’enchainement (relations d'ordonnancement temporel) entre les sous-tâches d’une même tâche. Pour rappel, la notation graphique se fait à l’aide d’un rectangle décrivant (ou simplement nommant) la tâche. Un opérateur (boucle) peut s’appliquer sur une tâche pour indiquer une répétition (n’oubliez pas de spécifier la condition de répétition ou d’arrêt). Quatre autres opérateurs permettent de décomposer celle-ci en sous-tâches : Séquentielle : Suite de sous-tâches ordonnées. Alternative : Choix entre plusieurs sous-tâches. Alternative non stricte : Choix entre plusieurs sous-tâches mais plusieurs choix sont possibles. Non ordonnée : Ensemble de sous-tâches à réaliser sans notion d’ordre. On notera qu’aucune notation n’est spécifiée pour indiquer les nuances suivantes (on pourra utiliser une annotation pour spécifier cela) : Parallélisme : plusieurs sous-tâches peuvent s’exécuter en même temps. Simultanéité : plusieurs sous-tâches doivent s’exécuter en même temps. Entrelacement : plusieurs sous-tâches peuvent s’exécuter en même temps mais en réalité cela se décompose en une alternance entre les sous-tâches et une seule sous-tâche est réellement exécutée à un instant donné. Enfin, une liaison en pointillé indique le fait qu’une sous-tâche est optionnelle. Il existe plusieurs outils permettant la modélisation en tâches (CTT, K-MADe, AMBOSS, TaskArchitect, …). Pour notre part, nous allons simplement utiliser Word, PowerPoint, ou mieux Visio (ou tous logiciels équivalent capable de faire des boites, et des flèches) de manière à ne pas perdre de temps avec l’apprentissage de logiciels spécialisés. N’utilisant pas les
6
Embed
Introduction à l’IHM – M2105 TD n° 1users.polytech.unice.fr/~rey/cours/supports/ihm/TP1_IHM_M215_2016.pdf · Introduction à l’IHM – M2105 TD n° 1 L’objectif de cette
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
1 Objectifs Ce TD/TP illustre la partie du cours sur la programmation des interfaces homme-machine. Les concepts principaux
abordés seront :
Modèle de tâches
Approche par scénario
Un compte rendu donnant la réponse à chacune des questions posées devra être rendu à votre responsable de TD/TP par
email à la fin de chacune des séances. L’objet (sujet) de l’email devra être le suivant :
[S2T][IHM][Gx][TDx]Nom-Prénom / Nom-Prénom
Avec Gx le numéro de votre groupe (exemple G1 pour le groupe 1) et TDx le numéro du TD/TP inscrit sur le sujet du
TD/TP (exemple TD1 pour le premier TD).
Vous ne pouvez pas faire 2 séances avec le même binôme. De même, vous ne pouvez pas faire plus de la moitié des séances
seul.
Veuillez, sauf indication contraire de votre responsable de TD, faire l’ensemble des exercices marqués « Obligatoire »
dans l’ordre de la feuille de TD/TP. Les exercices « Conseillés » sont à faire si vous avez terminé les précédents ou lors de
vos révisions. Les exercices « optionnels » sont là pour les plus passionnés d’entre vous.
2 Exercice 1 : Modèle de tâches et notation HTA (obligatoire) Comme nous l’avons vu en cours, le but de l'analyse des tâches est de mettre en évidence et de décrire les tâches à effectuer
pour accomplir un travail. Une analyse très fine des tâches peut également servir à prédire ou à expliquer les performances
d'un utilisateur dans un environnement donné [Wikipédia].
La méthode d’analyse et de représentation (HTA), vue en cours, consiste en une décomposition hiérarchique d’une tâche
en un ensemble de sous-tâches. Un ensemble d’opérateurs et d’annotations permettent de définir l’enchainement
(relations d'ordonnancement temporel) entre les sous-tâches d’une même tâche.
Pour rappel, la notation graphique se fait à l’aide d’un rectangle décrivant (ou simplement nommant) la tâche. Un
opérateur (boucle) peut s’appliquer sur une tâche pour indiquer une répétition (n’oubliez pas de spécifier la condition de
répétition ou d’arrêt). Quatre autres opérateurs permettent de décomposer celle-ci en sous-tâches :
Séquentielle : Suite de sous-tâches ordonnées.
Alternative : Choix entre plusieurs sous-tâches.
Alternative non stricte : Choix entre plusieurs sous-tâches mais plusieurs choix sont possibles.
Non ordonnée : Ensemble de sous-tâches à réaliser sans notion d’ordre. On notera qu’aucune notation n’est spécifiée pour indiquer les nuances suivantes (on pourra utiliser une annotation pour
spécifier cela) :
Parallélisme : plusieurs sous-tâches peuvent s’exécuter en même temps.
Simultanéité : plusieurs sous-tâches doivent s’exécuter en même temps.
Entrelacement : plusieurs sous-tâches peuvent s’exécuter en même temps mais en réalité cela se décompose en
une alternance entre les sous-tâches et une seule sous-tâche est réellement exécutée à un instant donné.
Enfin, une liaison en pointillé indique le fait qu’une sous-tâche est optionnelle.
Il existe plusieurs outils permettant la modélisation en tâches (CTT, K-MADe, AMBOSS, TaskArchitect, …). Pour notre
part, nous allons simplement utiliser Word, PowerPoint, ou mieux Visio (ou tous logiciels équivalent capable de faire des
boites, et des flèches) de manière à ne pas perdre de temps avec l’apprentissage de logiciels spécialisés. N’utilisant pas les
fonctionnalités avancées de ceux-ci (du fait qu’on reste à un niveau basic de description de la tâche), ceux-ci ne nous
apportent pas une réelle plus-value.
2.1 Révisions Voici une décomposition en tâche (que vous avez déjà vue lors des petits contrôles de cours). Répondez aux questions
suivantes. Vous expliquerez, de manière détaillée, chacune de vos réponses.
Quelle est la tâche décrite par ce diagramme ?
En combien de sous-tâche (de niveau 1) se décompose la tâche précédente ?
Combien y-a-t-il de sous-tâches (au total) pour cette tâche ?
Combien y-a-t-il de sous-tâches élémentaires/terminales (au total) pour cette tâche ?
Combien de sous-tâches élémentaires doit-on au minimum effectuer pour réaliser cette tâche ? et au maximum ?
3 Exercice 2 : Modèle de tâches et notation HTA (obligatoire) A partir des propositions faites par les étudiants du groupe pour l’exercice de cours n°2,
Comparez les solutions
Proposez une solution de remplacement qui corrigerait les éventuels problème et complèterait les manques identifiés
Si aucun étudiant n’a proposez de solution pour l’exercice 2,
Chaque étudiant doit faire une proposition pour la tâche « Retirer de l’argent au distributeur de billets »
Puis
Comparez les solutions
Proposez une solution de remplacement qui corrigerait les éventuels problème et complèterait les manques identifiés
Pour vous aider dans l’analyse de vos arbres de tâches, reportez-vous à la grille de notation donnée en fin de document.
4 Exercice 3 : Modèle de tâches et notation HTA (obligatoire) Jusqu’à maintenant nous avons beaucoup modéliser des tâches humaines mais sans trop nous attardez sur la partie
logicielle. Or si on modélise des tâches, c’est surtout pour nous aider dans la conception de nos applications logicielles.
Nous allons donc maintenant nous intéresser aux cas des applications logicielles.
Concevez l’arbre de tâches pour une messagerie électronique pour ordinateur type Thunderbird ou Outlook. Pour
simplifier un peu, on fera l’hypothèse que nos messageries ne gèrent que les emails (pas les autres types de messages
comme les flux rss, …)
On va considérer qu’il existe 4 types de tâches :
Tâche humaine (H) : une tâche effectuée par l’homme sans interaction avec le système. Elle peut être
élémentaire ou décomposée en tâche humaine.
Tâche système (S) : une tâche effectuée par le système sans interaction avec l’homme. Elle peut être élémentaire
ou décomposée en tâche système.
Tâche d’interaction (I) : l’utilisateur fait une action sur le système (donne une information, …) ou le système
transmet une information (ou alerte) l’utilisateur. Elle peut être élémentaire ou décomposée en tâche
d’interaction.
Tâche hybride/mixte (M) : tâche non élémentaire ayant des sous-tâches de différents types.
Décorez votre arbre de tâches avec ses différentes informations.
Que pouvez-vous dire sur ces différentes tâches ?
Jusqu’à maintenant on a fait l’hypothèse que notre messagerie était une application « lourde » pour ordinateur.
Est-ce que vous pensez que l’arbre de tâches sera différent pour une application « légère » (type messagerie en
ligne) ? (Argumentez précisément votre réponse)
Et pour une messagerie pour téléphone mobile ? (Argumentez précisément votre réponse)
5 Exercice 4 : Projet fil rouge (obligatoire) Dans la suite de nos TDs nous allons construire une application en partant de l’analyse des
besoins et en allant jusqu’à la réalisation de cette application.
Pour cette année, le choix de l’application est un jeu de tic-tac-toe. Le Tic-tac-toe est un jeu
de réflexion se pratiquant à deux joueurs au tour par tour et dont le but est de créer le
premier un alignement. [Wikipédia]
Sauf indication contraire, les exercices « fil rouge » (identifiés par le logo et uniquement
ceux-ci), pourront être fait par des groupes allant jusqu’à 5 personnes (mais pas plus). De plus
ces groupes pourront être les même à chaque séance.
5.1 Définition des besoins et scénario Nous avons vu lors du cours que l’approche par scénario est un outil d'analyse de situations complexes qui permet
l’examen des interactions entre acteurs, leur équipement, l’environnement lors de la réalisation des objectifs de ces
premiers. L’important de cette approche est d’améliorer la compréhension des problèmes. Attention, cette approche est
en rupture avec l’approche classique de l’ingénierie logicielle mais tend à se développer de plus en plus en entreprise.
On a vu que les scénarios peuvent prendre plusieurs formes (storyboard, …). Nous allons lors de ce TD/TP nous
concentrer sur la description narrative. C’est à dire ce que font les utilisateurs lors de la réalisation d’une tâche.
L’objectif de cette approche est de mettre en place un nouveau mode d’organisation des données lors de la phase
d’analyse des besoins de manière :
à fournir un support commun de communication entre utilisateurs et concepteurs
à constituer une aide lors du développement
à fournir des descriptions détaillées de contextes d’utilisation
à fournir une base pour imaginer ce que sera le futur système
à fournir des matériaux pour la constitution de la documentation utilisateur
Il ne s’agit donc pas de simplement rédiger une histoire, mais bien de segmenter celle-ci en étapes (on pourra parler de
situations) qui viendront illustrer des tâches-clés du futur système. Pour chacune de ces situation/étapes, il sera
nécessaire d’identifier les 5 points suivants :
1. La ou les tâches liées à la situation : cela nous permettra de faire le lien avec le modèle de tâche et donc de connaitre les tâches principales qui le composent.
2. Les acteurs de la situation : Cela nous permettra de faire le lien avec le modèle de l’utilisateur. En fonction de l’utilisateur, certaines contraintes pourront (ou non) apparaitre.
3. Les besoins fonctionnels de la situation : c’est-à-dire quel sont les objectifs de cette tâche 4. Les contraintes matérielles et contextuelles : est-ce que le matériel mis en œuvre dans la situation à un
impact sur la réalisation de la tâche ? idem pour l’environnement lui même 5. Les mécanismes informels : cette partie est la plus difficile. Elle consiste à illustrer s’il y a des mécanismes
implicites, inconscients, … qui viennent influencer la tâche. Pour notre TP on ignorera cette partie. Une étape/situation pourra par exemple prendre la forme ci-dessous :
L’identification des différents éléments n’est qu’une première phase. Il est important de tirer les enseignements de
chaque élément identifié.
Par exemple, s’il y a plusieurs utilisateurs, il faudra un système collaboratif qui permettra un accès partagé entre les
utilisateurs aux différentes ressources. Il faudra peut-être également des moyens d’échanges de données et de dialogues
entre les utilisateurs.
Un autre exemple, si la situation se passe en condition de mobilité (déplacement dans le désert), il y aura probablement
des difficultés au niveau du réseau ce qui voudra dire qu’il faudra anticiper les coupures (mécanisme de caches) et facilité
le rétablissement des communications. Au contraire, si la situation est à l’intérieur d’un bureau, on devrait avoir une
bonne connexion réseau (filaire ou wifi) mais par contre on pourrait avoir des problèmes sur la localisation GPS.