G. Asowd, Agents : recognition and interaction models Shackel editors, Human-Computer Interaction, Proceedings of, pp.143-146, 1990.

A. Iaho, R. Ano, and . Serril, Ut-t-tr,rur{, COMPII-ATEURS, Principes, techniques et outils, 1990.

I. and S. R. Alpnnr, Graceful Interaction with Graphical Constraints, IEEE Computer Graphics & Applications, pp.82-91, 1993.

I. S7l and J. D. Anrhur, Toward a Formal Specification of Menu-Based Systems, The Journal of Systems and Software, pp.73-82, 1987.

I. , R. A. Bescrer, J. Gnuon, V. '. Buxron, and S. Gresnberg, Human-Computer Interaction : Toward the Year, 1995.

I. , M. F. Benrser, and C. Snenrw-bi-anc, La Modélisation d'Applications Interactives Adaptées aux Utilisateurs par des Réseaux de Pétri à Structure de Données, Actes du Troisième Colloque-Exposition de Génie I-ogiciel, pp.7-136

I. S9l, L. A. Benrono, B. T. Vennen, and . Zanoen, Attribute Grammars in Constraint-Based Graphics Systems, Software-Practice and Experience, pp.309-328, 1989.

I. , J. Bnrrsls, P. R. Bono, E. Mcgntnis, and J. Rx, Guidelines for Determining When to Use GKS and When to Use PHIGS, Computer Graphics Forum, issue.7, p.347, 1988.

]. G. Iboo-9l and . Booch, Object Oriented Design With Applications The Benjamin, 1991.

I. , M. Bononcom, U. Cucnvr, and C. , Rizzt A Visual Programming Tool for the Construction of Man-Machine Interface, Proceedings of MICAD'92, pp.129-143

I. , ]. H. Oe-bruhr, P. Bouwrrlen, J. Van, and D. Bos, DIGIS A Graphical User Interface Design Environment for Non-Programmers, EuroGraphics'93, pp.13-24, 1993.

I. , S. Cer, V. /. Ij, and H. Zrnnc, A Visual Tool for User-Interface Development, The Visual Computer, pp.134-143, 1992.

I. and ]. J. Cotit, Interfaces homme-ordinateur, Conception et réalisation, DUNOD informatique, 1990.

I. , J. R. Dence, T. E. Gnenor, R. D. Hnl, S. E. Huoson et al., The Run-Time Structure of UlMS-Supported Applications, Computer Graphics, vol.21, issue.2, pp.97-101, 1987.

I. , R. Dnvn, and H. Alm, Du Grafcet awc réseaux de Petri, Traité des nouvelles technologies, Hermès, 1989.

I. , J. M. Detwrs, J. De, B. , J. D. Folsy et al., Coupling Application Design and User Interface Design, Proceedings of the ACM Conference on Computer-Human Interaction, pp.259-266, 1992.

A. Dx, J. Fnltny, and G. , THESEUS++ : a high level user interface toolkit for graphical applications, IDIN 931 D. DwcBr.oBnl AsOwD et R. BBAE-s, Human-Computer Interaction, 1993.

I. and T. Duvnl, Interfaces Homme-Machine : Évaluation du Modèle d'Architecture Logicielle PAC, Revue internationale de CFAO et d'infographie, pp.3-134, 1991.

I. and T. Duvrr, Modèles d'architecture pour les applications graphiques interactives : la famille Seeheim, Revue intentationale de CFAO et d'infographie, pp.529-534, 1994.

I. , G. P. Fecovn, and F. Perenno, A Visual Environment to Define Composition of Interacting Graphical Objects, The Visual Computer,l992, pp.73-83

I. , C. Fhrh, and R. C. , TIroM,qs, The Use of Command Language Grammar in a Design Tool, International Journal of Man-Machine Studies, vol.34, p.479, 1991.

I. , D. L. Frsssr, E. J. Yunckurth, and S. M. Moss, Optimal Menu Hierarchy Design : Syntax and Semantics, Human Factors, vol.32, issue.6, pp.665-683, 1990.

I. , J. Foley, A. Ven, D. , S. Fenqen et al., Computer Graphics, Principles and Practice, 1990.

J. D. For-py, P. Suxavrrrya, and T. Gnrrmr, A Second Generation User Interface Design Environment: The Model and The Runtime Architecture, Proceedings of I NTERCH I' 9 3, pp.24-29, 1993.

I. and D. M. Fronlich, The history and future of direct manipulation, Behaviour & information technology, vol.12, issue.6, pp.3-5, 1993.

I. , Y. Genoen-er, and J. Junc, A new kind of generators for CAD, 5ème CARs and FoF, 1990.

I. and ]. Y. Gnnpen, La CFAO introduction, techniques, et mise en aetwre, Hermès, 3ème édition

I. , Y. Gennen, J. Jung, B. Menrnq, and D. Vover, NADMG : formalisation des menus et du langage, 1992.

J. Ganoan, B. Junc, C. Menrnq, and . Cam, An End-User oriented approach to design manmachine interface for, IGAR 931 Proceedings of IEEE Intentational Conference on Systems, pp.17-20, 1993.

J. Gnnoen, S. Jung, B. Lenrbn, C. Mlrtrn, and C. Mnich, POnqStCNON et I. StÉVeRr, Conception et réalisation d'une maquette illustrant une approche du dialogue, de Ia gestion des contraintes et de Ia modéIisation en C, A.O. L.R.I.M, pp.95-96, 1995.

I. , Y. Genpan, and B. , MRnrnq et I. SrÉu,Anr, ModéIisation des comportements : un lien entre ruodèles et dialogues, Rapport de recherche, 1995.

I. , Y. Gnmnn, B. Menrnq, and I. Sréuart, Extraction des connaissances du modèle en CFAO: application à la génération du dialogue, accepté pour MICAD'96, Paris (FRANCE), 13-15 Février, 1996.

1. , P. Gneno, and G. Pnnnn, End-user programming environments : a taxonomy revisited' Rapport de recherche N"93009, Ecole Nationale

I. , D. F. Grcsxens, and J. D. Fomy, Controlling user interface objects through pre-and postconditions, Proceedings of CHI'92, pp.189-194, 1992.

I. Références-bibliogra, D. C. S8l, R. P. Gossrro, H. Zurren-'re, and . Sakurat, Representing Dimensions, Tolerances, and Features in MCAE Systems, IEEE Computer Graphics & Applications, pp.51-59, 1988.

I. , B. Greu, and G. Saeah, Vn llAT, Pragmatique et dialogue homme-machine, Technique et science informatiques, Num. l, vol.13, pp.9-30, 1994.

I. and M. Gneen, A Survey of Three Dialogue Models, ACM Transactions on Graphics, vol.5, issue.3, pp.244-275, 1986.

I. , L. Gurrrbr, and G. Pmnra, Organisation modulaire et spécification d'une application de C.A.O. : Hiérarchie d'interacteurs dans le système NODAO, 1993.

I. and P. A. Hrncocr, Mental V/orkload Dynamic in Adaptative Interface Design, IEEE Transactions on Systems, Man and Cybernetics, vol.18, issue.4, pp.641-658, 1988.

I. , H. R. Herrson, D. Hd-(-et, and T. M. Kraly, Developing Human-Computer Interface Models and Representation Techniques, IEEE Software-Practice and Experience, pp.425-457, 1990.

1. , P. J. Heyss, P. A. Szercly, and R. A. Erner, Design Alternatives for User-Interface Management Systems Based on Experience with Cousin, Proceedings of SIGCHI'85, pp.169-175, 1985.

I. , J. Hanoenberch, and J. Mtcnaner, Integrating PHIGS and User Interface Systems, Corttputer Graphics Forum, pp.27-36, 1991.

I. and P. Hicuer, Etude des prolongements d'un langage de description d'actions adapté à Ia C, 1994.

T. , W. Hûnnrr, and M. R. Govres, Two Object-Oriented Models to Design Graphical User Inrerfaces, Proceedings of EUROGMPHICS'ï9, pp.63-74, 1989.

I. and R. J. Jacob, A specification language for direct-manipulation user interfaces, ACM Transactions on Graphics, vol.5, issue.4, pp.283-317, 1986.
DOI : 10.1145/27623.27624

C. Jnnssrn and A. , WBIsBEcKER and J. 7.rFcLER, Generating User Interfaces from Data models and Dialogue Net Specifications, Proceedings of INTERCHI'93, pp.24-29, 1993.

U. , I. , J. A. Johnson, B. A. Nanor, C. L. Zarmer et al., ACE: Building Interactive Graphical Applications, Communications of the ACM, vol.36, issue.4, pp.4-55, 1993.
DOI : 10.1145/255950.153576

I. , E. Kenrono\rytrz, and O. Sunansry, The Adaptable User Interface, Communications of the AcM Num. II, vol.32, pp.1352-1358, 1989.

I. and D. J. Kasrk, A User Interface Management System, Computer Graphics, Juillet, vol.16, issue.3, pp.99-106, 1982.

I. , W. C. Kna, and J. D. Fomy, Providing HighJevel Control and Expert Assistance in the User Interface Presentation Design, Proceedings of INTERCHI'?3, pp.430-437, 1993.

I. , G. Kunrenbecn, and W. Buxron, The Limits Of Expert Performance Using Hierarchic Marking Menus, Proceedings of INTERCHI'23, pp.24-29, 1993.

I. , G. Kunrenbach, and W. Bu>rton, User I-earning and Performance with Marking Menus, Proceedings of CHI'94 Avril, pp.24-28258, 1994.

I. , A. Mancus, A. Van, and D. , User-Interface Developments for the Nineties, IEEE Computer, vol.24, issue.9, pp.49-57, 1991.

I. and A. Marcus, The future of advanced user interfaces in product design, Proceedings [1992] The Ninth TRON Project Symposium, pp.14-20, 1992.
DOI : 10.1109/TRON.1992.313272

I. and B. Menlllt, Contibution à Ia conception et à l'implémentation du langage NADMG, 1992.

I. , A. Monsn, and G. Revnolds, Overcoming Current Growth Limits in UI Development, Communications of the ACM, vol.36, issue.4, pp.73-81, 1993.

I. , R. Monryon, P. Szekelv, and R. Nncrms, Automatic Generation of Help from Interface Design Models, Proceedings of CHI'94, pp.24-28225, 1994.

I. and B. A. Mvers, User-Interface Tools : lntroduction and Survey, IEEE Soffivare, vol.6, pp.15-23, 1989.

. A. Mye-90a-]-b and . Myers, Creating User Interfaces Using Programming by Example, Visual Programming, and Constraints, ACM Transactions on Programming Languages and Systems, vol.12, issue.2, pp.143-177, 1990.

I. and B. A. Mysrs, Taxonomies of Visual Programming and Program Visualization, Jountal of Visual Languages and Computing, Mars, pp.97-123, 1990.

. Imye-'oo, r;1;*I,îil |nil:î#:i#: ;;:XÏi Ti:' ACM rransac'îions on Inrorma'lion tMyE 9ll B. A. MysRs, Graphical Techniques in a Spreadsheet for Specifying User Interfaces, Human Factors in Computing Systems, Proceedings SIGCHI'9l, pp.243-249, 1991.

I. and B. A. Myers, Demonstrational interfaces: A step beyond direct manipulation, Computer, vol.25, issue.8, pp.61-73, 1992.
DOI : 10.1109/2.153286

URL : http://repository.cmu.edu/cgi/viewcontent.cgi?article=2998&context=compsci

. A. Mye-92c-]-b, M. B. Mysns, and . Rosson, Survey on User Interface Programming, Proceedings of the ACM Conference on Computer-Human Interaction, pp.195-202, 1992.

I. , B. A. Myens, B. Vinder, and . Zanden, Environment for Rapidly Creating Interactive Design Tools, The Visual Computer,1992,Yo1, pp.94-116

I. , F. Nrnlamkavtl, and O. Mulunney, A Methodology and Tool Set for Supporting the Development of Graphical User Interfaces, Computer Graphics Forum, vol.10, pp.37-47, 1991.

I. , D. Olsen-jr, T. Mcnnu-l, and D. Michel, Workspaces: An architecture for editing collections of objects, Proceedings of the ACM Conference on Computer-Human Interaction à272' tpAN 931 G. J. PeNcALos, Designing the user interface, Computers in Industry, p.267, 1993.

J. Tpie-871 and . Perrel, Dialogue oral homme-machine, 1987.

I. , P. Russo, and S. Boor, How Fluent is Your Interface ? Designing for International (Jsers, Proceedings of INTERCHI'|3, pp.24-29, 1993.

I. , T. Sueprno, S. Snseld, and C. , WoRl-eY, A Visual Software Process Language' communications of the ACM, pp.37-44

B. Snnenertran, Direct Manipulation : a step beyond programming languages, Computer, vol.16, issue.8, pp.57-69, 1983.

I. and G. Snqch, Vu : Visual User-Interface Design,The Visual Computer, pp.230-241, 1990.

9. P. Szernly, P. Luo, and R. Npctns, Beyond interface builders: model-based interface tools, Proceedings of INTERCHI'?3, pp.24-29, 1993.

9. P. Szerely, R. Morryon, and R. Necms, Automatic Generation of Help from Interface Design Models, Proceedings of CHI'94, pp.24-28225, 1994.

I. S9l and V. /. Tornro, Contribution à Ia modéIisation de l'interface homme-machine dans un système de CAO, Thèse d'université, 1989.

I. , J. M. Vussnes, and M. A. Lnqton, Unidraw : A framework for building domain-specific graphical editors, ACM Transactions on Information Systems, vol.8, pp.237-268, 1990.

J. Wolrrn and P. Cuanonasekaran, A Concept for a Constraint-Based Representation of Functional and Geometric Design Knowledge, Proceedings Symposium on solid modeling fundation and CAD/CAM application, pp.5-7, 1991.

C. A. Woo, P. D. Woop, and A. C. Gney, Experience with Chisl, a Configurable Hierarchical Interface Specification Language, Computer Graphics Forum, vol.7, pp.7-127, 1988.

F. Hucsrs, An lnteractive 3D Toolkit for Constructing 3D V/idgets, COMPUTER GRAPHICS Proceedings, Annual Conference Series, pp.81-84, 1993.

. La-hiérarchie-des-Éléments-d, interface ainsi que la définition des compatibilités nous permettent de construire la partie statique de I'interface par simple appel aux méthodes de construction des différents objets Comme exemple, nous prenons I'interface déjà présentée dans la figure IIExemple"); ll création de I'interface InterfaceSimple->CreerElement (new Domaines, déclaration de I'interface InterfaceSimple = new Interfaces

=. Act and . Actionsnonlnteractivesavecresultat, créer segment

. La-méthode-associeraction, action) associe I'action globale action à l'élément courant. Les actions globales sont instanciées une fois à I'initialisation du système, comme pour les menus. Ainsi, dans la Annexe A. Le développement de SACADO. portion de code ci-dessus, on recherche le menu "Segment" et on le stocke dans l'élément courant. On crée ensuite I'action globale "ActGlob". Enfin, on I'associe à l

. Nous-avons-décrit-i-'ensemble-de-i-'interface, Nous détaillons son fonctionnement à travers les méthodes utilisées et les changements de contexte. [aes différents algorithmes ci-dessous ne tiennent pas compte de la mise en place des compatibilités au cours des différents appels (pour cela, on peut se reporter au chapitre 2 qui indique quand et à quelles conditions ces changements doivent être appliqués) Le premier cas étudié est celui du lancement d'une nouvelle action globale

. Menu, Activer ( ) {Action-Globale est I'action associée au menu Menu} {Type-Menu est le type d'appel du menu : local, immédiat, différé} Action-Globale

. Action-globale and . Activer, Type-Action) suivant Type-Action faire immédiat: { lancement de I'action et si elle pile des actions ) courant = depart.activer( ) n'est pas terminée, elle est mise au sommet de Ia g[ courant I VIDE {l'action est en attente} alors Interface-Courante.Pile.Empiler(this, Type-Action) différé: { désactivation des actions de la pile et lancement de I'action avec sa nouvelle comparibilité

=. Act and . Interface-courante, Action ( ) Act.Desactiver ( ) Activer (Nouveau-Type-Action) local, Pile.Sommet(

{. Lancement-de-i-'action-et-si-elle-n, est pas terminée, elle est mise au sommet de la pile des actions sinon on reactive I'action précédente avec le résultat ) courant = depart.activer o si courant # VIDE {l'action est en attente} alors Interface-Courante.Pile.Empiler(this, Type-Action) sinon Act = Interface-CouranteAction (, Pile.Sommet (

. Fenetre, Identifier (Coordonnees) {Action-Globale est I'action associée au menu Menu} {Type-Menu est le type d'appel du menu : local, immédiat, différé} objet = résultat de I'identification en (x,y) Action-Globale

. Action-globale, Reactiver (objet) courant = courantReactiver (objet) si courant = VIDE {l'action est terminée} alors Type-Action = Interface-CouranteType ( ) suivant Type-Action faire immédiat, Pile.Sommet (

=. Act and . Interface-courante, Action (, Pile.Sommet(

L. 'objectif-d-'implémenter-un-nouveau-noyau, Nous I'avons défini de telle sorte qu'il soit indépendant de la boîte à outils utilisée Ce noyau étant réalisé avec des widgets, nous avons voulu qu'il respecte leur philosophie. I-e fait qu'une action globale interrompue rende la main à I'interface pour perrnettre d'y répondre permet de ne pas avoir de boucle d'attente d'événements et donc de laisser un maximum de contrôle aux éléments d'interface (widgets) Bien que récent

. Sous-expr-Àjout-'>=-', Sous Expr-Ajout Sous_Expr-AjouE Sous Expr-Àjout'+' Sous-Expr-Mult Sous Expr-AjouÈ'-' Sous-Expr-Mult, Sous-Expr-MulE Sous-Expr-Mult'*' Terme Sous-Expr-Mult'/' Terme Sous-Expr-Mult'Div' Terme Sous-Expr-Mult'Mod

C. Annexe, . Les-croupe:,-'groupe-'fils, and . De, FeneEre principale sÀcADo, IVIDE] IVIDE

O. Menu, . Menu, . Optton, . Option, . Option et al., Groupe de MenusGroupe de Menus, FILS DE "Groupe de Menus' IVIDE

F. 2d, Fenetre 2D" 1 -1-OOO.0 -1000Fenetre principale SACADO" ["Raffraichir2D, 2000.

A. Texte, Message" O -1 -L 20 FILS DE "FeneÈre principale SACADO

E. Differe-de-"-cercle, Segrment, COMPATIBILITE

. Pour-chaque-Élément, on doit indiquer entre crochets les actions globales associées et la compatibilité de départ. Par exemple pour le domaine principal, la compatibilité indique que, par héritage, toute I'interface est immédiate (lorsque vrDE apparaît cela signifie qu'aucune compatibilité particulière n'est requise) On peut préciser les compatibilités entre les différents éléments grâce à I'instruction COMpATIBILITE. Dans I'exemple

+. Suparameeres and . Suparametres-), Parametres ';' SuParametres ParameÈres -) 'Parametre' ':' Nom ' (' 'Numero' ')' 'Position

+. Listedefinitions and . Definit, ions';' ListeDefinitions Definitions -t Interactions Definitions -) OperateursET

. Int, eracEions -â 'InEeraction' ' : ' Nom

. Operateurset-+-'ee-'nom, Numero' ' ) ' ' : ' PremiereOperande ' , ' ListeNom OperateursOU + 'Ou' Nom

+. Àni and . Àni-'parametre, Contrainte' ' :' Nom ' (' 'Numero ') ' 'Chaine' 'Code' ' ' | 'Nunero' 'Parametre' ':' 'Numero' 'Vers' Nom

. Cont and . Raintes-+-'contrainte, Nom'(' 'Numero' ')' 'Code' ':' 'Nunero' 'Parametre' ':' 'Numero' 'Vers' Nom

+. Effees and . Effet, ParaneEre' ':' 'Numero 'Nom' 'Vers'Nom

C. Figure, Action globale de création d'un segment à partir de dew points distincts

N. De and P. Fnteràction, Premier poinÈ TYPE : $pePoinEs

F. De-donnee-;-@-flot and D. Donnee, VERS (4) VERS (4) VERS (5), VERS VERS VERS, vol.@ DEPART, issue.7227573237

. Dans-ce-fichier, Cela devrait faciliter l'écriture d'un outil de génération des actions globales à partir de leur description graphique. Pour aider à la compréhension, des annotations que I'on retrouve sur le schéma et dans le fichier ont été ajoutées (par exemple (7) et@).[-e fichierde description est lu àchaque sélection d'un menu, cela autorise des évolutions dynamiques ("à la volée") d'une implantation. Si I'opérateur désire modifier une action, la modification est prise en compte dès I'exécution suivante. Cela conforte notre approche de vouloir permettre la modification de I'implantation pendant son exécution

. La-maquette-est-opérationnelle, Si I'on observe I'implémentation d'un point de vue conceptuel, la description des comportements ne semble pas complexe Elle correspond à la vision que I'on a du dialogue. Pour détecter une propriété sur un objet, on crée un réacteur intrinsèque lié à la propriété et qui contient la description de l'évaluation des données utilisées pour vérifier la propriété et dépendant de I'objet. On reste donc suffisamment éloigné des concepts du dialogue à utiliser tout en restant proche de la représentation que I

U. Intérêt-supplémentaire-apparaît-sur-le-plan-de-i-'extension, Il est tout à fait possible de modifier I'application en spécifiant de nouveaux objets Le dialogue pourra encore être généré. En faisant abstraction de l'absence d'outils de description des comportements, I'implémentation a prouvé que générer du dialogue n'est pas une utopie. Il reste encore des zones d'ombres à éclaircir, mais les résultats sont prometteurs car avec peu de moyens on obtient I'application graphique interactive que I'on désirait initialement