[Königet al., 2010].
ID Outil de conception d’interfaces multimodales
Multimodalité Plusieurs modalités en entrée : pointeur laser, table
tactile Microsoft Surface, iPhone, Phidgets,
wii-mote et reconnaissance vocale
Programmation visuelle à flot de données,
para-digme des dispositifs en cascade
Notation Forte expressivité du rôle, forte visibilité
Outil Seuil bas, Plafond haut
T
ABLE6.21 – Fiche-résumé de Squidy.
6.5 Conclusion
Dans ce chapitre nous avons analysé les principaux outils de conception de
pro-totypes multimodaux simulés ou interactifs. Nous avons analysé les outils selon
un ensemble de critères à différents niveaux d’abstraction. À haut-niveau, nous
avons analysé les aspects propres à la multimodalité et au modèle conceptuel
sous-jacent. Au niveau intermédiaire, nous avons analysé la notation de spécification
sur laquelle repose l’outil en utilisant les dimensions cognitives de Green :
visco-sité, engagement forcé et expressivité du rôle. À bas-niveau, nous avons considéré
des critères généraux liés à l’outil et à ce qu’il est possible de faire avec l’outil, en
utilisant les critères de Myers : seuil (la difficulté de prise en main) et plafond (les
possibilités de l’outil). Le Tableau 6.22 regroupe les fiches-résumé des outils
Ma-gicien d’Oz étudiés selon notre grille d’analyse. Les tableaux suivants regroupent
les fiches-résumé des outils pour la création de prototypes interactifs étudiés selon
158CHAPITRE 6. ÉTAT DE L’ART DES OUTILS POUR LE PROTOTYPAGE D’INTERFACESMULTIMODALES
notre grille d’analyse : outils à programmation non-visuelle (Tableau 6.23), outils à
programmation visuelle à automates et par démonstration (Tableau 6.24) et outils
à programmation visuelle à flot de données (Tableau 6.25).
Parmi les outils de développement de prototypes simulés, aucun outil ne permet
de généraliser la simulation à un ensemble de modalités : tous les outils ont un
plafond bas en terme de multimodalité.
Parmi les outils de développement de prototypes interactifs, seuls quelques
outils s’appuient sur des modèles conceptuels, ce qui a comme principale
consé-quence de diminuer les possibilités de génération de l’outil pour l’interaction
mul-timodale (plafond bas). Parmis les outils basés sur un modèle conceptuel, trois sont
basés sur le paradigme des dispositifs en cascade (iStuff, Icon et Squidy) et un sur
le modèle Icare (Icare). Au chapitre 4, nous avons déjà analysé les avantages et
limi-tations des deux modèles conceptuels, qui nous ont conduits à définir un nouveau
modèle mixte.
Enfin, aucun outil ne permet de réaliser à la fois des prototypes simulés et des
prototypes interactifs.
À partir de cette analyse des outils existants, nous visons une solution qui
per-mette en même temps de réaliser des prototypes simulés et interactifs. De plus un
outil basé sur notre modèle mixte pour spécifier l’interaction permettrait d’obtenir
un seuil bas et un plafond haut, afin d’augmenter le pouvoir génératif et descriptif
de l’outil. Nous présentons au chapitre suivant cet outil de développement de
pro-totypes simulés et interactifs, basé sur notre modèle conceptuel mixte présenté au
chapitre 4.
ID SketchWizard Simulation des gestes réalisés avec un stylet
Multimodalité Une seule modalité : Geste avec un stylet
Notation Visibilité ++, expressivité du rôle ++
Outil Seuil , plafond
-ID Suede Simulation d’interfaces vocales
Multimodalité Une seule modalité : parole
Notation Visibilité ++, expressivité du rôle ++
Outil Seuil , plafond
-ID Topiary Simulation de la géolocalisation
Multimodalité Géolocalisation de l’utilisateur et stylet sur PDA
Notation Visibilité ++
Outil Seuil , plafond
6.5. CONCLUSION 159
ID Processing Création d’interfaces graphiques interactives
Multimodalité Caméra, capteurs physiques, etc.
Notation Visibilité
-Outil Seuil ++, plafond ++
ID OF Applications graphiques interactives
Multimodalité Caméra, capteurs physiques, etc.
Notation Visibilité
-Outil Seuil ++, plafond++
ID JavaSwingMM Boîte à outils Java
Multimodalité Phidgets, manettes et reconnaissance vocale
Notation Inter-opérabilité avec JavaSwing
Outil Seuil ++, Plafond ++
ID HephaisTK Prototypage multimodal
Multimodalité Reconnaissance vocale, table multi-utilisateurs et
périphériques matériels.
Notation Viscosité ++
Outil Seuil ++
T
ABLE6.23 – Synthèse : Fiches-résumé des outils de prototypage à programmation
160CHAPITRE 6. ÉTAT DE L’ART DES OUTILS POUR LE PROTOTYPAGE D’INTERFACESMULTIMODALES
ID IMBuilder Conception d’interfaces multimodales en entrée
Multimodalité Gestes avec la souris et parole
Modèle à automates
Notation Visibilité ++
Outil Seuil , plafond
-ID SCS Conception d’interfaces multimodales en entrée
Multimodalité Gestes avec la souris, parole et capteurs physiques
Modèle à automates, Equivalence (CARE)
Notation Visibilité ++
Outil Seuil , plafond
-ID PetShop Développement d’interfaces multimodales
Multimodalité Souris, clavier et gant - capteur
Réseaux de Pétri
Notation Visibilité ++, expressivité du rôle ++
Outil Seuil ++, plafond ++
ID CrossWeaver Conception de prototypes basse-fidélité
Multimodalité Clique souris, clavier, geste et parole
Modèle à automates
Notation Forte visibilité, forte expressivité du rôle
Outil Seuil , plafond
-ID d.tools Prototypage de systèmes utilisant des capteurs
Multimodalité Accéléromètre, capteurs de pression et sliders
Modèle à automates
Notation Expressivité du rôle ++
Outil Seuil , Plafond
-ID Exemplar Prototypage de systèmes utilisant des capteurs
Multimodalité Accéléromètre, capteurs de pression, temp., etc.
Programmation par démonstration
Notation Faible visibilité
Outil Seuil bas, plafond bas
T
ABLE6.24 – Synthèse : Fiches-résumé des outils de prototypage à programmation visuelle
6.5. CONCLUSION 161
ID vvvv Traitement temps-réel d’images vidéo
Multimodalité Capteurs physiques, tablette tactile.
Notation Visibilité ++, expressivité du rôle
-Outil Seuil , plafond
-ID Max/Msp Créations musicales et multimédia temps réel
Multimodalité Caméra, capteurs physiques, etc.
Notation Viscosité ++, visibilité , engagement forcé
-Outil Seuil ++, plafond ++
ID EyesWeb Création d’applications multi-média, musicales et
de danse temps-réel
Multimodalité Analyse de gestes en temps-réel
Paradigme des dispositifs en cascade
Notation Expressivité du rôle ++, visibilité ++
Outil Seuil , plafond
-ID iStuff Conception de prototypes interactifs sur
télé-phones mobiles
Multimodalité Clavier, gestes avec accéléromètre, caméra.
Paradigme des dispositifs en cascade.
Notation Expressivité du rôle ++
Outil Seuil , plafond
-ID Icon Développement d’interfaces multimodales
Multimodalité Plusieurs modalités en entrée
Modèle des configurations d’entrée
Notation Viscosité ++
Outil Seuil - -, plafond ++
ID Icare Conception d’interfaces multimodales en entrée
Multimodalité Plusieurs modalités en entrée
Modèle ICARE
Notation Visibilité ++
Outil Seuil - -, plafond ++
ID Squidy Conception d’interfaces multimodales
Multimodalité Pointeur laser, table tactile, iPhone, Phidgets,
wii-mote et reconnaissance vocale
Paradigme des dispositifs en cascade
Notation Expressivité du rôle ++, visibilité ++
Outil Seuil - -, Plafond ++
T
ABLE6.25 – Synthèse : Fiches-résumé des outils de prototypage à programmation visuelle
Chapitre 7
Notre outil pour le prototypage
multimodal : OpenInterface Interaction
Development Environment
«Un outil humain est [...] un objet façonné, transformé, de manière à pouvoir
être utilisé commodément et efficacement pour accomplir un certain genre
d’ac-tion»
Gaston Viaud, Naturaliste et psychologue français (1899-1961)
Contenu du chapitre
7.1 Plate-forme logicielle sous-jacente . . . . 164
7.1.1 Contexte : le projet OpenInterface . . . 164
7.1.2 Plate-forme à composants OpenInterface . . . 165
7.2 OIDE, notre environnement de prototypage . . . . 167
7.2.1 Architecture et modèle logiciel . . . 167
7.2.2 Composants logiciels, éléments de base du OIDE . . . 168
7.2.3 Editeur graphique (Vue) . . . 170
7.2.4 Utilisation du OIDE et dynamicité du prototype développé . . . 172
7.3 Concrétisation de notre modèle conceptuel . . . . 173
7.3.1 Caractérisation des composants : Multimodal Component
Des-cription Language (MCDL) . . . 174
7.3.2 Structure des assemblages et types des composants . . . 178
7.4 Composants disponibles pour le développement de prototypes interactifs 179
7.4.1 Composants Dispositif . . . 179
7.4.2 Composants de transformation . . . 182
7.4.3 Composants de composition . . . 184
7.4.4 Composants tâche . . . 185
7.4.5 Composants utilitaires . . . 185
7.5 Composants disponibles pour le développement de prototypes simulés . 187
7.5.1 Approche OpenWizard : un continuum du prototype simulé au
prototype interactif . . . 187
7.5.2 Composants OpenWizard . . . 188
7.5.3 Degrés de simulation du prototype . . . 193
7.6 Conclusion . . . . 197
164 CHAPITRE 7. NOTRE OUTIL POUR LE PROTOTYPAGE MULTIMODAL :OPENINTERFACE INTERACTION DEVELOPMENT ENVIRONMENT
Dans ce chapitre, nous présentons l’outil logiciel de prototypage multimodal
que nous avons développé. Vis-à-vis de l’état de l’art des outils existants du
cha-pitre précédent, notre outil vise à :
• permettre le développement de prototypes simulés et de prototypes
interac-tifs : nous avons souligné l’absence d’outil qui permette le développement de
ces deux types de prototypes qui s’inscrivent pourtant de façon continue dans
une démarche itérative de conception centrée utilisateur
• offrir un fort pouvoir descriptif et génératif en alliant les atouts des deux outils
Icon et Icare. Pour atteindre cet objectif, notre outil repose explicitement sur
notre modèle de conception présenté au chapitre 4 et évalué au chapitre 5.
Adopter cette notation au sein de notre outil permet un fort pouvoir descriptif
et génératif.
L’outil développé, appelé OIDE (OpenInterface Interaction Development
Envi-ronment), est un éditeur graphique construit au dessus d’une plate-forme à
compo-sants appelée OpenInterface. Le développement de cet outil s’inscrit dans le projet
de recherche européen OpenInterface [OpenInterface, 2006]. Aussi, nous
commen-çons par introduire le contexte du développement de cet outil, en présentant le
pro-jet européen, puis nous montrons les principales caractéristiques de la plate-forme
à composants sous-jacente. Nous détaillons l’architecture de notre outil graphique
de conception par rapport à la plate-forme sous-jacente.
Ensuite, nous présentons la concrétisation de notre modèle conceptuel au sein
du OIDE à travers la caractérisation des composants et les différents types de
com-posants logiciels implémentés : dispositif, transformation, composition et tâche.
En-fin nous présentons les composants implémentés pour le développement de
proto-types interactifs et simulés.
7.1 Plate-forme logicielle sous-jacente
7.1.1 Contexte : le projet OpenInterface
Le développement de notre outil s’inscrit dans le cadre d’un projet, OpenInterface
[OpenInterface, 2006]. OpenInterface (OI) est un projet européen STREP du
frame-work 6 IST. Le projet OpenInterface est une continuation du réseau d’excellence
européen SIMILAR du framework 6 IST. Dans ce réseau, a été développé la
plate-forme à composants OpenInterface, que nous utilisons comme noyau de notre outil
graphique. Partant de ce noyau à composants issu du réseau SIMILAR, nous avons
développé notre outil de prototypage dans le cadre du projet OpenInterface.
Le projet OpenInterface avait pour objectif la définition d’un outil logiciel pour
le prototypage d’interfaces multimodales, qui s’inscrit dans une démarche de
conception itérative centrée utilisateur. Le projet OI implique neuf partenaires
aca-démiques et industriels : Université Joseph Fourier Grenoble (France), Université
de Glasgow (RU), Fraunhofer Institute for Applied Information technology
(Alle-magne) et Université Catholique de Louvain (Belgique) comme partenaires
acadé-miques ; France Télécom (France), Immersion (France), PhonoClick (Turquie),
Arca-7.1. PLATE-FORME LOGICIELLE SOUS-JACENTE 165
diaDesign (Italie), Multitel ASBL (Belgique) et TXT e-Solutions Spa (Italie) comme
partenaires industriels.
Dans ce projet, notre travail a consisté à concevoir et développer l’outil
logi-ciel ainsi qu’à développer et intégrer des composants logilogi-ciels pour permettre le
prototypage d’interfaces multimodales. Adoptant une démarche opensource,
l’ou-til et les composants présentés dans ce chapitre sont disponibles sur le forge
ope-ninterface (https ://forge.opeope-ninterface.org/). Son utilisation va donc au-delà des
membres du laboratoire et en particulier notre outil a été installé et largement
uti-lisé par les neufs autres partenaires du projet.
L’outil repose explicitement sur notre modèle de conception présenté au
cha-pitre 4. Comme nous l’avons souligné, notre modèle est conceptuel et est
indépen-dant de la technologie à composants utilisée (chapitre 4). Dans le projet OI, nous
avons concrétisé notre modèle conceptuel par le développement d’un outil logiciel
au dessus de la plate-forme à composants notée OpenInterface. Celle-ci a été
déve-loppée par l’Université Catholique de Louvain, coordinateur du réseau SIMILAR
et partenaire du projet OpenInterface.
7.1.2 Plate-forme à composants OpenInterface
La plate-forme OpenInterface [Lawsonet al., 2009] est un intergiciel à composants
qui gère l’instanciation et l’exécution de composants logiciels hétérogènes. Par
dé-faut, la forme accepte des composants écrits en Java, c++ et Matlab. La
plate-forme est extensible : les utilisateurs peuvent rajouter des nouveaux langages en
créant des plugins. Ainsi, des extensions pour Python et pour .Net ont été
inté-grées.
Par rapport aux technologies à composants existantes (section 3.3.3 chapitre 3),
la plate-forme OpenInterface a été conçue pour être une plate-forme facile à
ins-taller, peu consommatrice de ressources et pour être flexible. La plate-forme
per-met l’intégration de composants déjà existants sans imposer un modèle de
com-posants contraignant. Cette approche favorise donc l’intégration de comcom-posants
hétérogènes implémentant différentes modalités d’interaction et l’exploration de
l’espace de conception de la multimodalité.
Description des composants OpenInterface
Les composants dans OpenInterface sont considérés comme desunités logicielles
in-dépendantes et réutilisables avec des interfaces en entrée/sortie
1. Concrètement, les
com-posants sont définis par une API qui explicite les fonctionalités du composant, ainsi
que le constructeur du composant. Les fonctionalités d’un composant sont décrites
par des facettes (Facets), qui contiennent des Pins, les ports en entrée (Sink) et en
sortie (Source et Callback) du composant (Figure 7.1). Cette description est
conte-nue dans un fichier xml selon un langage spécifique, le Component Interface
Des-cription Language (CIDL).
L’intégration d’un composant passe par la création de la description CIDL du
composant (donnée en Annexe D). Le CIDL informe entre autres du langage du
1«a reusable and independent software unit with exported and imported Input/Output interfaces» [Lawsonet al., 2009]
166 CHAPITRE 7. NOTRE OUTIL POUR LE PROTOTYPAGE MULTIMODAL :OPENINTERFACE INTERACTION DEVELOPMENT ENVIRONMENT
Dans le document
Interaction multimodale en entrée : Conception et Prototypage
(Page 178-187)