Transition network grammars for natural language analysis
Communications of the ACM
Design of a separable transition-diagram compiler
Communications of the ACM
A Discipline of Programming
ACM '69 Proceedings of the 1969 24th national conference
Prototyping and simulation tools for user/computer dialogue design
SIGGRAPH '80 Proceedings of the 7th annual conference on Computer graphics and interactive techniques
Formal methods and human factors in the design of interactive languages
Formal methods and human factors in the design of interactive languages
The use of quick prototypes in the secure military message systems project
Proceedings of the workshop on Rapid prototyping
Pushdown automata for user interface management
ACM Transactions on Graphics (TOG)
An object-oriented user interface management system
SIGGRAPH '86 Proceedings of the 13th annual conference on Computer graphics and interactive techniques
CHI '86 Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
ACM Transactions on Graphics (TOG)
Bibliography of software tools for user interface development
ACM SIGGRAPH Computer Graphics
A specification language for direct-manipulation user interfaces
ACM Transactions on Graphics (TOG) - Special issue on user interface software
MIKE: the menu interaction kontrol environment
ACM Transactions on Graphics (TOG) - Special issue on user interface software
A System for Specification and Rapid Prototyping of Application Command Languages
IEEE Transactions on Software Engineering
User interface design from a real time perspective
Communications of the ACM
A knowledge-based user interface management system
CHI '88 Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
A grammar-based approach to automatic generation of user-interface dialogues
CHI '88 Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Dialogue management: support for dialogue independence
MIS Quarterly
Human-computer interface development: concepts and systems for its management
ACM Computing Surveys (CSUR)
State trees as structured finite state machines for user interfaces
UIST '88 Proceedings of the 1st annual ACM SIGGRAPH symposium on User Interface Software
Extensions to C for interface programming
UIST '88 Proceedings of the 1st annual ACM SIGGRAPH symposium on User Interface Software
Communications of the ACM
Propositional production systems for dialog description
CHI '90 Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Druid: a system for demonstrational rapid user interface development
UIST '90 Proceedings of the 3rd annual ACM SIGGRAPH symposium on User interface software and technology
Probabilistic state machines: dialog management for inputs with uncertainty
UIST '92 Proceedings of the 5th annual ACM symposium on User interface software and technology
Integrating status and event phenomena in formal specifications of interactive systems
SIGSOFT '94 Proceedings of the 2nd ACM SIGSOFT symposium on Foundations of software engineering
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
Event-response systems: a technique for specifying multi-threaded dialogues
CHI '87 Proceedings of the SIGCHI/GI Conference on Human Factors in Computing Systems and Graphics Interface
Extending Statecharts with Temporal Logic
IEEE Transactions on Software Engineering
A software model and specification language for non-WIMP user interfaces
ACM Transactions on Computer-Human Interaction (TOCHI)
Developing application independent interfaces for workstations in a distributed environment
Proceedings of the 1986 ACM SIGSMALL/PC symposium on Small systems
Input/output linkage in a user interface management system
SIGGRAPH '85 Proceedings of the 12th annual conference on Computer graphics and interactive techniques
Direct-manipulation user interface modeling with high-level Petri nets
CSC '91 Proceedings of the 19th annual conference on Computer Science
Tools and approaches for developing data-intensive Web applications: a survey
ACM Computing Surveys (CSUR)
Open syntax: improving access for all users
WUAUC'01 Proceedings of the 2001 EC/NSF workshop on Universal accessibility of ubiquitous computing: providing for the elderly
Looking In, Looking Out: Exploring Multiscale Data with Virtual Reality
IEEE Computational Science & Engineering
Specifying Transaction-Based Information Systems with Regular Expressions
IEEE Transactions on Software Engineering
Executable specifications for a human-computer interface
CHI '83 Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Formal specifications for modeling and developing human/computer interfaces
CHI '83 Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Abstract models of dialogue concepts
ICSE '84 Proceedings of the 7th international conference on Software engineering
RIPL: an environment for rapid prototyping with intelligent support
ACM SIGCHI Bulletin
ACM SIGCHI Bulletin
A language-driven approach for the design of interactive applications
Interacting with Computers
SwingStates: adding state machines to Java and the Swing toolkit
Software—Practice & Experience
Some lessons from an exercise in specification
Human-Computer Interaction
Modelling form-based interfaces with bipartite state machines
Interacting with Computers
ACM SIGSOFT Software Engineering Notes
A dialog-based architecture for interactive information systems
ACM SIGMIS Database
Dialogue graphs: a formal and visual specification technique for dialogue modelling
FAC-FA'96 Proceedings of the 1996 BCS-FACS conference on Formal Aspects of the Human Computer Interface
Hi-index | 48.27 |
Formal specification techniques are valuable in software development because they permit a designer to describe the external behavior of a system precisely without specifying its internal implementation. Although formal specifications have been applied to many areas of software systems, they have not been widely used for specifying user interfaces. In the Military Message System project at the Naval Research Laboratory, the user interfaces as well as the other components of a family of message systems are specified formally, and prototypes are then implemented from the specifications. This paper illustrates the specification of the user interface module for the family of message systems. It then surveys specification techniques that can be applied to human-computer interfaces and divides the techniques into two categories: those based on state transition diagrams and those based on BNF. Examples of both types of specifications are given. Specification notations based on state transition diagrams are preferable to those based on BNF because the former capture the surface structure of the user interface more perspicuously. In either notation, a high-level abstraction for describing the semantics of the user interface is needed, and an application-specific one is used here.