Interacting with software system components

An ideal user interface is a crucial factor to support the functionality of software systems for computerized decision making process. A recent trend has been to develop intelligent and flexible user interface on the top of software systems. However, as noted by Woods, a technology driven approach to the development of intelligent interfaces is likely to provide the illusion of assistance while creating a new layer of burdens and complexities. To avoid creating an ever thickening layer of user interface, we have explored an approach which incorporates user interface into software system components design. In this article we point out that existing approaches in related work can be systematically expanded to form an alternative paradigm for interface design. In particular, we discuss a concept called user interface wrapper for software components. Due to the importance and popularity of expert systems, our discussion is mainly around interface design of expert systems, although the basic idea can be extended to designing other software systems as well. According to this approach, each major component of an expert system (including the knowledge base, the inference engine and the explanation unit) is wrapped by a layer of user interface. A case study is provided, in which the user interface wrappers are implemented as windows of system components. A discussion on pros and cons of this approach is provided.

[1]  Dianne C. Berry,et al.  User interface standards for expert systems: Are they appropriate? , 1991 .

[2]  Richard L. Wexelblat,et al.  On Interface Requirements for Expert Systems , 1989, AI Mag..

[3]  James A. Hendler,et al.  Expert systems: the user interface , 1987 .

[4]  Christoph G. Thomas Design, implementation and evaluation of an adaptive user interface , 1993, Knowl. Based Syst..

[5]  Jonas Löwgren The Ignatius Environment: Supporting the Design and Development of Expert-System User Interfaces , 1992, IEEE Expert.

[6]  Dianne C. Berry,et al.  Expert systems human issues , 1990 .

[7]  Daniel G. Bobrow,et al.  Dimensions of interaction: a shift of perspective in artificial intelligence , 1991 .

[8]  Bruce I. Blum,et al.  Software engineering - a holistic view , 1992 .

[9]  David D. Woods,et al.  The price of flexibility , 1993, IUI '93.

[10]  Dianne C. Berry,et al.  Involving users in expert system development , 1994 .

[11]  James A. Hendler,et al.  Introduction: designing interfaces for expert systems , 1987 .

[12]  William Frawley,et al.  Knowledge Discovery in Databases , 1991 .

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

[14]  Noi Sukaviriya,et al.  From user interface design to the support of intelligent and adaptive interfaces: an overhaul of user interface software infrastracture , 1993, Knowl. Based Syst..

[15]  M Stelzner,et al.  The evolution of interface requirements for expert systems , 1987 .

[16]  Ben Shneiderman,et al.  Designing the user interface (2nd ed.): strategies for effective human-computer interaction , 1992 .

[17]  B. I. Blum On the development of hardware and software , 1993 .

[18]  B. W. Hamill,et al.  Psychological Issues in the Design of Expert Systems , 1984 .

[19]  Daniel E. O'Leary,et al.  Knowledge Discovery as a Threat to Database Security , 1991, Knowledge Discovery in Databases.

[20]  Nicholas M. Avouris,et al.  User interface design to expert systems based on hierarchical spatial representations , 1993 .