CHAPITRE 1 :
Notions sur les interfaces
Homme/Machine
1. Introduction
Dans une application
informatique, la communication avec un utilisateur est interactive. Les
échanges s'effectuent par l’intermédiaire d’une interface chargée de traduire
les messages.
Cette
séparation entre l'interface et le noyau fonctionnel d'une application relève
du génie logiciel.
De
nombreux types de dialogue utilisateur/ordinateur peuvent être utilisés. Ils se
fondent sur des mnémoniques (commandes), un langage quasi-naturel, des écrans
de saisie, des menus et des questions-réponses. En ce qui concerne les trois
premiers types de dialogue, l’initiative vient de l’utilisateur alors que pour
les deux derniers elle vient de la machine.
Figure
1. Présentation d’une interface Homme/Machine
L'interface doit pouvoir (voir figure
1) :
- communiquer avec une application
informatique,
- communiquer avec l'utilisateur
humain,
- effectuer la traduction entre le
monde de l'application et celui de l'utilisateur
2.
Différents types de communication entre la machine et l’homme
. Il
existe différents moyens de communication :
- le langage naturel,
- les langages de commandes,
- les
interfaces de type menu,
- les interfaces de type question/ réponse,
- les
interfaces dites graphiques.
2.1 Les interfaces en langage naturel
(pseudo-langage et déclaratif)
Lorsque
l’interface est en langage quasi naturel ou déclaratif, l’échange ne sera
possible que si les systèmes ne deviendront accessibles aux utilisateurs peu
expérimentés. Les systèmes doivent gérer des bases de données (connaissances)
axées sur des sujets précis.
Cependant, les problèmes posés par le
traitement automatique des langages naturels sont complexes du fait de
l’ambiguïté inhérente à ces langages. Même en langage quasi-naturel, ce
problème persiste car la résolution des ambiguïtés peut faire perdre du temps à
l’utilisateur.
2.2 Les interfaces de type commande
Avec
ce type d’interface, le système demande à l’utilisateur d’entrer une commande, puis
il exécute une opération qui dépend de cette commande. La commande peut être
une requête, l’appel d’un sous-système, l’appel d’une séquence d’autres
commandes.
Lors
de la conception de l’interface, il faut décider de la forme des commandes qui
doivent être des mnémoniques (tels que « ed » pour éditer), ou des
textes complets.
2.3 Les interfaces de type
menu
Avec
les interfaces de ce type, l’utilisateur doit choisir une possibilité parmi
plusieurs. Cependant, les systèmes à base de menus sont limités par le fait
qu’il n’ y a pas suffisamment de possibilités pour que celles-ci puissent être
affichées simultanément à l’écran.
2.4 Les interfaces de type
question/ réponse
Ce
sont des interfaces pour lesquelles le dialogue homme/machine est guidé par les
réponses de l’utilisateur aux questions posées par la machine.
2.5 L’utilisation du
graphisme
Ces interfaces graphiques1, appelées à manipulation directe2 sont en
train de prendre de plus en plus d'importance. Elles utilisent des moyens de
désignation, tel que le bouton de sélection de la souris, permettant la
manipulation et la sélection des éléments interactifs. Le résultat de ces
actions est immédiat et l'on parle de style réactif. Historiquement, on a
commencé par utiliser des écrans dont l'affichage se fait à base de caractères.
Ces derniers sont en train de laisser la place à ceux du type bitmap ou pixmap.
Ils sont constitués de pixels indépendamment adressables permettant une
résolution plus fine. A cela vient s'ajouter l'utilisation de graphiques
vectoriels, comme les polices de caractères postscript. L'objectif essentiel
des interfaces à manipulation directe est donc de réduire et de simplifier les
commandes nécessaires pour effectuer certaines tâches.
Les systèmes graphiques
interactifs sont déjà disponibles depuis plusieurs années. Il est donc
maintenant possible de concevoir des interfaces graphiques pour de nombreux
types d’application.
. Les interfaces de type graphique,
appelées aussi interfaces à manipulation directe sont en train de prendre de plus en
plus d'importance
. Elles utilisent des moyens de
désignation, tel le bouton de sélection de la souris, permettant la
manipulation et la sélection des éléments interactifs.
. Le résultat de ces actions est
immédiat et l'on parle de style réactif.
. Historiquement, on a commencé par
utiliser des écrans dont l'affichage se fait à base de caractères.
. Aujourd'hui on utilise un affichage
du type bitmap ou pixmap. Ce type d’affichage est constitué de pixels indépendamment
adressables permettant une résolution plus fine.
Un bitmap
est la plus petite unité manipulable pour représenter une image
Un pixmap
est un tableau de points de couleurs différentes définissant une image
(surface).
. On utilise également des interfaces
de type graphique vectoriel, comme les polices de caractères postscript.
3. Interfaces graphiques ou éléments à
manipulation directe
La
réduction et la simplification des commandes sont nécessaires pour effectuer
certaines tâches. Avec ce type d’interface, il y a une séparation entre les
fonctions d’une application et les présentations fournies à l’utilisateur. La séparation entre l'interface et le noyau
fonctionnel d'une application relève du génie logiciel.
3.1.
Les différents types d'éléments d'interaction graphique
La manipulation directe permet d'opérer sur différents
types d'éléments d'interaction3 (voir
figure 2) :
a) la fenêtre est une portion rectangulaire de l'écran qui
définit un certain nombre de caractères par défaut et possède son propre
système de coordonnées. Chaque fenêtre correspond à un fil d'activité et agit
comme un "bloc" : elle peut être déplacée, agrandie ou réduite. Une
caractéristique est qu'elle présente deux structures parallèles : elle peut
être modale ou non modale.
Dans le cas
modal, elle correspond à une interaction bloquante et non interruptible : tous
les dialogues concurrents sont inhibés, l’utilisateur est contraint d’exécuter
certaines actions et ne peut effectuer aucune autre.
Dans le cas non
modal, il y a bifurcation du dialogue, et par conséquent, l'utilisateur peut
changer de dialogue. C'est généralement dans cette ressource qu'on définit du
texte ou/et des contextes graphiques et qu'on effectue des assemblages à partir
des éléments définis ci-dessous.
b) une barre de défilement fournit les défilements vertical et
horizontal. Ce type de contrôle est utile pour visualiser toutes les données
lorsqu'elles sont trop volumineuses dans une fenêtre.
c) une boite de dialogue4
est une fenêtre particulière utilisée pour saisir l'information à partir de
l'utilisateur tout en affichant un message correspondant.
d) un champ est une zone de saisie de caractères,
localisée à l'intérieur d'une fenêtre,
e) un menu
est un élément de dialogue contenant un ensemble d'options permettant
d'effectuer un choix unique. Il peut être simple ou hiérarchisé. Dans ce
dernier cas, un autre menu est ouvert et l'option correspondante dans le menu
père est illuminée. Selon le système d'exploitation, un menu peut être
déroulant, escamotable (popUp) lié à une fenêtre.
f) une liste
de choix permet d'afficher un ensemble de chaînes de caractères
et de prendre en considération une ou plusieurs sélections.
g) un bouton radio permet d'effectuer un simple choix parmi n
états. Associé à un paramètre, il permet la sélection d'un item à partir d'un
ensemble de conditions mutuellement exclusives.
h) un bouton poussoir est utilisé pour initialiser une action telle
que "annuler" ou "calculer". Le texte utilisé pour identifier
un bouton poussoir apparaît à l'intérieur de ce bouton et représente l'action
prise quand celui-ci est sélectionné. Le choix effectué avec un tel élément ne
peut être qu'exclusif et mémorisé.
i) une case à cocher possède les mêmes fonctions qu'un bouton
poussoir. Elle diffère dans la notion de choix qui peut être multiple.
j) une icône est un symbole d'objet inactif qui est
représenté en miniature afin de libérer l'écran pour d'autres tâches plus
prioritaires. C'est donc une fenêtre fermée qui fournit une représentation
symbolique d'un objet manipulable par l'utilisateur (fichier, dossier,
application).
Figure
2. Différents types d’interface graphique utilisateur
La manipulation directe
permet d'opérer sur ces interfaces grâce au dispositif de la souris.
3.2 Problèmes posés
Face à cette diversité d'éléments d'interaction
- le premier problème pour un concepteur éditant
ces éléments, se pose en termes de choix et d'adaptation d'éléments
d'interaction. Le choix et l’adaptation des éléments d'interaction sont les
premiers critères lors de la spécification de l’interface. Il n'y pas de règles
de construction d'interface permettant de spécifier le dialogue, et pourtant
l'uniformité de l'interface doit être conservée. En effet, le choix est lié au
fait qu'un concepteur d’une interface doit distinguer entre la fonction d’un
élément de dialogue et sa présentation. Prenons, par exemple le cas où l'on
désire effectuer la fonctionnalité "effectuer un choix". Ceci peut
s'obtenir de plusieurs manières différentes. On peut utiliser soit un bouton
poussoir soit un menu. Un item de menu peut avoir la même fonction que celle
attribuée à un bouton poussoir. Mais l’item de menu est seulement du texte
pouvant être illuminé quand il est sélectionné, alors qu’un bouton poussoir est
généralement une icône avec du texte associé éventuellement. Un point qui nous
semble important dans le cadre du génie logiciel porte sur la distinction entre
les éléments définis pour des saisies et des affichages et ceux utilisés pour
des évaluations et des contrôles des réponses.
- Un deuxième problème qui apparaît pour le concepteur
est l'établissement de la relation de dépendance entre les différents
composants de dialogue, par exemple la barre de défilement dépend
fonctionnellement de la fenêtre. Enfin, un troisième problème réside dans la
synchronisation entre un élément d'interaction et son intégration dans un dialogue,
par exemple, une barre de défilement verticale intégrée dans une fenêtre.
- Les formalismes pour la spécification du contrôle local
(élément d’interaction graphique) vont du plus formel au graphique : les
grammaires hors contexte, les réseaux de transition, les automates, les
grammaires d'événements ou l'interaction par manipulation directe. Si
l'utilisation de ce dernier formalisme n'exige pas la connaissance de la
programmation, elle nécessite cependant un ensemble d'éditeurs de présentations,
que nous présentons dans le chapitre 4. Ceci nous conduit à considérer trois
catégories d'utilisateurs :
- le concepteur
d'éditeurs des éléments d'interaction (le concepteur de l’outil),
- l'utilisateur de ces
outils,
- l'utilisateur des
éléments édités.
- Une autre caractéristique essentielle est liée à la
modalité d’une d’interface graphique. Un élément d'interaction présente deux structures parallèles : modal
ou non modal.
Dans le cas modal, il correspond à une interaction bloquante et
non interruptible : tous les dialogues concurrents sont inhibés, l’utilisateur
est contraint d’exécuter certaines actions et ne peut effectuer aucune autre.
Dans le cas non modal, il y a bifurcation du dialogue, et par
conséquent, l'utilisateur peut changer de dialogue.
- Il est nécessaire de
faire la distinction entre les éléments définis pour des saisies et des
affichages et ceux destinés à la saisie des entrées de l'utilisateur.
- Il y a lieu de créer
la relation de dépendance entre les différents composants de dialogue, par
exemple la barre de défilement dépend fonctionnellement de la fenêtre.
- Il faut également
établir la synchronisation entre un élément d'interaction et son intégration
dans un dialogue.
1 Appelées
en anglais GUIs, pour Graphical User Interfaces.
2 Par
manipulation directe, nous entendons remplacement de la programmation.
3 Ces
éléments sont appelés en anglais "Look and feel" (que l'on pourrait
traduire par présentation et comportement), ou encore "WIMP" pour
Windows, Icons, Menus et Pointing.
4 Elle
correspond à un prompter en Smalltalk .
0 commentaires:
Post a Comment