Translation of attribute grammars into procedures
ACM Transactions on Programming Languages and Systems (TOPLAS)
Pushdown automata for user interface management
ACM Transactions on Graphics (TOG)
Automatic verification of finite-state concurrent systems using temporal logic specifications
ACM Transactions on Programming Languages and Systems (TOPLAS)
ACM Transactions on Graphics (TOG)
Statecharts: A visual formalism for complex systems
Science of Computer Programming
Interfaces for advanced computing
Scientific American
Abstract interaction tools: a language for user interface management systems
ACM Transactions on Programming Languages and Systems (TOPLAS)
Human-computer interface development: concepts and systems for its management
ACM Computing Surveys (CSUR)
Augmented state-transition diagrams for reactive software
ACM SIGSOFT Software Engineering Notes
ARCBALL: a user interface for specifying three-dimensional orientation using a mouse
Proceedings of the conference on Graphics interface '92
On the use of LOTOS to describe graphical interaction
HCI'92 Proceedings of the conference on People and computers VII
Model checking and abstraction
ACM Transactions on Programming Languages and Systems (TOPLAS)
A generic platform for addressing the multimodal challenge
CHI '95 Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
A formal technique for automated dialogue development
Proceedings of the 1st conference on Designing interactive systems: processes, practices, methods, & techniques
A grammatical specification of human-computer dialogue
Computer Languages
Better verification through symmetry
Formal Methods in System Design - Special issue on symmetry in automatic verification
IEEE Transactions on Software Engineering - Special issue on formal methods in software practice
Model checking graphical user interfaces using abstractions
ESEC '97/FSE-5 Proceedings of the 6th European SOFTWARE ENGINEERING conference held jointly with the 5th ACM SIGSOFT international symposium on Foundations of software engineering
Survey of the state of the art in human language technology
Survey of the state of the art in human language technology
Using model checking to generate tests from requirements specifications
ESEC/FSE-7 Proceedings of the 7th European software engineering conference held jointly with the 7th ACM SIGSOFT international symposium on Foundations of software engineering
ACM Transactions on Computer-Human Interaction (TOCHI) - Special issue on interface design for safety-critical interactive systems: when there is no room for user error
Bandera: extracting finite-state models from Java source code
Proceedings of the 22nd international conference on Software engineering
Automated test oracles for GUIs
SIGSOFT '00/FSE-8 Proceedings of the 8th ACM SIGSOFT international symposium on Foundations of software engineering: twenty-first century applications
Automated systematic testing for constraint-based interactive services
SIGSOFT '00/FSE-8 Proceedings of the 8th ACM SIGSOFT international symposium on Foundations of software engineering: twenty-first century applications
A scalable formal method for design and automatic checking of user interfaces
ICSE '01 Proceedings of the 23rd International Conference on Software Engineering
Voicexml: Introduction to Developing Speech Applications: Version
Voicexml: Introduction to Developing Speech Applications: Version
Designing the User Interface: Strategies for Effective Human-Computer Interaction
Designing the User Interface: Strategies for Effective Human-Computer Interaction
Petri Net Theory and the Modeling of Systems
Petri Net Theory and the Modeling of Systems
Formal Methods in Human-Computer Interaction
Formal Methods in Human-Computer Interaction
Model Checking Interactor Specifications
Automated Software Engineering
Defining Interfaces at a High Level of Abstraction
IEEE Software
The ESTEREL Synchronous Programming Language and its Mathematical Semantics
Seminar on Concurrency, Carnegie-Mellon University
A Petri Net based Environment for the Design of Event-driven Interfaces
Proceedings of the 16th International Conference on Application and Theory of Petri Nets
Using formal specifications in the design of a human-computer interface
CHI '82 Proceedings of the 1982 Conference on Human Factors in Computing Systems
“Put-that-there”: Voice and gesture at the graphics interface
SIGGRAPH '80 Proceedings of the 7th annual conference on Computer graphics and interactive techniques
A Java toolkit for the design and the automatic checking of server architectures
Proceedings of the 5th international symposium on Principles and practice of programming in Java
Automated gui testing guided by usage profiles
Proceedings of the twenty-second IEEE/ACM international conference on Automated software engineering
Journal of Systems and Software
Engineering of Software-Intensive Systems: State of the Art and Research Challenges
Software-Intensive Systems and New Computing Paradigms
Journal of Systems and Software
Interaction engineering using the IVY tool
Proceedings of the 1st ACM SIGCHI symposium on Engineering interactive computing systems
Interaction walkthrough: evaluation of safety critical interactive systems
DSVIS'06 Proceedings of the 13th international conference on Interactive systems: Design, specification, and verification
Towards the testing of power-aware software applications for wireless sensor networks
Ada-Europe'07 Proceedings of the 12th international conference on Reliable software technologies
International Journal of Human-Computer Studies
Hi-index | 0.00 |
The article addresses the formal specification, design and implementation of the behavioral component of graphical user interfaces. The complex sequences of visual events and actions that constitute dialogs are specified by means of modular, communicating grammars called VEG (Visual Event Grammars), which extend traditional BNF grammars to make them more convenient to model dialogs.A VEG specification is independent of the actual layout of the GUI, but it can easily be integrated with various layout design toolkits. Moreover, a VEG specification may be verified with the model checker SPIN, in order to test consistency and correctness, to detect deadlocks and unreachable states, and also to generate test cases for validation purposes.Efficient code is automatically generated by the VEG toolkit, based on compiler technology. Realistic applications have been specified, verified and implemented, like a Notepad-style editor, a graph construction library and a large real application to medical software. It is also argued that VEG can be used to specify and test voice interfaces and multimodal dialogs. The major contribution of our work is blending together a set of features coming from GUI design, compilers, software engineering and formal verification. Even though we do not claim novelty in each of the techniques adopted for VEG, they have been united into a toolkit supporting all GUI design phases, that is, specification, design, verification and validation, linking to applications and coding.