IDM : instrument de Conception et d’Implémentation des
Systèmes Interactifs Mixtes
Guillaume Gauffre
IRIT - LIIHS
118, route de Narbonne
31062, Toulouse Cedex 9
05 61 55 74 05
gauffre@[Link]
RESUME with ASUR. Thus each component identified with ASUR-IL can
Avec l’apparition ces dernières années de nouvelles techniques be transposed in an existing components model (CCM,
d’interaction, le domaine des Systèmes Interactifs Mixtes s’est JavaBeans, etc) and finally lead us to the implementation of the
considérablement développé. Les technologies sont maintenant system.
suffisamment matures pour envisager la mise en œuvre de Categories and Subject Descriptors
systèmes concrets. Pour y parvenir, plusieurs études ont donné H.5.2 [User Interfaces]: Theory and Methods ; D.2.2 [Design
naissance à des plates-formes de développement pour les SIM. Tools and Techniques]: User Interfaces.
D’autres travaux se sont focalisés sur des techniques de
modélisation pour les phases de conception préliminaires, comme General Terms
support à l’étude de l’utilisabilité. Ces deux types de travaux Design
demeurent souvent cloisonnés alors que leur complémentarité
serait évidemment très profitable. Nos travaux visent donc à Keywords
mettre en relation les outils et modèles existants pour Mixed Interactive Systems, Design, Implementation, MDE.
accompagner l’ensemble du cycle de développement des SIM. A
ces fins, nous nous orientons vers l’utilisation de l’Ingénierie 1. INTRODUCTION
Dirigée par les Modèles dont l’objectif est de promouvoir Le terme de Systèmes Interactifs Mixtes est utilisé pour qualifier
l’utilisation de modèles productifs et non plus seulement les systèmes interactifs mêlant monde physique et monde
contemplatifs. Dans un premier temps, nous nous focalisons sur la numérique. Ainsi Réalité Augmentée, Virtualité Augmentée ou
liaison entre les phases de conception et d’implémentation par la Interfaces Tangibles se retrouvent sous cette dénomination. Ce
création du modèle ASUR-IL. Celui-ci a pour finalité de décrire domaine connaît à l’heure actuelle un accroissement de la
les composants logiciels ainsi que leurs communications, demande ainsi qu’une diversification de celle-ci. Les applications
nécessaires à la réalisation d’une technique d’interaction mixte à caractère militaire ou médical ne sont plus les seules à être
préalablement décrite avec le modèle ASUR. Ainsi chaque développées, le champ est maintenant plus vaste : jeux, éducation,
composant identifié avec ASUR-IL peut être transposé dans un musées, etc. Afin de faire face à l’évolution de cette demande, la
modèle à composants existant (CCM, JavaBeans, etc.) et donc mise en place d’approches systématiques de développement est
nous conduire à l’implémentation du système. incontournable. En effet, les réalisations ad hoc obtiennent des
résultats performants mais leur manque de modularité handicape
Mots-clés l’évolution des systèmes et leur temps de développement demeure
Systèmes Interactifs Mixtes, Conception, Implémentation, IDM. bien trop élevé. Pour y remédier, une évolution des méthodes et
outils actuellement utilisés en IHM est nécessaire pour prendre en
ABSTRACT compte les spécificités des SIM.
With the appearance of new techniques of interaction over the last
years, the domain of Mixed Interactive Systems developed 2. CONTEXTE
considerably. Technologies became mature enough to consider the La plupart des travaux réalisés jusqu’alors, ont consisté en la
development of concrete systems. For this purpose, several studies réalisation de prototypes mettant en avant de nouvelles techniques
produced platforms of development for Mixed Interactive d’interaction. De nombreux autres domaines, comme par exemple
Systems. Others works focused on modelling techniques for the le traitement d’image et le suivi de mouvement, participent à
early phases of design, as support of the usability study. These l’évolution de ces techniques et chaque nouvelle avancée est
two types of work remain often partitioned whereas their source de stimulation dans le domaine.
collaboration would be obviously very efficient. Our work aims to
connect the existing tools and models to support the entire 2.1 Avancées logicielles
development process of mixed systems. This is the reason why, Chaque prototype présenté enrichit le panel des techniques
we head for the use of the Models Driven Engineering whose d’interaction offertes aux concepteurs. Afin de tendre vers une
objective is to promote the use of productive models instead of réutilisation de celles-ci, le premier réflexe est de capitaliser ces
contemplative models. At first, we focus ourselves on the avancées sous forme de librairies logicielles en s’efforçant
connection between the phases of design and implementation by d’utiliser les langages de programmation et les plates-formes
the creation of the model ASUR-IL. Its objective is to describe the d’exécution les plus courants. Ainsi, il est devenu aisé d’utiliser la
software components and their communications, needed to the librairie de détection de marqueurs ARToolKit ou le système de
realization of a mixed interaction technique previously described capteurs Phidgets. Néanmoins, pour la réalisation de systèmes
concrets et de plus grande envergure, une vision globale du collaboratifs, offre un cadre de conception pour les SIM en
système est nécessaire afin de favoriser la collaboration entre les incluant le modèle IRVO. Un modèle de comportement est dérivé
acteurs du développement. Afin d’y parvenir, plusieurs travaux à partir de l’analyse de scénarios. Celui-ci subit ensuite une phase
ont mené à la réalisation de plates-formes de développements de contextualisation et d’adaptation pour être projeté sur une
spécifiques aux SIM. Citons entre autre AMIRE [10] et DWARF architecture logicielle basée AMF-C.
[1], qui décomposent le système en un assemblage de composants
logiciels appartenant chacun à une catégorie de services. Ceux-ci 2.3 Eléments fondamentaux pour le
peuvent être des services spécifiques aux SIM (systèmes de suivi) développement des SIM
ou des services plus génériques (accès aux bases de données). Il apparaît donc au travers des travaux existants que d’une part les
L’implémentation en est d’autant plus facilitée que l’accent est technologies sont mûres pour une exploitation à plus grande
mis sur les mécanismes permettant l’assemblage de composants échelle et que d’autre part, l’utilisation d’un modèle d’architecture
via l’utilisation de standards comme CCM ou JavaBeans. Les constitue un pilier permettant d’asseoir la phase de conception
concepteurs ne manipulent plus uniquement du code mais des logicielle sur les résultats de conception préliminaire.
concepts connus par l’ensemble des intervenants (experts du L’implémentation des systèmes se fait systématiquement sur des
domaine, développeurs, ergonomes, etc.). Ainsi les capacités modèles à composants (CCM ou JavaBeans) favorisant ainsi la
d’évolution et d’adaptation des systèmes sont accrues, favorisant modularité des systèmes. Enfin, pour une qualité accrue des
leur pérennité. systèmes, l’utilisation de modèles de conception de haut niveau et
leur combinaison apparaît comme étant primordial.
2.2 Approches par modèles
Nous venons de présenter différentes études qualifiées 3. CONCEPTION & IMPLEMENTATION
d’approches ascendantes. A l’opposé, les approches descendantes
mettent en œuvre des outils permettant de respecter au mieux les
DES SYSTEMES MIXTES
exigences des utilisateurs. Dans le domaine de l’IHM, la A la vue des progrès du domaine, il apparaît donc urgent d’initier
pertinence de l’utilisation d’un ensemble d’outils de modélisation, la création d’un processus complet de réalisation des SIM [7].
adoptant différents points de vue sur le système à concevoir, n’est Pour faire face à ce projet ambitieux, nous souhaitons tout
plus à démontrer. Trevisan reprend ces modèles traditionnels de d’abord ancrer la phase d’implémentation du système autour des
l’IHM en introduisant de nouveaux aspects de conception propres résultats de conception. Il s’agit donc de systématiser la
[15] aux SIM. ASUR [8] et IRVO [3] poursuivent le même conception de l’architecture logicielle à partir de modèles de
objectif. Ce sont deux modèles de l’interaction mixte qui conception préliminaire. Pour y parvenir, nous avons choisi de
décrivent différents aspects des éléments physiques ou nous appuyer sur le modèle de conception de SIM ASUR, auquel
numériques constituant la situation d’interaction ainsi que leurs nous associons une extension couvrant les aspects liés à
échanges de données. Le Modèle de l’Interaction Mixte [5] l’architecture logicielle des systèmes.
constitue un autre point de vue avec lequel le point de départ de la
conception est l’ensemble des objets physiques et numériques à
3.1 ASUR
ASUR est un modèle de conception entièrement dédié aux SIM
disposition et non la tâche à réaliser.
qui constitue un bon moyen d’exploration des diverses solutions
L’utilisation de modèles de conception préliminaires est aussi très d’interaction, notamment grâce à son éditeur GuideMe. Il permet
présente dans le domaine particulier des interfaces tangibles. Ishii d’identifier pour une tâche effectuée dans une situation
& Ullmer propose une adaptation de MVC, MCRpd [11] ou pour d’interaction mixte, les objets physiques, les composants
la première fois est mis en avant le lien fort existant entre objets numériques et les composants chargés d’interfacer mondes
physiques et objets numériques. Une autre approche, le paradigme physique et numérique (Adaptateurs). L’intégration de ce modèle
TAC [14] exprime pour chaque composant tangible, les actions au cœur d’une méthode de conception participative [7] permet de
possibles, les données représentées et les relations avec les autres stimuler la phase de conception préliminaire tout en offrant un
composants. Enfin, les auteurs de l’outil PapierMaché [12] ont outil pour en recueillir les résultats. En sortie le modèle décrit
souhaité aller au-delà de l’utilisation des modèles uniquement l’ensemble des composants intervenants et leurs relations, chacun
dans un objectif descriptif. L’outil permet de décrire une situation documenté par un ensemble de caractéristiques. De plus, il est
d’interaction tangible et d’associer des technologies existantes possible d’effectuer une analyse prédictive de certains aspects de
afin d’obtenir rapidement l’implémentation du système. Ces l’utilisabilité du système. Pour cela, le concepteur peut définir des
travaux ont leur particularité mais tous ont intégré la notion propriétés ergonomiques issues de la combinaison des différentes
d’architecture logicielle (sur la base de MVC) ainsi que le lien caractéristiques des composants et relations.
entre noyau fonctionnel et la partie propre à l’interaction du
Comme la plupart des approches de conception de haut niveau,
système.
ces résultats de conception ne sont pas réutilisés lors de
Enfin deux approches envisagent un rapprochement des phases de l’implémentation du système, c’est pourquoi nous présentons
conception et d’implémentation, mais néanmoins non systématisé. ASUR-IL qui reprend ces résultats afin de préparer le
Dans le contexte des SIM collaboratifs mobiles [13], l’articulation développement du système.
des deux phases se fait en utilisant les résultats de conception par
scénarios pour alimenter un modèle d’architecture, Pac-Amodeus. 3.2 ASUR-Implementation Layer
Ainsi les éléments de conception sont transposés sur un modèle Ce modèle permet d’offrir une vision globale des composants
d’architecture qui permet tout en s’affranchissant des plateformes logiciels impliqués dans l’interaction ainsi que les passerelles vers
et outils de décrire la composition du système. Une seconde les services du noyau fonctionnel. Les résultats de la conception
approche, CoCSys [6], orientée vers la conception de systèmes ASUR, des diagrammes et des caractéristiques, sont traduits en
fonction d’un ensemble de règles pour déterminer l’essentiel d’un composants présent dans la modélisation ASUR est traduit par le
diagramme ASUR-IL. Une fois la transformation effectuée, le type des composants ASUR-IL de même que les communications.
concepteur enrichi le diagramme de nouvelles informations, par Les caractéristiques des composants et relations ASUR influent
exemple, il peut ajouter des variables à un composant, choisir de sur la définition de leurs équivalents ASUR-IL. Outre les éléments
réutiliser un composant préexistant. de structuration, le contenu technique est enrichi : données
manipulées, matériel, librairies logicielles, etc. Le modèle ASUR-
3.2.1 Principes fondamentaux IL offre donc un outil d’élaboration progressif de l’architecture
La vue du système proposée par ASUR-IL reprend la logicielle des SIM.
décomposition initiée par MVC dont l’objectif principal était la
séparation des éléments de comportement d’un composant ASUR-IL décrit les composants logiciels tant au niveau des
interactif des éléments de représentation. Cette séparation favorise concepts manipulés que les types de connexions possibles, leur
la modularité d’un système ainsi que la prise en compte de implémentation n’est pour le moment aucunement systématisée.
nombreuses modalités d’interaction. Ce découplage entre action et L’effort de codage en fonction des plateformes à composants reste
perception est primordial pour les SIM à l’opposé des systèmes à la charge du développeur. Il serait profitable d’offrir des
WIMP qui liaient spatialement l’exécution et l’évaluation sur un procédés de génération des squelettes de ces composants, et de
même composant interactif. compléter la description du comportement de ces composants.
En fonction des composants et relations ASUR, et de leurs Enfin, ASUR-IL reçoit en entrée uniquement des données du
caractéristiques, les composants ASUR-IL ainsi que leurs modèle ASUR. Cette opération n’est pas encore outillée et
communications sont déduits. Chaque composant Adaptateur de nécessite donc une évolution de l’éditeur GuideMe par exemple.
ASUR (permettant d’interfacer les mondes numérique et Au delà de cet aspect matériel, il est nécessaire de permettre la
physique) donne naissance à un adaptateur ASUR-IL, prise en compte d’autres modèles de conception comme par
représentant le matériel impliqué ainsi que la couche logicielle exemple les modèles de tâches ou du contexte : transformations et
permettant sa mise en œuvre. Chaque composant du Système tissages de modèles sont dons au cœur de l’articulation des phases
ASUR (composants numériques) correspond à une entité ASUR- de conception et d’implémentation des SIM.
IL qui est structurée à la manière de MVC. Ainsi chaque entité
possède un Modèle effectuant le lien avec les fonctionnalités du 3.3 L’IDM, support au couplage
système et les autres entités. Celui-ci est connecté à un ou Afin de systématiser notre démarche, un ensemble d’outil doit
plusieurs Contrôleurs en charge de l’interprétation des entrées du donc être proposés. Ils permettront d’établir des liens formels
système. L’état du modèle est représenté par une ou plusieurs entre les différents modèles, entre les phases de conception et
Vues. Afin de les connecter au monde physique, chaque d’implémentation. L’approche qui nous paraît la plus appropriée
Vue/Contrôleur est connecté à un Adaptateur. La Figure 1 illustre est l’Ingénierie Dirigée par les Modèles. Comme nous l’avons vu,
les composants ASUR-IL et une description détaillée est l’utilisation de techniques de modélisation est loin d’être une
disponible dans [7] nouveauté. En revanche, leur utilisation est bien trop souvent à
but purement descriptif alors que les informations produites
pourraient être le support au développement d’une partie plus ou
<Librairies> <Librairies> moins importante des systèmes. Le point de vue de l’IDM est
<Plate-f. / pilotes> <Plate-f. / pilotes> aussi très intéressant puisqu’il se positionne à l’opposé de
<Dispositifs> <Dispositifs> l’unification des différents modèles de conception des systèmes
vers un seul est unique standard (UML). L’IDM préconise en effet
Adaptateurs, In & Out une mise en relation des modèles existant par la définition de
Domain Specific Language en proposant un ensemble d’outil
<Nom> permettant leur manipulation et leur utilisation combinée.
<Nom> <Nom>
- <prop_1>
- <prop_2>
ASUR
Contrôleur Modèle Vue
s Transformations
Figure 1 : Composants ASUR-IL ASUR-IL
de modèles
Chacun de ces composants est alors développé ou réutilisé afin de WComp WComp
créer l’assemblage correspondant sur une plateforme d’exécution (.NET) (Java)
donnée. Jusqu’à présent nous avons implémenté les différents
composants en utilisant le modèle des JavaBeans. Ceux-ci sont Figure 2 : Transformations à mettre en oeuvre
par la suite instanciés et connectés sur la plateforme WComp, La première étape vers un support IDM au niveau de la phase
spécialement conçu pour le prototypage de systèmes interactifs d’implémentation est la description du métamodèle ASUR-IL.
portés. Cette opération est en cours et va offrir une documentation précise
3.2.2 Apports et Limites du modèle. Ceci permettra par la suite d’exprimer les règles de
ASUR-IL n’est pas une description purement logicielle des passage du modèle ASUR vers ASUR-IL. En effet, le métamodèle
composants : nous souhaitons en effet fournir un niveau ASUR [9] existant déjà, nous pourrons exprimer ces règles par
d’abstraction adapté, laissant encore la place à des choix des transformations de modèles. En parallèle, il s’agira également
indépendants des plateformes de développement. Le rôle des d’exprimer des transformations vers les modèles à composants
ciblés, cf. Figure 2.
4. CONCLUSIONS & PERSPECTIVES modélisation et de transformations élaborés, l’insertion dans le
Les règles de transformations entre ASUR et ASUR-IL ont été cycle de réalisation d’outils de modélisation récurrents en IHM
appliquées pour la réalisation de prototypes [7]. Le principe (modèles de tâches, du contexte, etc.) sera rendue possible et
consistait à manipuler des objets numériques (formes accentuera la qualité des développements des SIM.
géométriques), en utilisant le suivi de marqueurs (ARToolKit) 5. REFERENCES
pour la manipulation, et un rendu graphique et audio. Au cours de [1] Bauer, M., Bruegge, B., Klinker, G., MacWilliams, A.,
ces développements, le niveau d’abstraction d’ASUR-IL s’est Reicher, T., Riß, S., Sandor, C., Wagner, M. Design of a
révélé utile notamment pour continuellement identifier les rôles Component-Based Augmented Reality Framework. Actes de
de chaque composant ainsi que pour identifier l’ensemble des ISAR’01, New York, USA, 2001, pp. 45-54.
communications inter-composants. Nous avons également illustré
la modularité des systèmes notamment en modifiant le type de [2] Bouchet, J., Nigay, L. ICARE: A Component-Based
modalité en entrée et en sortie du système. Approach for the Design and Development of Multimodal
Interfaces. Extended Abstracts of CHI'04, Vienna, Autriche,
A cours terme, la réalisation du métamodèle ASUR-IL est notre 2004. pp. 1325-1328
priorité. Elle permettra d’outiller la démarche et d’approfondir les
[3] Chalon, R., David, B. IRVO: an Architectural Model for
liens avec ASUR. En effet, plusieurs caractéristiques ASUR ne
collaborative interaction in Mixed Reality environments.
sont pas utilisées à l’heure actuelle alors qu’elles pourraient
Actes de l’atelier MIXER, IUI-CADUI’04, Funchal, Madeira,
accroître l’expressivité des diagrammes ASUR-IL. Cette étude
2004, pp. 35-42.
nous permettra d’arrêter la structure du modèle : composants
nécessaires, typage des connexions, syntaxe, etc. Par la suite, [4] Cheung Foo Wo, D., Tigli, J-Y., Lavirotte, S., Riveill, M.
nous envisageons également de doter ASUR-IL de mécanismes de Wcomp: a Multi-Design Approach for Prototyping
description du comportement des composants. Les formes Applications using Heterogeneous Resources. Actes de
d’expressions du comportement pourrait être plus ou moins l’atelier “Rapid System Prototyping”, Crête, 2006.
formelles (graphiques ou textuelles) et/ou intégrant du code natif [5] Coutrix, C., Nigay, L. Mixed Reality : A Model of Mixed
laissant ainsi une plus grande part de liberté au concepteur. Interaction. Actes de AVI ‘06, Venise, Italy, 2006, pp. 43-50.
Pour valider la pertinence de notre approche, nous l’étendrons à [6] Delotte, O., David, B., Chalon, R. Task Modelling for
des outils de modélisation et de développement de SIM Capillary Collaborative Systems based on Scenarios. Actes
équivalents. Nous souhaitons mettre en place des transformations de TAMODIA, Prague, Rep. Tchèque, 2004, pp. 25-31.
de MIM [5] vers ASUR-IL (modèle source différent) et de MIM [7] Dubois, E., Gauffre, G., Bach, C., Salembier, P.,
vers ASUR (niveau d’abstraction équivalent), mais aussi de Participatory Design Meets Mixed Reality Design Models.
ASUR-IL vers ICARE [2] (modèle cible différent). La définition Actes de CADUI'06, Bucarest, Romania, 2006.
de transformations entre ces modèles offre une perspective
majeure : en considérant une transformation d’un modèle source [8] Dubois, E., Mansoux, B., Bach, C., Scapin, D., Masserey, G.,
vers un modèle cible, nous pourrons évaluer l’impact d’une Viala, J. Un modèle préliminaire des systèmes mixtes. Actes
transformation sur une propriété du modèle source dans le modèle de IHM’04, Namur, Belgique, 2004, pp. 61-68.
cible. Les opérations inverses seront également utiles à [9] Dupuy-Chessa, S., Dubois, E., Requirements & Impacts of
l’interprétation et à la vérification des propriétés. Model Driven Engineering on Mixed Systems Design. Actes
de IDM'05, Paris, 2005, p. 43-54
Modèle de Tâches
Modèle du [10] Haller, M., Zauner, J., Hartmann, W., Luckeneder, T. A
Contexte generic framework for a training application based on Mixed
Focus–Group & ASUR … Reality. Tech. report, Upper Austria University of Applied
CONCEPTION Sciences, Vienne, 2003.
OBSERVATIONS
[11] Ishii H., Ullmer B. Emerging Frameworks for Tangible User
Interfaces. IBM Systems Journal 39, 2000, pp. 915-931.
ASUR-IL
[12] Klemmer S., Li J., Lin J., Landay J. Papier-Mâché : Toolkit
Support for Tangible Input. Actes de CHI’04, Vienne,
Critères Modèles à Autriche, 2004, pp. 399-406.
ergonomiques Composant [13] Renevier, P. Thèse de doctorat, Université Joseph Fourier,
TESTS- IMPLEMENTATION Grenoble, France, 2004.
EVALUATION Plateformes [14] Shaer O., Leland N., Calvillo-Gamez E. H., Jacob R. J. K.
d’exécution The TAC paradigm: specifying tangible user interfaces.
Personal and Ubiquitous Computing 8.5 (2004), pp. 359-
369.
Figure 3 : Cycle itératif de développement
[15] Trevisan D. G., Vanderdonckt J., Macq B. Conceptualising
A plus long terme, ces travaux serviront de base à la définition mixed spaces of interaction for designing continuous
d’un processus complet de développement des SIM dans lequel interaction. Actes de VR’05, Bonn, Allemagne, 2005, pp. 83-
l’utilisation systématique d’outils de modélisation sera exploitée 95.
pleinement de cycle en cycle, cf. Figure 3. Grâce aux outils de