Download as pdf or txt
Download as pdf or txt
You are on page 1of 3

AI technologies for user interfaces:

Knowledge-based front-ends

Maddy D. Brouwer-Janse

Introduction
The user interface to a computer system goes under a number of
names, human-computer interface, computer-human interface, man-
machine interface, or U1 for short. The U1 has no universally
agreed definition. For example, Foley (1982) defines the U1 as
all inputs from a user to the computer, all outputs from the
computer to a user, and the sequencing of such inputs and
outputs". A more descriptive definition is given by Szekely
(1988): "The functionality defines what the program can do, and
the user interface defines how users tell the program what to do,
and how the program tells users what it did". AI technologies
enhance the role of the U1 as the intermediary which bridges the
gap between humans and computers (Chignell & Hancock, 1988). The
function of this intermediary is to encode and translate
information which must be communicated between computer and
operator and vice-versa. Such intelligent interfaces and their
integration with related approaches to human-computer
interaction, including the areas of direct manipulation, natural
language interfaces, hypertext, and expert systems comprise the
use of AI technologies for user interfaces. This paper will
address a project in which these AI technologies are applied to
the development of knowledge-based front ends for existing
engineering software.
The FOCUS project
AI technologies are being used to enhance user interfaces of
existing engineering and scientific software in the ESPRIT I1
Project FOCUS - Front-Ends for Open and Closed User Systems. The
FOCUS project is a collaborative effort between industrial and
academic partners ( 5 6 man years, 4 year period). The project
partners are: NAG (project leader), Imperial College, LUTCHI,
METEK, Philips, Solvay, University of Barcelona, University of
Muenster.
The FOCUS project aims to develop generic toolkits which will
assist developers of knowledge-based front ends (KBFEs) in
different industrial environments in the construction of
customized end-user applications using existing software packages
and libraries. These software packages, for example, for CAD,
graphics, optimization, statistical analysis, simulation,
optimization, and libraries for numerical algorithms are widely
used in scientific and engineering applications. They represent
an enormous body of very complex and valuable knowledge that is
becoming increasingly difficult to access. Engineers and
scientists who use these systems have to cope simultaneously with
the intricacies of the software and with increasing complexity
in the application domains. In the meantime, the pressure for

Philips, CFT-Automation
reducing the product development times and the training time for
in-house specialists is increasing dramatically.
The users of these packages and libraries are continuouslY
involved in customizing in-house or commercially acquired
software for specialized applications in their domains. They
provide consulting services, as well as maintenance and support
for their customers. They require intelligent tools that assist
with the design, development, building and maintenance of
customized software for their own applications and for their
clients.
One of the major difficulties these end-users are facing is the
mapping of their domain task models on the underlying
mathematical models of the available software. Evaluation and
testing.forusability is hampered by these conceptual mismatches.
They are difficult to formalize and are in addition continuously
evolving, in the mathematical as well as in the engineering
domain. Furthermore, KBFEs, like all expert system applications,
induce different expectations of the systems by the users
(Wexelblat, 1989). Evaluation methods must be developed which can
be applied in industrial environments to provide continuous
feedback in all phases of the development process between at
least two classes of users, developers of KBFEs and application
end-users.
Developing knowledge-based front ends implies using tools and
techniques fromthe domains of AI, Expert Systemdevelopment, and
HCI (human computer interaction). Central to the project is the
development of a front-end architecture that is separate from the
application.
Front End Harness
The knowledge-based front end harness architecture is an
extension of the Seeheim model (Green, 1985). It consists Of a
presentation layer, a dialogue control layer and an application
interface layer. The application interface layer contains an
explicit application model to provide a clear and clean interface
between the front and back ends. In addition to the three user
interface layers, the KBFE also incorporates a number of
intelligent knowledge-based modules (KBMs) which provide the user
with guidance and assistance. The KBMs will vary depending on the
application and the user. The various modules can be distinct
software entities. They need not be physically located on the
same machine and can communicate over networks if necessary.
The presentation layer is the component responsible for the
management of the surface level human-computer interface. It is
to be built on top of the X-Window system and interprets a high
level Prolog description of the interface to produce interaction
objects on the display. Any X toolkit can be used, accommodating
whatever ‘look and feel’ is required. The dialogue control module
is central to the front end harness. It manages and coordinates
communicationbetween the other components and, at the same time,
controls the dialogue with the user. The knowledge-based modules
or in some instances, expert systems, incorporate knowledge about
the functionality of the application software as well as explicit

212
knowledge of the problem domain and of the environment in which
the system will be used. Typically, they will provide the user
with help on the use of the system, advice on the selection of
alternative facilities or approaches and explanation. They can
provide strategic as well as syntactic help. The application
interface model contains complete representations of the back-
end tasks. It coordinates between the dialogue state and back-
end tasks.
Methodological issues
Meeting user needs is the crucial objective of the FOCUS project.
Meeting user needs has two senses here. First, does the interface
provide all needed functions in a useful form? Second, does the
way by which the problem is solved match user expectations? End
users will not know what they need until they have used the
system for a while, and no amount of prior analysis will result
in a correct requirements document. The FOCUS project has adopted.
a user-centered approach. That is, prototypes are developed in
successive iterations. These iterations include evaluation by
intended end users and feedback to developers. This approach is
comparable to the methods that are being used in knowledge
engineering.

References
Chignell, M. H. & Hancock, P. A., (1988). Intelligent interface
design. In: M. Helander (Ed.), Handbook of Human-
Computer Interaction. Elsevier Science Publishers, B.
V. (North-Holland, 1988.
Foley, J. & van Dam, A., (1982). Fundamentals of interactive
computer graphics. Addison-Wesley Publ. Co., Reading,
MA., 1982.
Green, M., (1985). Report on dialogue specification tools. In G.
E. Pfaff (Ed.), User interface manaqement systems,
Springer Verlag, p.9-20.
Szekely, P., (1988). Separating the user interface from the
functionality of application programs. CMU-CS-88-101.
Carnegie-Mellon University.
Wexelblat, R. L. (1989). On interface requirements for expert
systems. AI Maaazine, Vol. 10, No.3, p. 66-78.

Acknowledgement
I would like to thank the ESPRIT 2 programme for supporting the
work described, all the partners in the FOCUS project, and
especially Ernest Edmonds for his contributions on the front end
architecture.

You might also like