Human-computer interface development: concepts and systems for its management

Human-computer interface management, from a computer science viewpoint, focuses on the process of developing quality human-computer interfaces, including their representation, design, implementation, execution, evaluation, and maintenance. This survey presents important concepts of interface management: dialogue independence, structural modeling, representation, interactive tools, rapid prototyping, development methodologies, and control structures. Dialogue independence is the keystone concept upon which all the other concepts depend. It is a characteristic that separates design of the interface from design of the computational component of an application system so that modifications in either tend not to cause changes in the other. The role of a dialogue developer, whose main purpose is to create quality interfaces, is a direct result of the dialogue independence concept. Structural models of the human-computer interface serve as frameworks for understanding the elements of interfaces and for guiding the dialogue developer in their construction. Representation of the human-computer interface is accomplished by a variety of notational schemes for describing the interface. Numerous kinds of interactive tools for human-computer interface development free the dialogue developer from much of the tedium of "coding" dialogue. The early ability to observe behavior of the interface—and indeed that of the whole application system—provided by rapid prototyping increases communication among system designers, implementers, evaluators, and end-users. Methodologies for interactive system development consider interface management to be an integral part of the overall development process and give emphasis to evaluation in the development life cycle. Finally, several types of control structures govern how sequencing among dialogue and computational components is designed and executed. Numerous systems for human-computer interface management are presented to illustrate these concepts.

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

[2]  Paul R. Hanau,et al.  Prototyping and simulation tools for user/computer dialogue design , 1980, SIGGRAPH '80.

[3]  Martin L. Kersten,et al.  Developing interactive information systems with the User Software Engineering methodology , 1986, IEEE Transactions on Software Engineering.

[4]  Wilfred J. Hansen User engineering principles for interactive systems , 1972, AFIPS '71 (Fall).

[5]  J. W. Roach,et al.  Formal specifications for modeling and developing human/computer interfaces , 1983, CHI '83.

[6]  Ian A. Clark Software Simulation as a Tool for Usable Product Design , 1981, IBM Syst. J..

[7]  Dan R. Olsen,et al.  Input/output linkage in a user interface management system , 1985, SIGGRAPH '85.

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

[9]  Ernest Edmonds,et al.  The man—computer interface: a note on concepts and design , 1982 .

[10]  R. Daniel Bergeron,et al.  Specifying complex dialogs in ALGAE , 1986, CHI '87.

[11]  Bernice E. Casey,et al.  Modelling and validating the man‐machine interface , 1982, Softw. Pract. Exp..

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

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

[14]  James D. Hollan,et al.  Direct Manipulation Interfaces , 1985, Hum. Comput. Interact..

[15]  William Buxton,et al.  Lexical and pragmatic considerations of input structures , 1983, COMG.

[16]  N. J. Fiddian,et al.  Adaptable user interfaces for portable, interactive computing software systems , 1981, CHI '81.

[17]  James L. Alty,et al.  Computing Skills and the User Interface , 1981 .

[18]  Jon A . Meads The Standards Pipeline , 1986, COMG.

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

[20]  Mary Beth Rosson,et al.  Usability Specifications as Tool in Iterative Development. , 1984 .

[21]  Mark Green,et al.  The University of Alberta user interface management system , 1985, SIGGRAPH.

[22]  Thomas P. Moran,et al.  The Command Language Grammar: A Representation for the User Interface of Interactive Computer Systems , 1981, Int. J. Man Mach. Stud..

[23]  Jakob Nielsen Interact '87 , 1988, SGCH.

[24]  H. Rex Hartson,et al.  A STRUCTURAL MODEL FOR HIERARCHICALLY DESCRIBING HUMAN-COMPUTER DIALOGUE , 1987 .

[25]  Donald A. Norman,et al.  User Centered System Design , 1986 .

[26]  Infotech,et al.  Structured analysis and design , 1978 .

[27]  Joëlle Coutaz Abstractions for user interface design , 1985, Computer.

[28]  Wendell Bell,et al.  The Third Wave. , 1982 .

[29]  Andrew J. Schulert,et al.  ADM — a dialog manager , 1985, CHI '85.

[30]  Deborah H. Johnson The structure and development of human-computer interfaces , 1985 .

[31]  H. R. Hartson,et al.  An interactive environment for dialogue development: its design, use and evaluation; or, is aide useful? , 1986, CHI '86.

[32]  Eric Harslem,et al.  Designing the STAR User Interface , 1987, ECICS.

[33]  Leonard J. Bass,et al.  A generalized user interface for applications programs , 1981, CACM.

[34]  William A. Woods,et al.  Computational Linguistics Transition Network Grammars for Natural Language Analysis , 2022 .

[35]  H. T. Smith,et al.  Human Interaction with Computers , 1980, IEEE Transactions on Systems, Man, and Cybernetics.

[36]  Michael B. Feldman,et al.  Graphics programming independent of interaction techniques and styles , 1983, COMG.

[37]  Victor Weinberg,et al.  Structured Analysis , 1978 .

[38]  Ernst Denert Specification and Design of Dialogue Systems with State Diagrams , 1977, International Computing Symposium.

[39]  Kate Ehrlich,et al.  Factors influencing technology transfer , 1985, SGCH.

[40]  Phyllis Reisner Analytic tools for human factors of software , 1983, Enduser Systems and Their Human Factors.

[41]  Peter G. Polson,et al.  A generalized transition network representation for interactive systems , 1983, CHI '83.

[42]  R. Hartson,et al.  User-interface management control and communication , 1989, IEEE Software.

[43]  Glenford J. Myers,et al.  Composite Structure Design , 1978 .

[44]  D. P. Browne,et al.  The formal specification of adaptive user interfaces using command language grammar , 1986, CHI '86.

[45]  Maryam Alavi,et al.  An assessment of the prototyping approach to information systems development , 1984, CACM.

[46]  Victor Rosenberg,et al.  The Scientific Premises of Information Science. , 1974 .

[47]  Stefan Britts,et al.  Dialog management in interactive systems: a comparative survey , 1987, SGCH.

[48]  Garry A. Helander Improving System Usability for Business Professionals , 1981, IBM Syst. J..

[49]  K A Lantz,et al.  Reference models, window systems, and concurrency , 1987, COMG.

[50]  Stephen P. Guest,et al.  The use of software tools for dialogue design , 1982 .

[51]  Michael Jackson,et al.  Principles of program design , 1975 .

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

[53]  James R. Rhyne,et al.  A context for user interface management , 1984, IEEE Computer Graphics and Applications.

[54]  Anthony I. Wasserman,et al.  The role of prototypes in the User Software Engineering (USE) methodology , 1990 .

[55]  B. A. Myers,et al.  Visual programming, programming by example, and program visualization: a taxonomy , 1986, CHI '86.

[56]  J. D. Foley,et al.  The art of natural graphic man-machine conversation , 1974, SIGGRAPH 1974.

[57]  Anthony I. Wasserman,et al.  Extending State Transition Diagrams for the Specification of Human–Computer Interaction , 1985, IEEE Transactions on Software Engineering.

[58]  David R. Cheriton Man-machine interface design for timesharing systems , 1976, ACM '76.

[59]  Phyllis Reisner,et al.  Formal grammar as a tool for analyzing ease of use , 1984 .

[60]  Anthony I. Wasserman,et al.  The design of 'idiot-proof' interactive programs , 1973, AFIPS National Computer Conference.

[61]  Marilyn. Mantei Techniques for incorporating human factors in the software lifecycle , 1986 .

[62]  Gwendolyn G. Hays Computer-Aided Design: Simulation of Digital Design Logic , 1969, IEEE Transactions on Computers.

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

[64]  Anthony I. Wasserman,et al.  User Software Engineering and the design of interactive systems , 1981, ICSE '81.

[65]  Raj Reddy,et al.  Steps Toward Graceful Interaction in Spoken and Written Man-Machine Communication , 1983, Int. J. Man Mach. Stud..

[66]  John L. Bennett,et al.  Visual display terminals: Usability issues and health concerns , 1984 .

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

[68]  Robert F. Sproull,et al.  Principles in interactive computer graphics , 1973 .

[69]  Mark Green A methodology for the specification of graphical user interface , 1981, SIGGRAPH '81.

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

[71]  Sidney L. Smith,et al.  Guidelines for Designing User Interface Software , 1986 .

[72]  Anthony I. Wasserman Information system design methodology , 1980, J. Am. Soc. Inf. Sci..

[73]  David R. Lenorovitz,et al.  A Dialogue Simulation Tool for Use in the Design of Interactive Computer Systems , 1977 .

[74]  ten Hagen,et al.  Dialogue Cells: A Method for Defining Interactions , 1982, IEEE Computer Graphics and Applications.

[75]  Robert F. Sproull,et al.  Principles of interactive computer graphics (2nd ed.) , 1979 .

[76]  Allen Newell,et al.  The psychology of human-computer interaction , 1983 .

[77]  Dan R. Olsen,et al.  SYNGRAPH: A graphical user interface generator , 1983, SIGGRAPH.

[78]  Nan C. Shu,et al.  Visual Programming: Perspectives and Approaches , 1989, IBM Syst. J..

[79]  Melvin E. Conway,et al.  Design of a separable transition-diagram compiler , 1963, CACM.

[80]  Glenford J Myers,et al.  Reliable software through composite design , 1975 .

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

[82]  Izak Benbasat,et al.  A Structured Approach to Designing Human-Computer Dialogues , 1984, Int. J. Man Mach. Stud..

[83]  William M. Newman,et al.  A system for interactive graphical programming , 1968, AFIPS Spring Joint Computing Conference.

[84]  John C. Thomas,et al.  Human factors in computer systems , 1984 .

[85]  Philip J. Hayes,et al.  Executable interface definitions using form-based interface abstractions , 1984 .

[86]  Jakob Nielsen Book review: Designing the User Interface: Strategies for Effective Human-Computer Interaction by Ben Shneiderman (Addison-Wesley, 1987) , 1987, SGCH.

[87]  Barry W. Boehm,et al.  Prototyping vs. specifying: A multi-project experiment , 1984, ICSE '84.

[88]  James Martin,et al.  Design of Man-Computer Dialogues , 1990 .

[89]  G Fischer An object-oriented construction and tool kit for human-computer communication , 1987, COMG.

[90]  John L. Sibert,et al.  Design and implementation of an object-oriented user interface management system , 1988 .

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

[92]  David J. Kasik An architecture for graphics application development , 1985, Proceedings. 1985 IEEE International Conference on Robotics and Automation.

[93]  Dan R. Olsen,et al.  Pushdown automata for user interface management , 1984, TOGS.

[94]  Raj Reddy,et al.  Breaking the Man-Machine Communication Barrier , 1981, Computer.

[95]  James D. Foley,et al.  The art of natural graphic man—Machine conversation , 1974 .

[96]  Richard A. Guedj Methodology of interaction : Seillac II , 1980 .

[97]  Friedrich L. Bauer,et al.  Revised report on the algorithm language ALGOL 60 , 1963, CACM.

[98]  Paul R. Hanau,et al.  A Prototyping and Simulation Approach to Interactive Computer System Design , 1980, 17th Design Automation Conference.

[99]  Hassan Gomaa,et al.  Prototyping as a tool in the specification of user requirements , 1981, ICSE '81.

[100]  Ben Shneiderman,et al.  Software psychology: Human factors in computer and information systems (Winthrop computer systems series) , 1980 .

[101]  David Robson,et al.  Smalltalk-80: The Language and Its Implementation , 1983 .

[102]  Brad J. Cox,et al.  Object-oriented programming ; an evolutionary approach , 1986 .

[103]  Mark Green Proceedings of the 1st annual ACM SIGGRAPH symposium on User Interface Software , 1988 .

[104]  Deborah Hix Johnson The structure and development of human-computer interfaces (dialogue management) , 1985 .

[105]  Peter C. S. Wong,et al.  FLAIR - user interface dialog design tool , 1982, SIGGRAPH.

[106]  H. Rex Hartson,et al.  Toward Empirically Derived Methodologies and Tools for Human-Computer Interface Development , 1989, Int. J. Man Mach. Stud..

[107]  Ralph D. Hill,et al.  Event-response systems: a technique for specifying multi-threaded dialogues , 1986, CHI '87.

[108]  David L. Parnas,et al.  On the use of transition diagrams in the design of a user interface for an interactive computer system , 1969, ACM '69.

[109]  Phyllis Reisner,et al.  Further developments toward using formal grammar as a design tool , 1982, CHI '82.

[110]  Donald A. Norman,et al.  Software Engineering for User Interfaces , 1984, IEEE Transactions on Software Engineering.

[111]  J. E. Sammet,et al.  Software psychology: human factors in computer and information systems , 1983, SGCH.

[112]  Donald A. Norman,et al.  Four stages of user activities , 1984 .

[113]  Dennis Wixon,et al.  Building a user-defined interface , 1983, CHI '83.

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

[115]  Jim Diederich,et al.  Experimental Prototyping in Smalltalk , 1987, IEEE Software.

[116]  Norman I. Badler,et al.  GUIDE: Graphical User Interfaced Development Environment , 1985 .

[117]  John Roach,et al.  DMS: A comprehensive system for managing human-computer dialogue , 1982, CHI '82.

[118]  H. Rex Hartson Digital control simulation system , 1969, DAC '69.

[119]  Gerhard Fischer Symbiotic, knowledge-based computer support systems , 1983, Autom..

[120]  Douglas T. Ross,et al.  Structured Analysis for Requirements Definition , 1977, IEEE Transactions on Software Engineering.

[121]  Peter P. Tanner,et al.  A multitasking switchboard approach to user interface management , 1986, SIGGRAPH.

[122]  B. Myers Creating dynamic interaction techniques by demonstration , 1987, CHI '87.

[123]  Glenford J. Myers,et al.  Composite/structured design , 1978 .

[124]  C Rose,et al.  Inside Macintosh , 1985 .

[125]  Victor Rosenberg,et al.  Opinion paper. The scientific premises of information science , 1974, J. Am. Soc. Inf. Sci..

[126]  Barry W. Boehm,et al.  Seven basic principles of software engineering , 1983, J. Syst. Softw..

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

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

[129]  Barry Dwyer A user-friendly algorithm , 1981, CACM.

[130]  共立出版株式会社 コンピュータ・サイエンス : ACM computing surveys , 1978 .

[131]  Meg E. Maurer Full-Screen Testing of Interactive Applications , 1983, IBM Syst. J..

[132]  Michael B. Feldman,et al.  Toward the design and development of style-independent interactive systems , 1982, CHI '82.

[133]  T.S. Perry 'PostScript' prints anything: a case history , 1988, IEEE Spectrum.

[134]  Michael J. Coombs,et al.  Designing for Human-Computer Communication , 1983 .

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

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

[137]  G. Fischer,et al.  The enhancement of understanding through visual representations , 1986, CHI '86.

[138]  Pavel Kaiser,et al.  A dialogue generator , 1982, Softw. Pract. Exp..

[139]  Ben Shneiderman,et al.  Multiparty Grammars and Related Features for Defining Interactive Systems , 1982, IEEE Transactions on Systems, Man, and Cybernetics.

[140]  R FeeneyWilliam,et al.  Adaptive man/computer interfaces , 1977 .

[141]  Pedro A. Szekely,et al.  Design alternatives for user interface management sytems based on experience with COUSIN , 1985, CHI '85.

[142]  T. C. S. Kennedy,et al.  The Design of Interactive Procedures for Man-Machine Communication , 1974, Int. J. Man Mach. Stud..

[143]  Barry W. Brown,et al.  A Processor For Providing Friendly Environments For Frequently Used Application Packages , 1978, ACM Annual Conference.

[144]  Pedro A. Szekely,et al.  Graceful Interaction Through the COUSIN Command Interface , 1983, Int. J. Man Mach. Stud..

[145]  Ben Shneiderman,et al.  Designing the User Interface: Strategies for Effective Human-Computer Interaction , 1998 .

[146]  Tamer Yunten Supervisory methodology and notation (SUPERMAN) for human-computer system development , 1985 .

[147]  David J. Kasik,et al.  A user interface management system , 1982, SIGGRAPH.

[148]  John McCarthy,et al.  Recursive functions of symbolic expressions and their computation by machine, Part I , 1959, Commun. ACM.

[149]  Joe Gallacher Structured analysis and design: Infotech state of the art report, Infotech International, Maidenhead, Berks, UK (1978) Volume 1: 273pp, Volume 2: 373pp, £120 ($225) , 1978, Microprocess..

[150]  James L. Black A general purpose dialogue processor , 1977, AFIPS '77.

[151]  Dan R. Olsen Automatic generation of interactive systems , 1983, COMG.

[152]  Lawrence A. Rowe,et al.  Programming Language Constructs for Screen Definition , 1983, IEEE Transactions on Software Engineering.

[153]  Dennis R. Wixon,et al.  Building a user-derived interface , 1984, CACM.