Accommodating diverse users in ETAG and ETAG-based design: task knowledge and presentation

This paper discusses ETAG, a formal model for design representation and ETAG-based design, a method for user interface design. The paper discusses and exemplifies the two main facilities in ETAG to describe the differences and similarities in task-knowledge requirements between users. Using evidence from the Comris project (van der Velde, 1997), conclusions are drawn about ETAG-based design as a single-notation design method, and about the tension between ETAG as a model for design representation and as a representation of user competence knowledge. 1. Extended Task-Action Grammar ETAG (Extended Task-Action Grammar; Tauber, 1988, 1990; de Haan, 2000a) is a formal language to represent user interfaces in terms of the knowledge that a perfectly knowing user would have (in a mental model) about performing tasks. To create a psychologically valid description of user interface for design purposes, ETAG stratifies user interface knowledge into a number of levels using existential logic and written down in a formal grammar. Stratification into levels intends to meet the existence of levels in human knowledge and to reflect the major decisions that occur during the design process. An ETAG representation consists of a canonical basis, a user virtual machine, a dictionary of basic tasks, and a section with production rules. Comris (van der Velde, 1997) is an agent-based system to provide visitors of large conferences with contextsensitive information about nearby events and people, based on a personal interest profile, an active badge system, and information about the conference schedule In the Comris system, users carry a wearable computer, which stores a list of advisory messages from the agent system for textual and/or spoken presentation. By means of the wearable, users may, among others, play, present, delete and respond to messages, move to a previous or a next message, and adjust the volume and the minimal interest threshold. The canonical basis of the ETAG representation of Comris contains general concepts such as object, position, state, attribute and event, to define the specific concepts that the system uses. The type hierarchy included the concepts that the user comes into contact with, such as messages and message list, and the concepts that the user may influence, such as the interest threshold that messages should exceed to be included in the message list. In addition, the type hierarchy specifies an agent concept as the external source of new messages, as well as interest and location concepts which are necessary to understand how the user's interests and whereabouts influence the advisory information in newly created messages. In the type specification each of the concepts in the type hierarchy is defined, and additional concepts and attributes, such as current_message and message_position are added as 'semantic sugar' to describe how the system works, as experienced by the user. Part of the type specification of Comris' UVM will read as follows: type [message_list isa object] themes: message places: place_pos(x)(message_list) attributes: max_pos, current_pos type [message isa object] attributes: message_text, next, previous The specification states that a message_list provides space for messages, which each take up one place in the list, and that messages have a certain text, and a previous and next attribute which will be used later on, to describe the task of selecting another message to take the current_position. The event specification is the part of the UVM describing the workings of the system as it virtually appears to work from the point of view of the users, which may be different from how it is actually build to work. Part of Comris' event specification will read as follows: type [create_message isa event] parameters: relevance, threshold, message_list, message_text precondition: relevance > threshold create_on(message_list, max_pos, message) copy_to(text, message) current_pos = max_pos max_pos += 1 play_message The event specification describes how the system processes tasks from the user and other agents using a pseudo computer program notation. The create_message event reads as follows: when the relevance of the new message surpasses the user's interest threshold, it is added at the end of the user's message list. It then becomes the current message and an event is raised to play it (present it as speech and text). The dictionary of basic tasks lists the tasks that the system provides to the user, and it links the command sequence, as described in the production rules, to the event specification. In the original proposal of ETAG (Tauber, 1988, 1990) it excluded system tasks and tasks which require user decisions during execution. Embedded tasks were introduced to describe system functions like those with clear visible effects, and so-called menu tasks were introduced to describe higher-level user tasks, such as making multiple selections from a list. The following task illustrates the dictionary of basic tasks: type [create_message isa embedded task] effect: [create_message isa event][play_message isa task] remark: a system task to present a new message to the user To complete the ETAG specification of the Comris system, the perceptual interface should be specified next. This consists of the user perceivable aspects of the system. It is not (yet) possible to specify the presentation interface in ETAG. which is concerned with the visual design. It is better to specify the user's knowledge about the visual parts of a user interface pictorially, and for design purposes, it is easier to use so-called interactive user interface builders. The specification of the production rules which describe the command procedures will be illustrated in section about design representation for diverse users/user task world presentation. 2. ETAG-Based User Interface Design In ETAG-Based Design (de Haan; 1996; 2000a) user interface design is regarded as the incremental specification of the mental model of a perfectly knowing user. The design process is structured into a number of discrete steps, each covering a specific set of design decisions: taskand context analysis, task design or task synthesis, conceptual user interface design, and perceptual user interface design, which covers the presentation interface and the interaction language. ETAG-Based Design was inspired by the notion that user interface design is not so much concerned with creating software but rather with providing a particular view on a task domain. Given that the user's view of the task domain (the user's task world) and the system's view should correspond for optimal task performance, and that the two views are mediated by the knowledge that users (should) have about performing tasks, it seems reasonable to develop a method which represents user interface designs by means of modelling required user knowledge. An important characteristic of ETAG-based design in comparison to other design methods, such as MUSE (Lim and Long, 1994), Paternò's Model-based approach (Paternò, 1999), or Usage Centered Design (Constantine and Lockwood, 1999), is that, as far as possible, it uses a single notation throughout the design process. In ETAG-Based Design the ETAG notation is used to represent the analysis and design results. For this, it is necessary that the notation is flexibly adapted, beyond its original definition, to meet the specific purposes of all design stages. Originally, ETAG was intended only for user interface specification and not for representing the results of task analysis and task design. By altering the level of abstraction of the specification, the amount of detail, and the inclusion of special modelling concepts, the ETAG notation becomes useful for different purposes. For example, in modelling business procedures during task analysis, the representation is specified at a high level of abstraction without much detail, and special concepts are used to represent agency and ownership. In contrast, when the representation of the user interface is intended for conceptual design or for prototype generation, the representation includes more details at lower levels of abstraction and excludes special concepts. Using a single notation throughout design facilitates the transitions from one design stage to the next. It also makes it easier to create tool support, which is particularly relevant for presenting the ETAG representation as a formal representation in a suitable way to all the stakeholders. A final advantage of using a single notation is that designers themselves are not required to learn and use a variety of different notations. In the approaches of Paternò (1999) and Constantine and Lockwood (1999), for example, designers must be able to deal with a variety of notations, in contrast to only one in ETAG-based design. 3. Design Representation for Diverse Users In ETAG-based design, differences between groups of users can be accommodated in two principally different ways, depending on whether users share common knowledge about the user's task world, and whether they share a common presentation of the user task world. 3.1 User task world knowledge During task design, when the results of task analysis are synthesised into new task specifications, it may become clear that the design involves multiple users with rather different roles, tasks, and privileges in the work situation. In this case, different users have different knowledge requirements with respect to performing tasks and, consequently, it is necessary to create multiple ETAG representations of the UVM and the dictionary of basic tasks. Examples are, software to support business processes in which users have different responsibilities, and adaptive systems, which, provide different task sets, depending on user characteristics, such as experience (Oppermann, 1994). In the Comris example, conference administrators and ordinary users play a different role. Users and administrators