Supporting concurrency, communication, and synchronization in human-computer interaction—the Sassafras UIMS

Sassafras is a prototype User Interface Management System (UIMS) specifically designed to support a wide range of user interface styles. In particular, it supports the implementation of user interfaces where the user is free to manipulate multiple input devices and perform several (possibly related) tasks concurrently. These interfaces can be compactly represented and efficiently implemented without violating any of the rules of well-structured programming. Sassafras also supports elaborate run-time communication and synchronization among the modules that make up the user interface. This is needed to implement user interfaces that have context-sensitive defaults, and it simplifies recovery from semantic errors. Sassafras is based on a new language for specifying the syntax of human-computer dialogues known as Event-Response Language (ERL) and a new run-time structure and communication mechanism for UIMSs known as the Local Event Broadcast Method (LEBM). Both ERL and LEBM are described in detail, and implementation techniques are presented. The effectiveness of Sassafras is demonstrated by describing two interfaces that have been implemented with Sassafras.

[1]  James D. Foley,et al.  Towards specifying and evaluating the human factors of user-computer interfaces , 1982, CHI '82.

[2]  D. A. Henderson,et al.  The Trillium user interface design environment , 1986, CHI '86.

[3]  Robert van Liere,et al.  User Interface Management Systems , 1987, Advances in Computer Graphics.

[4]  W. Buxton,et al.  A study in two-handed input , 1986, CHI '86.

[5]  Phyllis Reisner,et al.  Formal Grammar and Human Factors Design of an Interactive Graphics System , 1981, IEEE Transactions on Software Engineering.

[6]  S. J. Payne,et al.  The user's perception of the interaction language: A two-level model , 1983, CHI '83.

[7]  James J. Thomas,et al.  Graphical input interaction technique (GIIT) , 1983, COMG.

[8]  William Buxton,et al.  Issues and techniques in touch-sensitive tablet input , 1985, SIGGRAPH '85.

[9]  Luca Cardelli,et al.  Squeak: a language for communicating with mice , 1985, SIGGRAPH.

[10]  Ben Shneiderman,et al.  Direct Manipulation: A Step Beyond Programming Languages , 1983, Computer.

[11]  Mark Green,et al.  Report on Dialogue Specification Tools , 1984, Comput. Graph. Forum.

[12]  Robert Balzer,et al.  On the inevitable intertwining of specification and implementation , 1982, CACM.

[13]  Douglas C. Engelbart Design considerations for knowledge workshop terminals , 1973, AFIPS National Computer Conference.

[14]  Michael D. Zisman USE OF PRODUCTION SYSTEMS FOR MODELING ASYNCHRONOUS, CONCURRENT PROCESSES , 1978 .

[15]  Anthony I. Wasserman,et al.  Rapid prototyping of interactive information systems , 1982 .

[16]  G. Enderle Report on the Interface of the UIMS to the Application , 1985 .

[17]  Alan S. Neal,et al.  Playback: A method for evaluating the usability of software and its documentation , 1983, CHI '83.

[18]  William Buxton,et al.  Towards a comprehensive user interface management system , 1983, SIGGRAPH.

[19]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[20]  Douglas C. Engelbart,et al.  A research center for augmenting human intellect , 1968, AFIPS Fall Joint Computing Conference.

[21]  G. E. Pfaff,et al.  User Interface Management Systems , 1985, Eurographic Seminars.

[22]  Eugene Fiume,et al.  The message is the medium: Multiprocess structuring of an interactive paint program , 1982, SIGGRAPH.

[23]  Robert J. K. Jacob,et al.  Using formal specifications in the design of a human-computer interface , 1983, CACM.

[24]  Robert E. Kraut,et al.  Command use and interface design , 1983, CHI '83.

[25]  P. Vittoz Man , 1962, Bloom.

[26]  T. T. Carey,et al.  Prototyping interactive information systems , 1983, CACM.

[27]  James D. Foley,et al.  Fundamentals of interactive computer graphics , 1982 .

[28]  Subhash C. Kak Data Security in Computer Networks: Guest Editor's Introduction , 1983, Computer.

[29]  P. P. Tanner,et al.  Some Issues in Future User Interface Management System (UIMS) Development , 1985 .