Software28 (1997) 31-41
0 1997 Elsevier Science Limited
Printed in Great Britain. All rights reserved
Advances in Engineering
PIl:SO965-9978(96)00030-O
ELSEVIER
0965-9978/97/$17.00
Knowledge-based expert systems: user interface
implications
A. Berrais
Abha College of Technology, POB 238, Saudi Arabia
(Received for publication 24 July 1996)
A good user interface is a necessity for the successof knowledge-based expert
systems.Issues such as user requirements, user model and system model have been
given insufficient attention in the development of the majority of many such
systems, particularly those for design applications. This paper discusses the
requirements, the benefits and the problems of building user interfaces for
knowledge-based expert systems.The notions of a user model and system model
are discussed and their impact on the successof user interfaces considered. The
paper concludes with a description of the user interface developed for a
knowledge-based design tool for preliminary seismicdesign of reinforced concrete
buildings. 0 1997 Elsevier Science Limited. All rights reserved.
Key words: knowledge-based expert system, user interface, user model, system
model, user requirements.
tools, the hardware environment and the intended
function of the KBES.
The majority of prototype KBESs for civil engineering applications reviewed in recent papers,lP5 particu-
1 INTRODUCTI’ON
The user interfac,e stands between the user and the
application program, and facilitates the communication
and interaction between the two. It can be considered as
larly those relating to design applications, do not include
the channel in which the user can interact with the
internal processesof the application program (and vice
versa). The user :mterface may be considered at three
levels:
reference to a user model or tackle the problem of user
requirements in detail. Indeed, in many cases the
(1) semantic: internal granulity
intended users of the system are often not adequately
defined and considered.
Development of the user interface should take into
account the global needs of users and the tasks the
and inter-relation-
ships of the system’s functions
(2) conceptual:
structure
of individual
system is intended to support. Thus, an understanding
interactions
and analysis of user requirements will facilitate design of
the user interface. In this context the term user interface
embracesfar more than simply the visual appearance of
the screen. The success of the user interface depends
largely on the completeness of the user model.
This paper addressessome of the issuesof establishing
user requirements and the problems faced when implementing these requirements within a KBES. It does not
go deeply into the theory of cognitive psychology (the
study of how to emulate or model the human thinking
process when solving problems). The concepts, the
with the system
the operation of input and output
commands.
(3) syntactic:
As conventional computer-aided design (CAD) systems
have become larger and more complex, the need for an
appropriate and effective user interface has become
more critical. At the same time the expectation of users
has been raised by widespread exposure to windowsbased applications software. The requirements for an
intuitive
and easily mastered user interface is equally
applicable to knowledge-based expert system (KBESs)
and must be taken into account early in the development process. The design of the user interface is
influenced by many factors, amongst these the cognitive
model of the ufser’s thought processes, aspects of
usability, the type and capabilities of the programming
requirements and the theoretical definitions of user
model and system model are presented, and an attempt is
made to implement some user requirements with
reference to a knowledge-based design tool called
SDA,6 developed by the author for preliminary seismic
design of reinforced concrete buildings.
31
32
A. Berrais
2 USER REQUIREMENTS
Before attempting to establish the user model, the
anticipated users of the system must first be defined.
To what extent is the user himself knowledgeable about
the task domain? When the user is defined, the
requirements of user and system can more easily be
established. User requirements should take into account
the following:7 type of users, the tasks performed and
the social and dynamic environment in which they
interact with the system. This will lead us to identify
what system requirements are: what are the areas of the
task in which the user is supported (diagnosis, planning,
design, etc.) and what are the limitations of the system.
User requirements can be extracted from an analysis
of the tasks the system is intended to support, user
characteristics and characteristics of the information
and its use. In order to have compatibility between the
user’s understanding of the system and his skill of
knowledge, the design of the user interface should take
into account the following:8 (i) classify the user in terms
of his level of skill or knowledge, (ii) analyse the
functionality of user tasks, their important procedural
characteristics and (iii) the type of information use.
It has been suggestedthat it is a good idea to separate
between the semantics of the system application and the
user interface.g This separation will lead to the following
benefits:
(1) portability: to allow the same application to be
used on different systems
(2) reusability: increase the likelihood that component can be reused in order to cut development
costs
(3) customization: the user interface can be customized by both the designer and the user to
increase its effectiveness without having to alter
the underlying applications.
A proposed user interface model is illustrated in Fig.
1. As shown in this figure, both the user requirements
User-Interface
User Modelling Module
Fig. 1. User interface model.
Application
and system requirements are taken into account which
in turn affect the user model and systemmodel during the
process of developing the user interface.
3 USER MODEL
The development of a user model is a difficult task which
requires information about the specific users and the
responses to their reaction with the system. User
modelling can help match the facilities that a system
provides to the needs of the user, improve user learning,
guide design decisions and make design choices and
assumptions explicit. A user model is required by a
KBES to help to identify what needs to be explained,
determine the depth and complexity of the explanation,
and establish the knowledge necessaryto assist the user
in achieving his goals and understanding the solution.
Sparck Jones” seesthree advantages in the inclusion
of user models in KBESs:
(1) Acceptability: the form in which information is
elicited and explanations given need to be tailored
to the intended user, be they novice or expert
(2) eficiency: the most efficient mode of system-user
interaction will usually vary according to the
user’s level of skill
(3) effectiveness: more effective task performance
through more accurate interpretation of user
behaviour and by making the system’s requirements more comprehensible to a particular user.
Slatter” argues that a good match between the
computer system and the user is vital for several reasons:
(1) without this cognitive compatibility, the system’s
behaviour can appear surprising and unnatural to
the user
(2) to counter the potential dehumanizing intluence
of expert system technology (through ensuring the
knowledge and reasoning of the system are
understandable to the user, user-controlled dialogues, etc.)
(3) to ensure the system will be acceptable within its
intended social and organizational context of use.
Different artificial intelligence researchers use different definitions of a user mode1,8’12-17
and thus they
disagree on how to create the user model. Several user
models have been proposed in the field of humancomputer interaction.12 However, these user models deal
more generally with user’s interactions with interactive
computer systems and are more concerned with the
cognitive modelling of the user rather than the interaction of the user with the application domain embedded
within the computer. Examples of user models that have
been proposed include: conceptual and quantitative
models.13 Conceptual models are mainly concerned
with representing human cognitive processes and the
Knowledge-based expert systems
strategies involved in human computer interactions.
Quantitative models are concerned with the interaction
of the user with the computer and how to improve this
interaction (independent of application domain).
In the user model, some aspects of the user’s understanding, knowledge and processing are modelled.
Majchrzak et a1.18 divided cognitive models into three
categories. The first described the user’s task and goal
structures. The second category is concerned with
linguistic and grammatical models which emphasized
the user’s understa.nding of the user-system interaction.
The third category was based on the more solid
understanding of the human motor system.
The user model can represent a certain aspect of the
user which is implicit within the system and used to
adapt the system to suit the user. It seemsdifficult to
have a unified user model which embodies all the user
requirements (becausenot all the users, even in the same
field, think or process information in the same mode or
have the same level of skill).
In this paper we define the user model as being the
model of a typical user which resides in the KBES. This
user model may encompassthe following characteristics:
user understanding and expertise of the application
domain, user acceptability and user confidence. The
building of a specific user model depends on the system
designer’s understanding of these factors. This user
model can be considered as a static model. A static
model may represent a specific user and can then be
updated to the changes occurred with the user.
4 SYSTEM
MODEL
The system model, in contrast, is the model of the
computer system its seen by the user. The system model
structures the interaction of the user with the system.
The user may (or may not) have a model, which may
be incomplete, of the system (structure, functionality
and interaction of the system). This model may differ
from a novice user to an expert user. This difference
poses different problems for the designer of the user
interface.
The system model may be considered as a conceptual
model which represents the system, and in which the
system developer might wish to represent to the user
(system model is different from the mental model as seen
by the user). In other words system model is external and
explicit, whereas mental model cannot be directly
expressed. Browne et aLI9 described a conceptual
model as a model invented by a system developer,
while a mental model is a naturally evolving internal
representation of a system.
While interacting with the computer, a user progressively builds an internal model of the system. This model
is a representation of how the system works. It has been
suggested that users construct such a cognitive model
through a process of anchoring and adjustment.20
Generally, users create an initial system model based
on their understanding of the system, and they adjust
this model on the basis of interactive experiences that
are not consistent with their current model. More
detailed information about adjustment of the cognitive
behaviour of users during interaction with computer
systemsis given by Lehner’ and Kralj.20
The system model is likely to be characterized by ease
of use, capabilities, friendliness, complexity and speed.
The success of the user interface to explain internal
system actions and reasoning processesto the user will
be reflected in the system model. The system model may
also reflect the task domain of the KBES which may
affect the way in which the user interacts with the
system.
One method to help users to form their own model of
the system is to use metaphorsI that explain the
working of the system. Metaphors help in the learning
process, they provide short cuts to understand complex
concepts; they can be used to shape the user’s behaviour
1 howfriendlv
compl.exity
@
reasoningprocess
33
I-&
Fig. 2. Relation between the user and the computer system via the user interface.
34
A. Berrais
in situations that are unfamiliar. Figure 2 shows the
relationships between the user, computer system, user
model and system model, via the user interface, and how
the design of a good user interface should take into
account both these two models. It is crucial that the user
model and the system model match, becausethis will lead
to a better user interface and will increase user
acceptability and adaptability. If, however, the user
model and the system model do not align then the user’s
performance can rapidly deteriorate.
5 KNOWLEDGE ACQUISITION
MODEL
FOR USER
Much research has been done on the process of
emulating human expert cognition but little on the
emulation of the user’s cognitive task.” Since the user
requirements are to be considered as a factor in
developing KBESs, it is advisable that some acquisition
about the user’s knowledge be performed in a similar
way to the acquisition of domain knowledge from a
human expert. Kidd2’ argues that the user is an active
agent in the problem-solving process and he recommends that knowledge acquisition about the user’s
knowledge should include the following:
(1) Identifying the different classesof users likely to
use the system and their needs.
(2) Analysing user requirements: what are the
common classesof problems and question, what
advice does the user require and in what form (e.g.
does he usually have his own idea of a solution
and only require a critique from the KBES, or
does he need to have a set of alternative
solutions?) and what type of justification does he
require.
(3) Analysing what type of knowledge the user brings
to bear on the problem-solving process. Recent
research indicates that these include the user’s
goals within the domain, his constraints on
acceptable solutions (e.g. time, availability, cost,
etc.), his own model of the type of problems that
the system can solve for him.
The acquisition of user requirements is a difficult
process and many methods have been developed with
varying approaches.7 The most widely used method
is the contextual inquiry technique.** In this technique,
the user is observed interacting with the system, and
asked some specific questions, then the analysis is
carried out.
Stelzner & Williams23 suggestedthat the roles of the
user and the system must complement and supplement
each other. When subjective decisions are to be taken it
is important that the user remains in control and the
system acts as an experiment consultant. For objective
decisions, the system should provide more control of the
process, freeing the user from unnecessary errors. They
also identified five major requirements for the user
interfaces to KBESs:
(1) The user interface should represent the domain in
the user’s natural idiom (the way of expressing
things in a person’s way of understanding).
(2) The user interface should provide immediate
feedback to the user on the effect of changes to
system state by explicitly maintaining and displaying complex constraints and inter-relationships.
(3) The user must be able to recover easily from
trying different alternatives.
(4) The user interface must support the user at
different granularities or level of abstractions.
(5) User interface must be implemented in such a way
that it is possible to have multiple interfaces to the
same knowledge.
Figure 3 shows a simplified model of how user
requirements can be applied to the KBES development
cycle.29The decision cycle is based on the prototyping
approach, which can allow the evaluation of the system
in an iterative manner. User requirements can be
obtained by structured interviewing and observations
of the user during interaction with the system. These
user requirements can help tailoring of the initial user
interface specifications to the cognitive and behaviour
characteristics of the user, and the range of the decisions
to be taken by the user.
Re-specify
l
User, Systemand
InterfaceSpecification
* Interfacedesign
* User & systemmodelling
* Task modelling
l
User testing
Fig. 3. User requirementspecificationfor KBES designcycle.29
35
Knowledge-based expert systems
Based on the type of design problem performed, the
user interface can be hierarchically organized as a set of
design modules (*agents) where each module accomplishes a portion of the design at a certain level of
abstraction. The upper levels of the hierarchy are
modules in the general aspects of the design problem,
while the lower levels deal with more specific decisions.
In the next secticm, the implementation and development of the user interface for the SDA system is
described and disc:ussedin detail.
6 KBES IN CIVLL ENGINEERING
Many KBESs have been developed to assist civil
engineers in various tasks.1-4,24None of the KBES
prototypes published in the literature has tackled or
discussedthe problem of the user interface from the user
model point of v&w. They were also restricted on the
external appearance and form of the user interface at the
surface level. This lack of research and investigation of
the user interface ‘basedon user model and system model
is due mainly to the shortage of established practical
information, from the artificial intelligence field, on user
models and system models.
As the domain tasks for KBES application differ, the
requirements for building user interfaces and user models
differ also. Even though it is possible to build a common
user model for different type of domain tasks. The user
model could be taken into account by collecting information about the user of the system; this information could
be presented as the user’s expertise and knowledge about
the task domain and computer manipulation. In addition,
different domain tasks may require different requirements
for human-machine interaction. For example, to construct user group taxonomies, for which for each user
group different explanations can be defined, both for the
domain and the problem-solving knowledge.
7 SDA SYSTEM
The SDA6 system is a knowledge-based design tool to
assist structural engineers in the analysis and design of
reinforced concrete (RC) buildings, mainly coupled-shear
walls, subjected to earthquake forces. SDA plays two
roles: the role of a design assistant in which the user is
helped to design RC building subjected to seismic forces,
and the role of an intelligent front-end processor for
external finite element analysis programs. Figure 4
provides a macro level schematic view of the architecture
of SDA. This architecture has six main components:
(1) knowledge base: comprises of sevenmain modules
as shown in Fig. 4, each module being responsible
for a specific task
(2) context: contains the collection of facts which
represent the current state of the problem at hand
(3) inference mechanism: controls the system by
modifying and updating the context
(4) explanation facility: provides the user with the
necessary explanation about the task being
performed
(5) external analysis programs: contain the finite
element analysis programs
(6) user interface: facilitates communication between
the user and the modules of the system. The user
interface is described in more detail in the next
section.
Unix
Pipes
C
Use
Fig. 4. Architectureof the SDA system
I_
Short
Term
Memory
36
A. Berrais
8 SDA USER INTERFACE
The aim of this section is not to develop a model for the
user’s cognitive tasks, but to implement and validate
some of the user requirements discussedpreviously. The
development, architecture and characteristics of the user
interface are also described. In the SDA system the user
interface is separated from the application domain. This
distinction is very important in many aspects of
development, allowing the system developer to present
different, independent interfaces to the same application. It also permits different representations of the same
data to be displayed simultaneously. The knowledge and
inference mechanism which drive the SDA user interface
are independent of the domain knowledge of SDA. The
user interface is driven using Quintec-Prolog25126
clauses,
and Quintec-Flex27 specification language (KSL). The
hardware used is a SPARCstation under the UNIX
operating system. The control strategy is backwardchaining and forward-chaining. The user interface can
be customized to increase its effectiveness without
having to alter the underlying application. In fact, the
knowledge and control strategy which drive the SDA
user interface can be customized and ported for other
types of systems that use Quintet-Prolog and QuintecFlex as a programming environment.
It has to be recognized that the type and capabilities
of the programming environment used is a major factor
which affected the successof the implementation of the
user requirements, and restricted the implementation of
an ‘intelligent’ user interface. This was mainly due to the
lack of learning capabilities (the system cannot learn
from the user’s errors, and cannot modify its knowledge
to update the information concerning a particular user).
This problem can be alleviated, for example, by using
machine learning techniques.
The system in question is a design tool to assist in
preliminary seismic design of RC buildings and the type
of users who can use SDA are classified into two types: a
structural engineer, who is knowledgeable about the
wider perspective of structural engineering, but without
in-depth knowledge of seismic design aspects; and a
structural engineer with expertise of seismic design
aspects, but little knowledge of computer applications.
The first type of user needs some assistance and advice
on how to analyse and design RC buildings to resist
seismic forces. With this type of user, the system will
initiate the dialogue. The second type of user is helped to
carry out the seismic design in an efficient way with a
critique and justification from the SDA system. In this
case, the user takes the initiative and controls the
interaction in a flexible manner to suit the user’s needs.
In both cases,the user has an idea of the model of the
type of problem that the system can solve.
The knowledge about the two types of user was coded
using Quintet-Flex production rules. This included
building a help module, which determines when the
user is making errors and offers advice on how to
perform commands. The help module contains information, which is conveyed to the user, about how to use
and communicate with the SDA system. In addition, the
help module contains meta-level reasoning in the
context of explanation (e.g. why certain inferences had
been drawn in preference to others). The user interface
provides some intelligent assistance with the seismic
design problem. Production rules have also been used to
model the interaction between the user and the system,
and to set the menu display according to the user’s
wishes. The user errors were identified and classified into
two categories: computing errors and task errors.
Computing errors are concerned with systemcommands
and functions, whereas task errors are concerned with
seismic design methods. The user errors were specified in
terms of Quintet-Flex production rules.
Since the type of user is defined and the task concisely
described, the user model can be considered as a static
model** in which the system interaction is based around
that model. In this model the user and the system are
required to work as a partnership; the interaction is
initiated by both parties. This is called Mixed Initiative
Mode and this can be fulfilled by the combination of a
wide range of system options coupled with natural
language. The user model is conveyed to the user
through the SDA display representation, which directs
the user to interact with the system in a certain desired
way. The user must form a mental model of the task
which is as close to the user model as possible. It has to
be recognized that the static model used in the SDA
does not change.
The user interface within SDA incorporated the
following types of knowledge: (i) knowledge about
seismic design methods and terminology; (ii) knowledge
about the system operations being used; (iii) knowledge
about the different tasks the user might want to carry
out (static and dynamic analysis and design); (iv)
knowledge about the user such as: his level of understanding and expertise, and his preferred method of
interaction. Knowledge about the user was obtained by
carrying out structured interviews with different types of
user during interaction with the system. In a real
interaction, the user will call upon a secondary source
of knowledge in order to infer the required knowledge
which is lacking.
The following requirements were investigated and
implemented within the SDA system:
8.1 General requirements
(1) the system is easy to use, takes the initiative and
questions the user
(2) inform the user about the limitations of the
system
(3) allow the user to invoke the system at any level of
abstract
Knowledge-based expert systems
(4) informs the user about the next step to be taken in
the design process
(5) gives brief help for each task required by the
user
(6) warns the user about any unpredictable actions.
the exchange of information and manipulation of data
to serve user’s intent. These layers are:
0) Conceptualization: this layer takes into account
8.2 Specific task domain requirements
Other more specific task requirements arise from a
consideration of tthe engineering aspects of the system
domain:
(1) provides the user with better understanding of the
actual seismic behaviour of RC buildings
(2) provides the user with a clear distinction between
elastic and inelastic analyses of a building
(3) explanation of the different mathematical models
used for the structural analysis
(4) the use of passive and active graphics to integrate
the seismic {designprocess, from conceptual design
to the final structural design.
The general requirements help to guide the user
actions and behaviours, and helped to implement some
of the uSer mode! characteristics, so that the user will
have a close mental model of the system (usability). The
user is given the means by which to exert direct control
over the course of the interaction with the system, and to
interrupt the iteration at various levels. The components
of the user interface as implemented are illustrated in
Fig. 5, different types of interface were used as
appropriate. The: design of the SDA user interface
followed the methodology suggested by Gregory,”
which consists of using several layers, interrelated in
function, which present an effective and enjoyable
interface to the system application. These layers allow
37
(53
(3)
(4)
(5)
the user needs based on experience. This layer is
critical to designing the other layers in order to
minimize the differences between the user’s concepts and the system implementation.
Hardware for interaction: this layer presents the
physical presentation of the information and
translates the physical gestures of the user into
information usable to the system. This will affect
the user’s mental model of the system.
Window management: this layer is represented by
the visible active windows of the interface (see
Fig. 6). This layer controls the size, shape and
number of windows, which are determined by the
amount and nature of information to be
exchanged.
Presentation management: this layer controls the
contents of the windows as well as their interactions. This layer determines the location, format
and form of output. In addition, the information
from the user is interpreted and transformed as
the input for the application. Menus, diagrams
and other interaction elements are selectedby this
layer to be displayed by the window layer.
Application: this layer is responsible for the
application data transformations which include
manipulation data from the user, and preparing
data for display.
The general screendisplay (Master Menu) of the SDA
user interface is shown in Fig. 6. The Master Menu is
considered to be a dynamic screen menu, where the
memorization of commands is overcome, and the
OperatingSystem
calls
Restat? Facilii
Fig. 5. User interface network.
38
A. Berrais
yi01dJ
yimld_l
yidd-1
yhlC1
yield-1
yia1d-i
yldd-!
yield-!
INELASTICDYNAMIC
ANALYSISIS IN
PROGRESS.......
PLEASE WAIT
Ti9.
I
SEQURJCh 03 Pl.AlX-ICICATION
COWLEO
MLAN
9Au
I
. . 32
Fig. 6. Screendisplay of the SDA userinterface.
interface is based on a hierarchical structure of modes,
each corresponding to a functional subgroup.
8.3 User interface menus
The Master Menu is divided into five windows as shown
in Fig. 6. The top and left-hand windows are used for
the high-level options (or menus) which contain all the
major functions (of SDA). In addition to the five main
windows, the user interface uses other windows which
are opened and closed dynamically while performing a
task. The large window in the middle is the main input/
output window where most of the dialogue between the
user and SDA is carried out while performing a task.
The right-hand window is a graphical window which
deals with the graphical explanation of the input as well
as the results. The bottom window is a message/warning
window which displays warnings about unusual actions
by the user.
Animations using Quintet-Flex bitmaps under XWindows have been used to increase the efficiency of the
user interface. These animations were used to: convey
functionality of the system, represent and explain the
complex seismic design results, and as a navigation and
status aid. The high-level options displayed in the top
and left-hand windows (see Fig. 6) are used to activate
SDA functions by clicking with the mouse on the
required button. For each option the user’s is guided
through a pull-down menu with multiple sub-options;
each sub-option corresponds to a specific task.
The high-level options are divided into two types
based on their function (as shown in Fig. 6): engineering
options and system options. On the left side are the
engineering options, while across the top are the system
options. These options are described briefly below:
Engineering options
Engineering options are concerned with the engineering
capabilities of the SDA and are divided into five
options:
HELP: provides help on the SDA menus, seismic design
terminology and background information.
GEOMETRY CHECK: concerned with eccentricity
requirements. This option is divided into the following
sub-options: Help, Horizontal regularity, Vertical regularity, Eccentricity Limit and Exit.
CODE LOADS: concerned with evaluating the base
static shear force and the lateral static forces.
ANALYSIS: concerned with the modelling and analysis
of RC buildings using elastic and inelastic dynamic
methods. This option is divided into the following sub-
Knowledge-based expert systems
options: Help, Modelling, Elastic Analysis, Inelastic
Dynamic Analysis and Exit.
DISPLAY: concerned with the graphical and textual
display of building geometrical and earthquake information. This option is divided into the following suboptions: Help, 3D Building Geometry, Display Elastic/
Inelastic results, Display Earthquake Record and Exit.
System options
System options are concerned with tasks related to the
management of the system (see Fig. 6):
RESTART: clears the windows and return the user to
the first display in a defined sequence.
FILES: concerned with the management of data and
system files.
UNIX: gives temporary access to UNIX operating
system.
EXIT: to exit SDA completely; its consequences are
such that the user must be required to confirm.
The use of menus can display different commands
organized in tre:e-like structures. The user simply
chooses the command from a menu of possible
command languages. In other words, a menu might
not only contain commands, but also route to other
menus. The dialogue design within the menus has
provided the following advantages: syntax and commands are kept simple, number of commands are
limited in format, information passed by a command
is limited, sequence of dialogues are organized into
logical groups, simple error handling, user should not be
expected to remember too much.
The philosophy behind using these different menu
options is that the user can have the opportunity to
initiate SDA at a:ny level of abstraction he wishes with
some degree of control on SDA behaviour. Menu
displays are bene:hcial because they always display the
possible range of commands; research has shown18that
humans are much better at recognizing a correct choice
rather than recalling that choice from memory. The user
is able to volunteer information concerning the problem
easily and rapidly to the system. This requires both a
flexible mixed-iniriative style dialogue so that the user
can easily take over control from the system at any
point.
9 EXPLANATION
FACILITY
The ability of the KBES to provide an explanation to its
reasoning is an important aspect of its intelligibility to
the user. The explanations offered by the user interface
are not limited to the conventional ‘why’ or ‘how’
explanation; deep explanation about a specific task can
be provided with how the ordering of hypotheses was
derived. This can be activated by an Explain or More
Details button associated with the textual window of the
39
required task. In addition, some of the textual explanation are coupled with passive and active graphical
explanations; the utility of this is that the user will have
more understanding of the meaning of different variables and relations used by SDA. As an example, the
mathematical model for the finite element method can
be displayed in a graphical form showing all the
different parameters with their explanation (see Fig. 6).
Complex inter-relationships can be explicitly conveyed
using graphics by presenting them as spatial relationships. This exploits highly developed human spatial
awareness and ability to extract meaning from spatial
patterns. Information provided by the system to the user
is a minimum and in the usable form that is essential to
making decisions or performing an action. In addition,
SDA maintains a record of the decision it makes. It uses
this record to explain and justify its decisions and
conclusions on request. This ability of SDA to provide
an explanation of its reasoning is obviously an
important aspect of its acceptability to the user.
For example, the Quintet-Flex rule agenda used to
provide a required explanation to the user, as he wishes,
is as follows:
Action seism-code
restart
and ask explanation-mode
and chain(lateral-method)
Chain(Group) if
explanation-mode is regular1
and forward-chaining(fcfs, misfire, fail, queue,
group)
and explain(Sequence).
Where Action is a sub-system of the Quintet-Flex
Knowledge Specification Language (KSL). The Action
is coded in the help module, and is concerned with
acquiring information from the user to know what type
of explanation he requires. Explanation-mode
is a
parameter used to categorize the explanation type
required by the user concerning the operation of the
system or any specific task. Group specifies the rules
agenda associated with the explanation-mode. Forwardchaining is the inference mechanism for firing the rules.
Queue is a program to change the rule agenda, and
Group is a group of named rules that are responsible for
a specific explanation mode (in this case, the group
name is lateral-method). Fcfs is the method used to
select the rules, misfire is a built-in program which is
executed whenever the action associated with the
selected rule fails. Fail is the termination call which is
tested during each cycle of the forward-chaining engine.
The user interface has been tested to check its
attractiveness and acceptability to potential users.
These preliminary tests were carried out by inviting
several research students and structural engineers to use
the SDA system and obtaining a feedback from them. In
general, the user interface was found to be acceptable
40
A. Berrais
and satisfactory. This was confirmed by the test users
who were satisfied with the way SDA represents design
information and felt that the user interface, in its present
stage, increased the user’s understanding of the problem
being solved.
10 SUMMARY
AND CONCLUSION
The paper has focused on understanding the benefits of
including user models and system models when building
user interfaces for KBES. User models and system
models have been largely ignored by developers of
KBES for engineering design applications. Even though
some literature from computer scienceexist, they do not
give practical guidance on how to implement user models
and system models, or how to gather information
concerning user behaviour and user tasks. In this
paper, an attempt has been made to investigate user
requirements, user model and system model for user
interfaces. Although many of the requirements of wer
models have been investigated, comprehensive realization remains beyond the reach of the current research.
Problems include the limitations of the programming
tools used, the complexity of building user interface
knowledge which takes more than one specific type of
user into account, and the difficulties associatedwith the
simulation of user knowledge (becausethis knowledge is
dynamic through time and must be continuously
followed and updated). User interfaces should be built
and tested during development of KBESs, and not
‘tacked on’ at the end.
A user model is important for the design of an
appropriate user interface, and there are no standard
user models. A user model has to be established or
derived on the basis of the user type, the task to be
computerized, and the particular human-machine
interaction under consideration. The user model should
be taken into account early in the development of any
KBES. A poor match between the user model of the
system and system model of the user will lead to systems
which are difficult to use and user-error prone.
The user interface developed in this research was
aimed at a specific type of user, with a particular body of
knowledge and particular goals. The type of user model
adopted in this research is a static model, and humanmachine interaction is determined by that model. More
initiative is taken by the system, thus minimizing its
passive role. Even though the static model has its
drawbacks, the investigation has paved the way to
understand and research more advanced user models,
such as dynamic models, which could reflect user
behaviour more accurately, and improve the interaction
between the user and the system. The user interface has
demonstrated the advantages of using both display
menus and graphical windows to enhance the seismic
design processand user-interaction with the system. The
research has demonstrated that menus have great
advantages over keyboard commands in that memorization of complex sequences of commands is eliminated, interactions are simplified (fewer user-errors) and
response times of both the user and the system are
minimized.
The user interface could be enhanced by developing a
multiple user model which would provide better interaction than the existing static model. The development of
a multiple user model would require a multidimensional
map with many aspects, reflecting the different user
types. These user types would range from the novice
user to the experienced user. The multiple user model
would allow for switching between different user
models. The problem of building a multiple user model
stems from the difficulty of defining user types. It is
unclear how to elicit this information and more difficult
to build the information into a computer system.
Building such a model would require the systemdesigner
to have a detailed knowledge of human behaviour, of
learning patterns and of task requirements. This
complex task requires sophisticated artificial intelligence
techniques to work well. Additionally, there is a need for
new effective cognitive-based techniques to allow the
user to develop an accurate mental model of the
computer system. Moreover, knowledge about users,
such as intelligence, educational background and job
skills, can be inferred by studying how users use
computer commands and deriving user characteristics
through the use of stereotypes.
REFERENCES
1. Berrais,A. & Watson, A. S., Expert systemsfor seismic
engineering:the state of the art. Engng Struct., 1993,15,
146-154.
2. IABSE, Proc. IABSE Colloquium Expert Systems in Civil
Engineering, International Association for Bridges and
Structural Engineering,Bermago,Italy, 1989.
3. CIVIL-COMP93, Third Int. Conf Application of Artificial
Intelligence to Civil and Structural Engineering, Cambridge,
UK, August 1993.
4. Topping, B. H. V., Developments in Artificial Intelligence
for Civil and Structural Engineering. Civil-Comp Press,
Edinburgh, UK, 1995.
5. Anumba, C. J., Considerationsin user-interfacedesignfor
knowledge-basedsystems.In Artificial Intelligence and
Object-Oriented Approaches for Structural Engineering,
eds.B. H. V. Topping and M. Papadrakakis.Civil-Comp
Press,Edinburgh, 1994,pp. 47-51.
6. Berrais,A. & Watson, A. S., A knowledge-based
design
tool to assistin preliminary seismicdesign.Microcomput.
Civil Engng, 1994,9, 199-209.
7. Jones,R. C. & Bdrnonds,E., Knowledge-basedrequirements.In Human Aspects in Computing: Design and Use of
Interactive Systemsand Information Management, ed. H. J.
Bullinger. Elsevier Science,Amsterdam, 1991,pp. 796800.
8. Cole, I., Lansdale, M. BEChristie, B., Dialogue design
guidelines.In Human Factors of Information Technology in
Knowledge-based expert systems
the Ofice, ed. B. Christie. Wiley, New York, 1985, pp.
212-241.
9. Dix, A., Finlay, J., Gregory, A. & Beale, R., HumanComputer Interaction. Prentice Hall, UK, 1993.
10. Sparks, J. K., Issues in user modelling for expert systems.
In Proc. AZSB8:i, University of Warwick, April, 1985.
11. Slatter, P. E., Building Expert Systems: Cognitive Emulation. Ellis Horwood, Chichester, UK, 1987.
12. Young, R. M., Howes, A. & Whittington, J., A knowledge
analysis of interactivity. In Human-Computer Interaction,
INTERACT
90, Proc. ZFZP TC 13 Third Znt. Conf
Human-Compur’er Interaction, Cambridge, ed. D. Diaper,
D. Gilmore, G. Cockton & B. Shackel., UK, 1990, pp.
115-120.
13. Williges, R. C., The use of models in human computer
interfaces design. Ergonomics Society Lecture, Swansea,
UK, 6-10 April 1987.
14. Brown, G. M.: Cognitive models in human-computer
interaction. In An Introduction to Human-Computer
Interaction, ed. P. Booth. Lawrence Erlbaum, UK, 1989,
pp. 65-101.
15. Gregory, K., Methodology for designing a normalized user
interface. In Advances in Human FactorslEraonomics Cognitive Engineering in the Design of Huma;-Computer
Interaction and Expert Systems, ed. G. Salvendy. Elsevier
Science, Amsterdam, 1987, pp. 139-146.
16. Johnson, P. & Cook, S., People and computers: designing
the interface. In Proc. Conf British Computer Society
Human Computer Interaction Specialist Group, British
Information Society, Cambridge, 1985.
17. McKeown, K. IR., User modelling and user interfaces. In
41
18. Majchrzak, A. & Tien-Chien Chang et al., Human Aspects
of Computer-aided Design. Taylor 8t Francis, London, 1987.
19. Browne, D., Norman, M. & Adhami, E., Methods for
building adaptive systems.In Adaptive User Interfaces, ed.
D. Browne, P. Totterdell & M. Norman. Academic Press,
New York, 1990, pp. 85-130.
20. Lehner, P. E. & Kralj, M. M., Cognitive impacts of the
user interface. In Expert Systems: The User Interface, ed.
J. A. Hendler. Norwood, NJ, 1988, pp. 307-318.
21. Kidd, A. L. Knowledge Acquisition For Expert Systems: A
Practical Handbook. Plenum Press, New York, 1987.
22. Wixon, D., Holtblatt, K. & Knox, S., Contextual design:
an emergent view of the system design. In Proc. CHZ’90,
ACM, 1990, pp. 329-336.
23. Stelzner, M. & Williams, M. D., The evolution of interface
requirements for expert systems. In Expert Systems: The
User Interface, ed. J. A. Hendler. Norwood, NJ, 1988.
24. Maher, M., Expert Systems for Civil Engineers: Technology and Application. American Society of Civil Engineers,
1987.
25. Quintet System Ltd., QUINTEC-PROLOG, Programmers Reference, Unix version, 1989.
26. Quintet System Ltd., QUINTEC-PROLOG, System Predictates, Unix version, 1989.
27. Quintet System Ltd., QUINTEC-FLEX, User Manual,
Unix version, 1989.
28. Cleal, D. M. & Heaton, N. O., Knowledge-based Systems:
Implications for Human-Computer
Interfaces. Ellis Horwood, Chichester, UK, 1988.
29. Howey, K. R., Wilson, M. R. & Hannigan, S., Developing
a user requirements specification for IKBS design. In Proc.
AAAZ-90, Proc. Eighth National Conf Art$icial Zntelligence, American Association for Artificial Intelligence, 29
Ffth Conf British Computer Society Human-Computer
Interaction Specialist Group, University of Nottingham,
July-3 August, 1990, Vol. 2, pp. 1138-1139.
Sept. 1989, pp. 277-289.