• Aucun résultat trouvé

Chapitre 4 Approches techniques supportant l’apprenabilité des systèmes

4.2 L’approche par multicouches

Assister l’apprentissage, la progression ou le guidage de l’utilisateur à l’aide des interfaces multicouches revient à organiser l’interface utilisateur de l’application dans ce but. Pour bien comprendre cela, il est nécessaire de prendre le temps de décrire la structure intrinsèque des interfaces multicouches à savoir la couche et la séquence.

4.2.1 Nature et objet d’une couche

Une couche correspond à un ensemble d’éléments constituant une partie d’une application informatique [91], à savoir des fonctionnalités, des éléments de présentations graphiques (p. ex. icônes, étiquettes, des boutons, etc.) ou encore des données (ex. informations textuelles, images, vidéos ou encore du son). Elle possède un but spécifique pour lequel elle a été conçue afin de correspondre par exemple à un niveau de compétence de l’utilisateur ou encore à une tâche précise [91]. La littérature donne l’exemple d’une couche permettant à l’utilisateur de réaliser uniquement des tâches basiques de l’application ou une autre couche qui permet uniquement la réalisation de tâches avancées [92].

Ainsi, la signification de la couche peut se traduire dans l’interface utilisateur par un choix spécifique de répartition des fonctionnalités et/ou par des changements des éléments de présentations tels que des étiquettes, liste de choix, etc.[93]. Ainsi, une même fonctionnalité peut évoluer à travers les différentes couches. À savoir-être présenté d’abord avec du texte dans les couches initiales pour être disponible dans les couches supérieures uniquement par des icônes. Selon Gustavsson [94], d’autres caractéristiques de l’interface utilisateur peuvent évoluer entre les couches telles que les dimensions des composants ou la quantité de l’information. Pour cet auteur, s’adapter à l’utilisateur se traduit dans l’interface graphique à changer son contenu, sa disposition, la terminologie à employer.

La composition d’une couche découle de la prise en compte de facteurs tels que le but, le nombre de fonctions et le niveau de complexité de l’application [94]. Les fonctions peuvent être regroupées par difficulté, complexité, fréquence d’utilisation, niveau d’abstraction, utilisation prévue [94]. Cependant, il est important de prendre en considération les fonctionnalités ayant une relation de dépendance, à l’exemple des fonctions d’édition de

texte comme le « copier-coller » que l’on retrouve dans la majorité des applications de traitements de texte. En effet, séparer des fonctionnalités dépendantes dans des couches différentes pour répondre à un critère de complexité ou autre par exemple, demanderait un changement de couche de la part de l’utilisateur.

Dans la littérature, différentes méthodes ont été utilisées par les concepteurs pour composer les couches de leurs applications. Leung (2010) a classé les fonctionnalités de son application sur téléphone mobile comme étant soient basiques ou avancées à partir d’un questionnaire administré auprès de plusieurs participants [65]. L’objet de ce questionnaire était de déterminer les fonctionnalités de l’application que les participants percevaient comme nécessaire à apprendre en premier lieu (fonctions basiques) et celles qui étaient perçues comme secondaires donc pouvant être apprises après les fonctions basiques (fonctions avancées). Christiernin et coll. [91] ont réalisé dans leurs travaux concernant l’évaluation d’une application médicale des entrevues de participants afin d’établir les exigences de ces utilisateurs et ont pu ainsi déterminer les couches de l’application réparties en deux catégories, couches basiques et couches avancées [91].

Une fois que les couches sont déterminées, il reste à définir le degré de visibilité des couches supérieures. Deux approches sont utilisées à cet effet, soient les fonctionnalités des couches supérieures sont cachées à l’utilisateur donc non visible ou bien elles sont marquées comme indisponibles [95]. Pour Leung (2010), cacher les fonctionnalités est une approche qui minimise la complexité visuelle des couches initiales de l’interface utilisateur.

4.2.2 L’organisation des couches

Pour supporter l’apprentissage du fonctionnement du système par l’utilisateur, les ensembles de couches sont placés les uns par rapport aux autres selon une séquence significative [90]. Autrement dit, l’agencement des couches est censé aider l’utilisateur à apprendre le fonctionnement d’une application pour réaliser des tâches en fournissant un ordre dans lequel les fonctions pourraient être apprises. La séquence est indéniablement la clé de la conception en couches. Pour un utilisateur débutant, elle peut l’aider à prendre en main les fonctions nécessaires pour réaliser les tâches selon leurs capacités. De même, pour des utilisateurs plus expérimentés, elle est la solution pour trouver la meilleure couche adaptée à leurs besoins. La

complexité peut être réduite et l’interface mieux adaptée aux utilisateurs en fonction du niveau de leurs connaissances et leurs compétences [94].

Pour déterminer la séquence qui sous-tend la structure des multicouches, le concepteur doit définir un paramètre spécifique communément appelé paramètre d’ordre. Il détermine l’organisation dans laquelle les fonctions seront placées dans les couches et donc l’ordre d’apparition dans l’interface de l’application. Selon l’objectif ciblé par l’application, le concepteur peut définir le paramètre d’ordre sur le niveau d’expertise ou de connaissance de l’utilisateur, sur le niveau de compétence requis à un niveau spécifique pour réaliser une tâche [94]. Selon cet auteur, seuls un ou deux paramètres d’ordre sont requis pour créer une structure en couche [94].

4.2.3 Progression de l’utilisateur dans les couches

Comme décrit précédemment, les interfaces multicouches ont pour objectif de guider l’utilisateur dans l’apprentissage du fonctionnement du système. Pour ce faire, elles sont basées sur une organisation en couches suivant un ordre spécifique dans laquelle les utilisateurs évoluent. Ainsi, si l’utilisateur se sent confiant par rapport aux connaissances acquises de la couche initiale, ce dernier doit pouvoir « passer » à couche supérieure. Pour progresser dans la séquence, un mécanisme de transition entre les couches doit être intégré dans l’application. Dans la littérature, deux approches sont proposées pour réaliser cette transition, soit directement par l’utilisateur par le biais d’un élément de présentation de l’interface [90, 96], soit par le système en déterminant automatiquement la couche adéquate en analysant l’utilisation réalisée par l’utilisateur de l’application [97]. Shneidermann [90], a donné la possibilité à l’utilisateur de contrôler sa progression dans son logiciel de traitement de texte en déplaçant une « barre glissante » selon qu’il souhaite accéder aux couches supérieures ou inférieures (voir Figure 7).

Figure 7 - Mécanisme de changement de couche, Image extraite de (Shneiderman [90]) À l’opposé, deux méthodes ont été proposées pour changer automatiquement de couches en se basant soit sur l’expérience antérieure de l’utilisateur avec d’autres applications similaires ou soit sur la façon dont l’application est lancée [97].

4.3 Résumé

Dans le présent chapitre, il a été présenté les principales techniques contribuant à améliorer l’apprenabilité des systèmes. Elles ont toutes des avantages et des limites que le concepteur se doit de prendre en considération dans son choix pour la conception d’une technologie d’assistance facile à apprendre. L’approche par multicouches a été choisi pour le présent travail de recherche compte tenu de ses caractéristiques et des spécificités de la population d’étude.