9.4 Constructeurs d'interfaces

Les constructeurs d'interfaces courants, tels que Visual Basic, ont deux principales lacunes: premièrement, ils sont fortement limités à la construction d'interfaces WIMP. Deuxièmement, alors que l'apparence de l'interface est construite graphiquement, les comportements (incluant les interactions) doivent être programmés, parfois avec des techniques et un code lourds. Des outils plus avancés pour la construction et le prototypage d'interfaces ont étés proposés, tout particulièrement avec la boîte à outils Garnet/Amulet [Myers1990]. La plupart, comme Lapidary [Vander Zanden et Myers1995], sont des constructeurs graphiques d'interfaces qui utilisent la programmation par l'exemple pour spécifier les comportements. Bien que puissant et efficace, ce paradigme soulève beaucoup de problèmes qui n'ont pas encore été résolus. C'est surtout le cas lors de la spécification de comportements non triviaux, nécessitant alors de restreindre le paradigme à un domaine d'application précis.

Figure 9.5: SILK (Sketching Interfaces Like Krazy) [Landay et Myers1995].
\includegraphics[width=400pt]{silk}

SILK [Landay et Myers1995,Landay1996] est un outil de prototypage d'interfaces basé sur une interaction gestuelle (voir figure 9.5). C'est un environnement de conception d'interfaces complet, avec beaucoup de fonctionnalités telles que l'édition des dessins d'interfaces, l'historique du projet, des outils d'annotation et des scénarios d'explication des interaction/comportements. Par contre, les composants des interfaces construites sont limités aux composants standards de Visual Basic ou CommonLisp (pour Garnet). De plus, les interfaces et interactions ne sont pas fonctionnelles lors de la conception et ne peuvent donc pas être complètement testées et raffinées dynamiquement lors de cette étape.

MIB, le constructeur d'interfaces que nous proposons avec MAGGLITE, permet par contre de prototyper rapidement des interfaces graphiques tirant parti de toutes les interactions avancées de la librairie (dessin, gestes, reconnaissance vocale, etc.), et même d'en prototyper de nouvelles. Il n'est pas limité à la construction d'interfaces WIMP et permet d'utiliser l'interface pendant sa création.

stuf
2005-09-06