also show how the logged data can be used for deriv-
ing usability assessments and personalizing the user
experience.
2 RELATED WORK
User input logging for subsequent log analysis was
introduced a long time ago and has been used in mul-
tiple contexts. A known but infrequently used benefit
from the collected data is the usability measures that
can be derived from the logs without the need for any
special equipment or experiments. Ivory and Hearst
(Ivory and Hearst, 2001) present a review of a wide
variety of usability evaluation automation techniques
and discuss the challenges of these types of evalua-
tion as well as the characteristics of the surveyed ap-
proaches. As a step towards enabling applications to
automatically collect usage data, Olsen and Harversen
(Olsen and Halversen, 1988) present a User Interface
Management System that augments each user inter-
face component with the capability to log user input.
KALDI (Al-Qaimari and McRostie, 2006) is a graph-
ical toolkit for automatic recording and visualization
of the usage data. An implentation of the detailed
tracking of users’ interactions with a website via an
HTTP proxy that intercepts client-server communi-
cations and extends the client application with us-
age logging capabilities is presented in (Atterer et al.,
2006).
Usage data has been used almost exclusively for
extending the functionality of automated tutoring,
recommender, and adaptive hypermedia applications
(e.g. (Linton et al., 2000; Brusilovsky and Cooper,
2002)). Within these types of systems, the user-
system interaction data is used for tracking and as-
sessing the competency of the user with a topic or task
and adjusting the scope, content or presentation of the
material based on this assessment. Some of these sys-
tems employ a direct representation of the tasks and
their hierarchical decomposition (e.g. (Brusilovsky
and Cooper, 2002)) in order to relate the user model
to particular tasks and their components.
The approach presented in this paper takes advan-
tage of user logging for usability assessment and for
application enhancements in the domain of enterprise
systems. What distinguishes our research is the ex-
plicit representation of the task model as a composi-
tion of interface components within the system’s data
model. The presented model links users, tasks, inter-
face components and the application’s domain data,
enabling sophisticated reasoning about the history of
system usage on different levels: from focusing on a
single input mechanism, to discovering user roles as
a combination of frequently co-occurring tasks. An
important aspect for the domain of enterprise systems
is the ability afforded by this infrastructure to trace
back the content of the application’s domain data to
the particular set of users who entered it.
3 THE MODEL
Users of Enterprise Resource Planning (ERP) sys-
tems and other enterprise systems enter text into text
fields, select items from menus and list structures,
mark check boxes, and click on links. In order to
capture such inputs to a system, we have defined an
experimental infrastructure in which all components
that accept user input are based on a common archi-
tecture that implements logging of that input. The
logged data is accessible to the system and provides a
full history of the users’ interactions.
Figure 1 illustrates the relationships between the
users, the data they enter, the input controls be-
ing used and their groupings into task-related pages,
the tasks being performed with those pages, and the
domain-specific process related to those tasks. We
have developed a prototype that uses this model in
the implementation of a Purchase Requisition Process
from an ERP system. The major components in the
model are defined as follows. Domain data is the
part of the model that stores the business data. User
represents the user information. UI Concept includes
entities representing the user interface components,
their grouping on interface pages, and their relation-
ship to the domain data. The Task Concept compo-
nent represents tasks as named collections of interface
pages. The Tracking component contains the entities
that record the interaction history: which tasks and in-
put controls were enacted, when, and what data was
entered.
User, Task and UI Concepts form the static com-
ponents of the model, i.e., they represent the data that
does not change during system use. The Domain and
Tracking modules are dynamic.
3.1 Domain, User, Task and Ui Concept
The Domain data portion of the model represents
the business data, such as the description of materi-
als, vendors, purchase requisitions and other relevant
entities. This is the standard part of any information
system that stores and manipulates data in support of
business operations.
Multiple users are represented in the User entity.
The UI Concept module defines the composition
of the interface and its connection to the domain data.
The most basic entity of this module is the InputCon-
trol, which provides a specification for a user-input
A DATA-DRIVEN DESIGN FOR DERIVING USABILITY METRICS
155