Future directions in user-computer interface software

Developing high-quality user interfaces is becoming the critical step in bringing many different computer applications to end users. Ease of learning and speed of use typically must be combined in an attractivelydesigned interface which appeals to application (not computer) oriented end users. This is a complex undertaking, requiring skills of computer scientists, application specialists, graphic designers, human factors experts, and psychologists. User interface software is the foundation upon which the interface is built. The quality of the building blocks provided by the software establishes the framework within which an interface designer works. The tools should allow the designer to quickly experiment with different design approaches, and should be accessible to the non-programmer designer. In this paper we discuss important directions in software tools for building user interfaces: s Unified representation serving multiple purposes; ● Integration with software engineering tools: ● Interactive programming and by-example creation of interfaces and interface components. Most of our focus is on the first two areas. 1. Background on User Interface Software Tools Figure 1 shows the various levels of user-interface software, and suggests the roles for each. The application program has access to all software levels; programmers can exploit the services provided by each level, albeit with care, because calls made to one level may affect the behavior of another level. In this paper we discuss just the interaction tec~lque toolkit and user interface management system layers. See [FOLE90] for discussions of the window manager and graphics layers.

[1]  James D. Foley,et al.  ALGORITHMS TO TRANSFORM THE FORMAL SPECIFICATION OF A USER-COMPUTER INTERFACE , 1987 .

[2]  William Buxton,et al.  Creating highly-interactive and graphical user interfaces by demonstration , 1986, SIGGRAPH.

[3]  Srdjan Kovacevic,et al.  Defining interfaces at a high level of abstraction , 1989, IEEE Software.

[4]  Brad A. Myers,et al.  Creating user interfaces by demonstration , 1988 .

[5]  S. Kovacevic,et al.  A knowledge-based user interface management system , 1988, CHI '88.

[6]  Dan R. Olsen,et al.  A programming language basis for user interface , 1989, CHI '89.

[7]  Srdjan Kovacevic,et al.  UIDE—an intelligent user interface design environment , 1991 .

[8]  Corporate Open Look: graphical user interface application style guidelines , 1990 .

[9]  Noi Sukaviriya Dynamic construction of animated help from application context , 1988, UIST '88.

[10]  James D. Foley,et al.  Coupling a UI framework with automatic generation of context-sensitive animated help , 1990, UIST '90.

[11]  Allen Newell,et al.  The keystroke-level model for user performance time with interactive systems , 1980, CACM.

[12]  Wilfred J. Hansen,et al.  The Andrew Toolkit - An Overview , 1988, USENIX Winter.

[13]  Deborah Hix,et al.  Human-computer interface development: concepts and systems for its management , 1989, CSUR.

[14]  Paul R. Calder,et al.  Composing user interfaces with InterViews , 1989, Computer.

[15]  James Gettys,et al.  The X window system , 1986, TOGS.

[16]  Srdjan Kovačevic A compositional model of human-computer dialogues , 1992 .

[17]  D R Olsen Larger issues in user interface management , 1987, COMG.

[18]  Brad A. Myers,et al.  User-interface tools: introduction and survey , 1989, IEEE Software.

[19]  Robert Eric Braudes A framework for conceptual consistency verification , 1990 .

[20]  James D. Foley,et al.  Coupling application design and user interface design , 1992, CHI.

[21]  Dan R. Olsen,et al.  A Programming Language Basis for User Interface Management , 1989 .

[22]  James D. Foley,et al.  DON: user interface presentation design assistant , 1990, UIST '90.

[23]  Mark Green,et al.  A survey of three dialogue models , 1986, TOGS.

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

[25]  Philip Miller,et al.  Transportable applications environment (TAE) plus experiences in “Object”-ively modernizing a user interface environment , 1988, OOPSLA '88.