CS 6751 Final Exam, Part 1:
A Brief Overview of Task Analysis

Sean McCrohan
December 5, 1997

I've based my approach to writing this on some assumptions about the reason behind the assignment and the ultimate use those pieces that are highly rated by our peers might see - namely, that they may be used as references by future classes. If I was wrong, so be it. Don't abuse me too much.

Introduction
What is Task Analysis?
Collection of Data
Three Types of Analysis
Task Analysis in HCI
Conclusion

Other Sources

Introduction

Task analysis is a very useful tool for HCI work, but at the same time appears at first glance to be painfully complicated. The intent of this document is to provide an overview of the topic while avoiding the various symbol sets, languages, and methodologies that are used to implement it in practice. Once a general understanding of the purpose and nature of task analysis is reached, it's hoped, the details will no longer be nearly as confusing as they first appeared.
  
Task analysis describes the behavior of a system

What is Task Analysis?

The question of just what 'task analysis' is is not as straightforward as it might at first appear. Terminology being the unpredictable beast that it is, a brief perusal of references to that term turn up several different usages, some of which partially contradict the one we'll use here. For our purposes, however, we'll use the term as Dix, Finlay, Abowd, and Beale use it. Under that definition, the purpose of task analysis is to gain insight into the nature of an already-existing task as it is performed in the field. The questions asked are "What is being done?" and "How are these tasks accomplished?" - there is no judgement made as to the appropriateness or efficiency of those procedures. Task analysis addresses what is done, not what should be done.
Task analysis is not the same as GOMS or cognitive modelling

In that fact lies one of the primary differences between task analysis and Card, Moran, and Newell's GOMS (Goals, Operators, Methods, and Selection) cognitive model. At first glance, the two methods might appear almost identical, but there are several important differences. A brief exploration of these differences will help to point out just what task analysis is and is not.

GOMS is based on theory, task analysis is based on observation

It is possible to construct a GOMS model for a system based solely upon design documents or a prototype, without any user involvement. Because GOMS assumes that users never make mistakes, they are nothing more than another component whose behavior can be predicted. In contrast, task analysis depends upon the observation of existing systems, as used by real users.

GOMS is detailed and quantitative, task analysis is more abstract and qualitative

A GOMS model is typically very detailed, especially if it employs something like the Keyboard Level Model, and focuses on one specific goal and the low-level operations necessary to achieve it. Task analysis, on the other hand, generally uses a broader scope, looking at the entire system, and at other elements of the environment where the system is used that play a role in completing a task. It may become very detailed, but usually only in response to the needs of a specific project. We'll look at this more closely when we examine the uses of task analysis in HCI.

GOMS is evaluative, task analysis is generative

Finally, conceptual models are an evaluative, summative technique, used to measure the performance of a system. Task analysis is a generative technique, used to describe the behavior a system and provide a jumping-off point for new design.

  
Instruction manuals provide good supporting data, but
are poor primary sources.

Collection of Data

Analysis necessarily requires data to analyze. The data for task analysis comes, in the ideal case, from actual observation of the task being analyzed and interaction with experts in the field. However, because this sort of observation can be time-consuming and expensive, instructional guides, operational manuals, and other procedural material can be used to provide supplementary information. Because that sort of literature is mostly theoretical in nature (real world practice rarely precisely matches instruction books), however, it can be misleading. Remember that the purpose of task analysis is to describe the actual practice, not to construct an 'ideal' model. Documentation, then, rarely provides a sufficient base of information for task analysis in the absence of other data.
Observation of subjects performing a task is the central data-source for task analysis.

Observation of subjects performing the task to be analyzed is the central method of data collection for task analysis. Depending on the project at hand, this observation might be formal or informal, and might take place in the field or in a laboratory. Some normally-evaluative techniques, such as a think-aloud, could be used to very good effect for gathering data for task analysis, especially for investigating the steps taken (or objects and actions involved in) a specific goal. These exercises can either be guided (ask the subjects to accomplish a certain goal and observe how they do so) or unguided (such as observation in the workplace, where the subjects have goals of their own).

Interviews with experts make good data sources, but experts may take certain steps for granted.

Interviews with experts in the task to be analyzed are another good source of data. These interviews could take place independently of direct observation, or could be a follow-up to resolve questions which grew out of an observational session. Interviews should be used cautiously, however, if they are to be the primary source of data, because experts are frequently not aware of all of the steps they take when performing a task - their level of experience causes some details to drop below the level of conscious thought. Careful questioning is required to ensure that nothing is missed.

  
 

Three Types of Task Analysis

DFAB presents three different categories of task analysis: task decomposition, knowledge based analysis, and entity-relationship based analysis. Task decomposition focuses on the way a task can be divided into sub-tasks, knowledge based analysis on what needs to be known to accomplish a task, and entity-relationship based analysis on the objects involved and the actions that can be performed with them.
  
Task decomposition is top-down, breaking tasks into simple actions by sequence.

Task Decomposition

Task decomposition is a top-down process in which a task is split into component sub-tasks. DFAB suggests this process is iterative, but I find it more helpful to think of it as being recursive. The process, in rough outline, proceeds as follows:
  1. Select a task
  2. Based your data (from observation, documentation, and expert advice), divide the task into sub-tasks.
  3. If your stopping rule has not been reached, repeat steps 1-3 for each of the new sub-tasks.
Stopping conditions define the level of detail to which a task is decomposed.

The stopping condition you use - the level of detail you recurse to - depends on your purpose in performing the analysis. Stopping conditions are needed to keep the process from continuing infinitely. Task decomposition rarely continues to the level of detail of how to perform physical movements.

Plans describe the order sub-tasks are performed in.

In addition to a tree of tasks and sub-tasks, rules describing what order sub-tasks are to be performed in are also needed. Hierarchical task analysis (HTA, a variety of task decomposition) refers to the collection of tasks as a 'hierarchy' and the governing rules as 'plans'. There are several ways for these plans to be arranged: subtasks might be sequential, cyclical, optional, or fall into other arrangements.

 

Once the task hierarchy and plans have been laid out, it's advisable to review them several times to look for omissions. Stepping through the subtasks in the hierarchy (being careful to do nothing that is not listed) can reveal items that were overlooked.

  
Knowledge based analysis is bottom-up, grouping simple actions and objects into classes by similarity.

Knowledge Based Analysis

Where task decomposition starts with a high-level task and breaks it down into subtasks, knowledge-based analysis works from the bottom up. The starting point for the process is a list of all of the objects and actions that are relevant to the task that is being analyzed, based on data collected (both what objects and actions subjects were observed to use, and what they mentioned). The objects are then arranged into groups based on similarity or shared traits. The traits that are used to determine groupings depend entirely upon the task that is being analyzed and the purpose of the analysis.
Classes of actions objects are collected into progressively larger groups, forming a taxonomy.

As groups are formed from the items, the groups themselves are then grouped together, building progressively more abstract categories. The structure this process eventually arrives at is termed a 'taxonomy' - a naming hierarchy. Depending on the purpose of the analysis, each item might have a unique 'path' in the hierarchy (appearing only once), or some might belong to multiple groups. Some techniques require that every item be uniquely describable by the groups it falls under, and that if two items are in exactly the same set of groups, either a new group be created to define the difference between the items or the items be combined.

  
Entity-relationship analysis is bottom-up, defining objects, actors, and actions and defining relationships between them.

Entity-Relationship Based Analysis

Entity-relationship analysis is also a bottom-up approach to task analysis. It inherits much of its structure from object-oriented programming, and is the most 'computer-like' of the three varieties of task analysis being presented here. Entity-relationship analysis concerns itself with objects, actions, and their relationship. A good way to start is to examine the data you collected - interview transcripts especially - and pull out every relevant noun (objects) and verb (actions).
Objects and actors have attributes (and actions) associated with them.

Objects are divided into four categories: simple objects, actors, composite objects, and events. Each simple object may have attributes or qualities associated with it - size, weight, or color, for example. Actors (which are typically though not always humans) have attributes, but are also associated with a list of actions which they perform. Composite objects are composed of a group of simple objects or actors. Actors perform actions upon objects, possibly changing the attributes of the object in the process (for instance, changing the status of a device from 'off' to 'on'). Events are things that take place spontaneously, either randomly or caused by actions outside of the model, which objects and actors react to.

Relationships define the connections between objects,
actors, and actions.

The second half of object-relationship analysis is the relationship between objects. Objects can be related to each other in terms of physical location, or to actions that are either performed with them or on them. Actions may cause other actions, or be triggered by events. The variety of possible events is large, and depends upon the nature of the task.

  
Task analysis need not be expensive.

Uses of Task Analysis in HCI

Finally, we come to what is probably the most important question, for us. Given that task analysis is fairly complicated and expensive to perform (both in terms of money and in terms of effort), why is it used in HCI? The unfortunate first answer is that often, it isn't. It seems to often be perceived as being too involved and expensive to be used in industry - much in the way that evaluative user studies were, leading to the development of 'discount usability' methods. However, just as it is not necessary to conduct a formal study involving several hundred users to achieve a rough measure of the usability of a system, neither is it necessary to have hundreds of subjects performing a task under video observation to collect the data for a task analysis. Even observation of one or two experts can lead to very useful insight into the nature of a task.
Understanding the user's previous behavior aids in the design of learnable systems.

Why is that insight useful? Most, though not all, computer applications are attempts to make easier tasks users already perform. Word processors replaced typewriters, computer databases have (to a large extent) replaced paper filing systems. In building a system like this, it is wise (as Nielsen's heuristics remind us) to 'match between the system and the real world'. That is, make the system compatible with what the user already does, so that its introduction draws upon already learned skills and fits smoothly into the rest of the work environment.

Analysis can lead to compatibility with real-world tasks and with user expectations.

Step one of this process is understanding what it is that the user has been doing. The new system can then be arranged in a way that is compatible with the user's accustomed behaviors (learned through task analysis), presented in a way that matches the way the user mentally classifies the actions and items involved (gathered through knowledge-based analysis), or include logical objects and the actions associated with them (discovered through object-relationship analysis). This could take place anywhere between the level of broad system design (selection of the tasks and functions to be included in a new system) to detailed interface decisions (the arrangement of menu options based on taxonomy, or on frequency of a given subtask).

Task information can be used to build documentation.

In addition to guiding system design, that information can also be used for the creation of documentation - either documenting the task that was analyzed, or presenting instructions for a new task or system in a way that parallels a familiar one, for ease of comprehension. Task decomposition lends itself to the creation of instruction manuals, while knowledge and object-relationship based analysis are more appropriate to reference guides.

  
 

Conclusion

The purpose of task analysis is to provide insight into the nature of a given task. The purpose of this writing is to provide some insight into the nature of task analysis. This has hardly an exhaustive treatment of the subject. Other references, some of which provide much more detail on the actual methods and means of conducting a task analysis, are listed below. It's my hope, however, that this overview provides a framework for understanding what the (frequently complicated) procedures are all about.
  
  
 

Other Sources

Alan Dix, Janet Finlay, Gregory Abowd, Russell Beale, Human Computer Interaction, Prentice Hall, 1993

Gregory Abowd, CS 6751 (Lecture Notes), Georgia Institute of Technology

James Landay, CS 160 (Lecture Notes), UC-Berkeley

Several other sources of information are also available on the Web, including abstracts of papers written for the ACM and business pages for consulting companies that offer task analysis as one of their services. They provide useful 'flavor' material for seeing how task analysis is generally thought of, even though they contain little in the way of hard detail.

Return to Top of Page