• Aucun résultat trouvé

2.3 Environnements fondés sur les modèles

2.3.2 MB-UIDE post-MDA

Les MB-UIDE post-MDA ont l’avantage de pouvoir s’appuyer sur des concepts et des outils communs et pré-existant pour modéliser un SI. De plus, ces MB-UIDE utilisent avantageusement la transformation de modèles pour passer d’un niveau d’abstraction à un autre.

Un des environnements IDM les plus connus est certainement GMF (Graphical Modeling

Framework) développé par Eclipse [Moore et al., 2004]. GMF ne se place pas dans l’espace

technique de MDA mais définit son propre espace technique, appelé EMF (Eclipse Modeling

Framework) dans lequel le langage Ecore est le méta-métamodèle. GMF est dédié à la génération

d’éditeurs de diagrammes à partir d’un ensemble de modèles décrivant les données sources et différentes parties de l’interface (palettes d’outils, présentations, etc.). Si GMF a pour principal avantage de générer intégralement le code des éditeurs de diagrammes, ces derniers ont des interfaces graphiques stéréotypées desquelles il est difficile de s’éloigner.

Une majorité des MB-UIDE post-MDA s’intéresse à de nouveaux problèmes issus de l’évo-lution des dispositifs électroniques (PDA, téléphone portable, etc.) et aux nouvelles façons d’in-teragir avec ces derniers (réalité mixte, interaction multimodale, etc.). S’ils gèrent tous les inter-actions multimodales, certains, comme OpenInterface [Serrano et al., 2008] et ASUR [Gauffre et

al., 2008], sont orientés pour la conception d’interactions et d’interfaces post-WIMP ; d’autres,

comme CAMELEON [Calvary et al., 2003], UsiXML [Vanderdonckt, 2005] et TERESA [Paternò

et al., 2008], tendent à répondre au problème de l’adaptation des IHM au contexte.

2

« window, icon, menu, pointing device »

2.4 Conclusion

2.4 Conclusion

Un point commun à tous les MB-UIDE les plus récents présentés dans ce chapitre est l’uti-lisation d’un processus de conception, représenté par la figure 2.8, divisé en quatre niveaux :

1. les modèles de tâches et des données sources définissent les tâches que les utilisateurs peuvent réaliser sur les données sources ;

2. l’interface abstraite fournit une description indépendante d’une plate-forme et de toute organisation logique des éléments de l’interface ;

3. l’interface concrète, contrairement à celle abstraite, décrit l’aspect graphique de l’interface en fonction d’une plate-forme donnée ainsi que les interacteurs utilisés ;

4. l’interface finale correspond au code source du SI.

Une telle décomposition a pour avantages d’enrichir progressivement la spécification d’un SI et de pouvoir réutiliser les modèles définis. Une interface abstraite sert, par exemple, à la création de plusieurs interfaces concrètes, dans le cadre d’un SI multi-plateformes. Cependant, une des limites majeures à la modélisation abstraite est le pouvoir d’expression des MB-UIDE : les SI générés se restreignent généralement à un domaine d’étude (p. ex. les éditeurs de diagrammes pour GMF) [Myers et al., 2000]. Une solution à ce problème consiste à ajouter des modèles afin de décrire plus en détails les SI. Ce principe introduit un nouvel inconvénient, l’augmentation de la complexité du processus de spécification, qui réduit du même coup l’attractivité et la faisabilité de la méthode [Vanderdonckt, 2008]. D’autres limites sont également présentes, comme la maintenance des modèles qui peut s’avérer compliquée lorsqu’ils sont liés entre eux.

données et tâches Modèles de (AUI) Interface Abstraite (CUI) Interface Concrète (FUI) Interface Finale In g én ie ri e d es in te rf ac es d ir ig ée s p ar le s m o d èl es

Fig. 2.8: Ingénierie des interfaces dirigée par les modèles

Le tandem IDM-IHM ne se limite pas à la conception de SI mais concerne également la composition et l’adaptation d’IHM. La composition d’IHM consiste à fusionner différentes IHM en une unique [Lepreux et al., 2007; Joffroy, 2009; Déry-Pinna et al., 2009]. L’adaptation d’IHM consiste à modifier l’IHM de manière dynamique, c.-à-d. lors de l’exécution du SI, ou statique

lors d’un changement de contexte d’usage (changement d’utilisateur, de plate-forme d’exécution, sonore, lumineux, etc.) [Sottet et al., 2007a; Blumendorf et al., 2008].

Deuxième partie

Manipulation de données avec

Cette partie est dédiée à la présentation du langage de correspondance Malan (a

MAp-ping LANguage) et de l’état de l’art qui s’y rapporte. Le premier chapitre est un état de l’art

des différentes méthodes de manipulation de données pour les SI : les principales approches de manipulation de données sont présentées ; le lien entre des données sources d’un SI et ses présen-tations est discuté. Ce chapitre met en avant l’absence de langage de correspondance respectant les contraintes imposées par l’établissement et la gestion des liens « données-présentations ».

Le deuxième et le troisième chapitres détaillent le langage de correspondance Malan. Le deuxième chapitre décrit le modèle de données de ce langage. La représentation des données est présentée et le typage est ensuite décrit. Le troisième chapitre introduit le modèle de corres-pondance de Malan, fondé sur le modèle de données du second chapitre. Il se consacre à une présentation détaillée des langages abstrait et concret de Malan.

Chapitre 3

Manipulation de données pour les

systèmes interactifs : un état de l’art

Sommaire

3.1 Introduction . . . . 35 3.2 Taxonomies . . . . 35 3.2.1 Taxonomie des domaines d’applications . . . . 35 3.2.2 Taxonomie des approches . . . . 37 3.2.3 Exemple illustratif . . . . 38 3.3 Approches fondées sur les instances . . . . 38 3.3.1 Les langages déclaratifs . . . . 39 3.3.2 Les langages de requêtes . . . . 39 3.3.3 Discussion . . . . 41 3.4 Approches fondées sur les schémas . . . . 41 3.4.1 Les langages de transformation typés . . . . 41 3.4.2 Les approches fondées sur la correspondance de schémas . . . . 43 3.4.3 Discussion . . . . 44 3.5 Approches dirigées par les modèles . . . . 44

3.5.1 Différences entre les approches fondées sur les schémas et celles fondées sur MDA . . . . 45 3.5.2 Discussion . . . . 47

3.6 Transformation des données en présentations . . . . 47

3.7 Conclusion . . . . 49

3.1 Introduction

3.1 Introduction

Parmi les formats de données prédominants, XML et les relationnelles sont certainement ceux les plus utilisés du fait du consensus établi autour du premier l’établissant comme le langage de description de données, et de la nécessité de centraliser les données pour le second.

Au cœur des SI, la manipulation de données se divise en deux domaines d’application [Blouin

et al., 2008b]. Le premier est appelé la translation de schémas puisque son but est d’établir un

pont entre deux ensembles de données homogènes exprimant un même concept. Il permet ainsi l’interopérabilité entre des bases de données et les SI qui les utilisent. Le second domaine est appelé la transformation de schémas étant donné que les schémas sources et le schéma cible n’expriment pas le même concept. Ce principe permet la création de présentations.

La manipulation de données des SI (MDSI) peut être divisée en trois groupes. Le premier rassemble les techniques et les langages manipulant directement les données, c.-à-d. les instances, tels qu’XSLT et XQuery. Leur principal inconvénient est qu’ils ne vérifient pas la structure des données, ce qui rend la manipulation sujette à erreur. Pour éviter cet inconvénient, les techniques du deuxième groupe travaillent au niveau des schémas, au lieu d’effectuer des transformations entre des données. Le troisième groupe comprend les approches dédiées à la transformation dans le cadre d’IDM (cf. chapitre 2, page 19). Même si l’IDM et ses langages associés (p. ex. ATL, QVT) visent à répondre à un problème plus général que celui de la MDSI, une transformation de modèles peut être développée dans ce contexte. Les approches fondées sur les schémas sont dé-pendantes d’une plate-forme de données spécifique et travaillent, par conséquent, dans un espace technique particulier, à savoir XML ou relationnel. En travaillant dans l’espace technique des modèles, les approches IDM sont, quant à elles, indépendantes de ces plates-formes. Cependant, ces approches doivent définir le passage entre leur espace technique et ceux du relationnel et de l’XML.

La section suivante présente une taxonomie des domaines d’applications et une taxonomie des différentes approches. Les sections 3.3, page 38, 3.4, page 41 et 3.5, page 44 détaillent les méthodes et les langages des trois groupes introduits ci-dessus, à savoir : les approches fondées sur les instances, celles fondées sur les schémas et celles dirigées par les modèles. La section 3.6, page 47 est consacrée au problème de la transformation de données en présentation.