Sous-sections

9.7 Conclusion: limites et perspectives

Finalement, nous dressons un bilan synthétique des apports de MAGGLITE sur trois points:

Ces apports font de MAGGLITE un outil adapté au prototypage et à la conception d'interfaces innovantes et d'interactions non-standard. Notre approche ne se veut pas exhaustive en terme de problèmes résolus et d'intégration de techniques d'interaction. Par contre, son ouverture et sa flexibilité permettra de juger de sa pertinence et de ses limites.

9.7.1 Limites

Nous proposons d'identifier les limites actuelles de notre approche sur trois plans importants: les notions de concurrence et de contrôle, les limites de la programmation visuelle et l'évolution vers un contexte industriel de notre approche.

9.7.1.1 Concurrence et contrôle

Le modèle des graphes combinés sur lequel repose MAGGLITE nous a permis de remplir notre objectif d'intégration de divers paradigmes d'interaction dans une même boîte à outils de manière flexible et modulaire. Pourtant, la gestion concurrente de diverses techniques et dispositifs d'entrée pose des problèmes au niveau du multiplexage (contrôle de la fusion ou de la repartition des flots de données) et des modes d'interaction. Bien que plus présente dans les paradigmes traditionnels (WIMP), cette notion de contrôle intervient aussi dès lors que les interfaces avancées s'orientent vers une intégration plus poussée de paradigmes différents. Dans ce cadre des interfaces post-WIMP, cet écueil peut être contourné par une approche totalement instrumentée, où un périphérique va contrôler un instrument unique. Mais bien que techniquement possible avec notre approche, cette solution peut rapidement devenir une faiblesse du point de vue de l'utilisabilité en multipliant les périphériques d'entrée. SVALABARD, par exemple, a à notre avis atteint cette limite et nous avons constaté que le paradigme de flot de données ne se prête pas (ou peu) à la description de configurations de multiplexage dans des cas complexes.

Pierre DRAGICEVIC a déjà évoqué ce problème dans sa thèse [Dragicevic2004b] et a proposé des pistes pour une hybridation de son modèle en flot de données avec des approches orientées contrôle:

  1. une vision macroscopique qui, en conjonction avec un formalisme basé sur un système de transition, nécessiterait des redirections dynamiques des flux de données dans les configuration d'entrées;
  2. une vision microscopique, qui consisterait à gérer le contrôle par des machines à états encapsulées à l'intérieur des dispositifs.
Bien que plus adaptée pour l'intégration des deux modèles, la solution microscopique nécessite l'emploi d'un langage de programmation prenant en compte les transitions d'état. La solution macroscopique permettrait l'emploi d'un formalisme visuel pour la description du contrôle, plus en accord avec nos propositions de prototypage visuel dans MAGGLITE. Toutefois, la reconnexion dynamique des graphes d'interactions pose alors un problème de visibilité et de compréhension.

Notre modèle des graphes combinés pourrait apporter une nouvelle solution à un niveau intermédiaire: un système de transition configurable graphiquement tel que Pet Shop [Bastide et al.2002] contrôlerait la connexion dynamique des IAPs aux composants du graphe de scène et des objets d'intérêt de l'application, sans briser la cohérence des graphes d'interaction (deconnexions et reconnexions des flux d'interaction).

9.7.1.2 Les limites de la programmation visuelle

La flexibilité et l'association dynamique des graphes de notre modèle a montré sa pertinence pour le prototypage visuel de la partie graphique (le graphe de scène) ou des interactions (le graphe d'interaction) avec notre constructeur interactif d'interfaces. Toutefois, cette approche présente encore des limites évidentes sur ces deux points.

Actuellement, les différents niveaux de programmation d'applications interactives avec notre boîte à outils sont:

  1. Un paradigme de programmation visuelle pour décrire la partie graphique (dessin) et les interactions (ICON).
  2. Des outils de programmation traditionnelle pour construire des applications et leur partie métier.

Au niveau des graphes d'interaction, la modularité et la décomposition fine en de nombreux dispositifs montre ses limites pour la réalisation de techniques complexes. Ce n'est pas le modèle en lui-même qui est en cause, mais surtout la complexité visuelle et la compréhension de configurations d'entrées complexe. Il est alors nécessaire de se poser la question de la réalisation de nouveaux dispositifs pouvant «généraliser» et «factoriser» la technique à décrire. Bien que cette approche nécessite un retour à la programmation traditionnelle, elle demeure selon nous indispensable. Nous n'y voyons toutefois pas une régression de notre approche, le principe des dispositifs IAPs encourageant et facilitant d'ailleurs cette démarche dans un cadre de réutilisabilité et de généricité. Il est toutefois important de considérer le problème du choix du niveau de granularité lors de la création de nouveaux dispositifs et de proposer des principes de conception pour aider les développeurs dans cette optique.

Outre la nécessité d'améliorer les outils qu'elle propose pour permettre la création de graphismes avancés (gradients de couleurs, effets, ombres, etc.), la création interactive de composants graphiques pose aussi le problème de la définition d'objets du domaine ou composants métier. Actuellement, les objets graphiques de la boîte à outils sont essentiellement des vues, n'offrant pas un modèle de description et de communication de haut-niveau. La partie métier nécessite donc d'être programmée au niveau de l'application ou dans de nouvelles classes d'objets graphiques (composites, par exemple). Cette notion n'était pas notre préoccupation première, et les composants actuels suffisent à valider notre modèle, en particulier du point de vue de la liaison graphique/interactions.

Il serait maintenant nécessaire d'étudier l'intégration et la réalisation de tels concepts de haut niveau dans notre modèle sans en briser la cohérence et les avantages pour le prototypage interactif. L'extension des Manipulateurs pour le contrôle des objets du domaine est une première piste pour externaliser leur communication dans le même formalisme et le même langage de description que le comportement des objets graphiques. Mais nous pensons aussi à une représentation graphique interactive du graphe de scène qui, associée à des modules métier dépendant du contexte de développement permettrait de les mettre simplement en relation.

9.7.1.3 Évolution vers un contexte industriel

Il convient toutefois de garder à l'esprit que MAGGLITE est un prototype de recherche, ayant prouvé la faisabilité et les avantages de notre nouveau modèle d'implémentation: adéquations à des modèles d'interaction, intégration de techniques d'interaction variées et d'entrées enrichies, graphismes avancés, et adéquation à des outils de prototypage visuels et interactifs.

Il nous parait alors essentiel d'étudier les points nécessaires à son évolution vers un système plus complet de prototypage d'IHM. En effet, de telles approches de séparation des descriptions commencent à être utilisées dans un contexte industriel pour le développement d'applications à grande échelle. La société INTUILAB, par exemple, a développé la boîte à outils IntuiKit dans cette optique, prouvant ainsi l'efficacité de cette approche pour la prise en compte et l'intégration des divers acteurs de la conception d'interfaces tout au long d'un projet [Chatty et al.2004]. Alors que les concepteurs graphique utilisent leurs logiciels habituels pour produire les graphismes de l'interface, les développeurs construisent l'application et ses interaction de manière indépendante. La liaison entre les modules s'opère par une architecture proche de nos graphes combinés.

Notre modèle offre en plus un aspect dynamique permettant à notre avis d'aller plus loin dans l'unification dans un même environnement des différentes compétences impliquées dans la conception d'interfaces et le prototypage d'interactions. L'introduction d'une approche orientée contrôle et d'une représentation graphique d'objets du domaine permettrait la construction d'un Atelier de Génie Logiciel pour le prototypage en IHM reposant essentiellement sur des techniques interactives, le rendant alors accessible aux graphistes, ergonomes et programmeurs. Mais cette proposition implique d'étudier la qualité du modèle en terme de robustesse et de performances, ainsi que d'améliorer les outils actuels (outils de dessin du constructeur d'interfaces, documentation, etc.)

9.7.2 Perspectives et avenir des boîtes à outils

MAGGLITE nous semble être un bon support pour l'enseignement de l'IHM et de la conception d'interfaces. En effet, le principe de construction et de connexion graphique des interactions et des composants de l'interface permet de réaliser des exemples simples, mettant plus l'accent sur les modèles sous-jacents que sur leur implémentation. Si l'on se réfère à notre expérience sur ce sujet, beaucoup d'étudiants comprennent facilement le modèle MVC mais peinent à le réaliser de manière claire et intuitive avec des boîtes à outils telles que Swing. L'utilisation de MAGGLITE permettrait d'en proposer une première approche visuelle afin de comprendre la place et le comportement de chaque agent. Dans cette optique, nous projetons d'étudier un ensemble de problèmes significatifs et de réaliser leurs solutions avec MAGGLITE dans un but pédagogique.

Ensuite, la modularité et la flexibilité de notre approche en fait une plateforme adaptée au prototypage d'interactions. Nous souhaitons d'ailleurs en tirer parti pour nos recherches futures dans ce domaine. Mais nous envisageons aussi d'améliorer son implémentation dans un souci de robustesse, puis d'enrichir la documentation et les exemples fournis afin de permettre sa diffusion à une plus grande échelle dans les domaines de la recherche et de l'enseignement. C'est peut-être une perspective ambitieuse, mais MAGGLITE pourrait alors permettre la réalisation, la diffusion et l'utilisation de techniques innovantes qui restent trop souvent à l'état de prototypes faute de possibilité d'intégration dans des environnements standards.

Avenir des boîtes à outils et des modèles

Nos travaux nous ont menés à constater un paradoxe soulevant de nombreuses questions quant à l'avenir des boîtes à outils d'interaction et des modèles sur lesquels elles se basent (architectures logicielles) ou qu'elles permettent de réaliser (modèles d'interaction). Alors que le rapport au monde des systèmes informatiques évolue dans une voie toujours plus communiquante et ouverte, les solutions techniques qui les régissent à grande échelle restent toujours aussi rigides et fermées.

Car si l'architecture des ordinateurs n'a pas vraiment évoluée depuis ses débuts, comme le souligne Jean-Daniel FEKETE dans [Fekete2005], la manière dont nous les utilisons et les projections que nous faisons de leur utilisation a par contre beaucoup changée. Dès lors, si nous devions donner une seule cause à la relative pauvreté des systèmes actuels en termes d'interaction, nous l'expliquerions par une préoccupation de standardisation plutôt que d'unification. Et c'est justement sur un souci d'unification que se sont penchés nos travaux: une architecture tendant à unifier l'utilisation de diverses techniques d'interaction et par conséquent de différents modèles d'architectures logicielles et modèles d'interaction.

L'on peut alors se poser la question de savoir qui des boîtes à outils ou des systèmes informatiques doit évoluer pour mieux correspondre à l'autre et pour mieux prendre en compte les besoins. Même si les premières ont parcourus plus de chemin que les seconds vers ce point de rencontre, il s'avère toutefois que des plateformes matérielles dédiées à une seule utilisation existent et prouvent leur efficacité (des PC Media Center aux consoles de jeux), bien que ne changeant pas d'architecture physique.

Mais nous pensons surtout que l'avenir des systèmes interactifs passe par deux points cruciaux:

  1. pousser encore plus loin notre approche d'unification afin d'atteindre un niveau encore plus riche de description de l'interaction, intégrant même l'utilisateur dans le modèle.
  2. plus que dans des boîtes à outils, intégrer des architectures et des outils tels que ceux que nous proposons au niveau des systèmes d'exploitation afin de rendre l'interaction plus explicite, visible et adaptable.

Si la première de ces propositions est plus qu'envisageable au vu du chemin actuellement parcouru par la recherche en IHM, la seconde est plus utopique, mais à notre avis nécessaire pour un passage de la standardisation à l'unification.

stuf
2005-09-06