Using formal specifications in the design of a human-computer interface
- 1 April 1983
- journal article
- Published by Association for Computing Machinery (ACM) in Communications of the ACM
- Vol. 26 (4), 259-264
- https://doi.org/10.1145/2163.358093
Abstract
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.Keywords
This publication has 10 references indexed in Scilit:
- The use of quick prototypes in the secure military message systems projectACM SIGSOFT Software Engineering Notes, 1982
- Editorial: Special issue on “The semantics and syntax of human-computer interaction”International Journal of Man-Machine Studies, 1981
- Formal Grammar and Human Factors Design of an Interactive Graphics SystemIEEE Transactions on Software Engineering, 1981
- Military Message Systems: Current Status and Future DirectionsIEEE Transactions on Communications, 1980
- Language Development Tools on the Unix SystemComputer, 1980
- Prototyping and simulation tools for user/computer dialogue designACM SIGGRAPH Computer Graphics, 1980
- The art of natural graphic man—Machine conversationProceedings of the IEEE, 1974
- Transition network grammars for natural language analysisCommunications of the ACM, 1970
- On the use of transition diagrams in the design of a user interface for an interactive computer systemPublished by Association for Computing Machinery (ACM) ,1969
- Design of a separable transition-diagram compilerCommunications of the ACM, 1963