We have identified a number of
user-centred design guidelines some of which have been axiomatic in
our research while others have been developed as our system has evolved.
While these do not represent absolute requirements, they are motivated by
the goal of maximising the extent to which a highly diverse population
will be able to maintain control over the pervasive environments that
they inhabit.
-
Unpredictable, open-ended composition: We have taken as
axiomatic that there should be flexibility in terms of how such a
service can be configured. In general, any given individual may want
the behaviour of a service within their pervasive environment to
depend on an almost arbitrary (and therefore hard to predict)
collection of other services.
-
Lay policy authoring: In exploring the use of natural language
interfaces, it is implicit that we believe people are more
comfortable working within their own language. We assume that this
will reduce the burden of expressing and managing a collection of
policies. Few people will be prepared to learn specialised policy
programming languages, wade through complex menu driven interfaces,
or perhaps even to sit down at a keyboard.
-
Appropriate smartness:
We have focussed on providing tools that help the user engage in the
design process themselves by making it as easy as possible for them
to express what they want in their own words, and provide
comprehensible ways for the system to explain itself.
-
Transparent policy semantics:
In designing a policy logic, we
have realised that if people are to be able to devise sets of policies that will
behave in the way they expect, they need a policy reasoning system
whose workings can be understood in terms of mental models that a
lay person might be expected to formulate. We make a clear
distinction between an abstract policy machine that is designed to be
intuitive to non-technical users, and the implementation of this
abstract machine in some well-formulated underlying policy logic.
-
Accounting for personal style in the design process:
While some
users will want to develop a set of personalised rules completely
from scratch, many will prefer to start by adopting a predefined
collection of rules that roughly matches their requirements, and
then gradually adapt them to suit their individual requirements. In
order to support this, there needs to be some way of "displaying"
the behaviour of both pre-packaged and personalised collections of
policies.