What Is Hierarchical Task Analysis?
Once you’ve created a hierarchical task analysis, it can serve as an effective form of system documentation, enabling developers to rapidly understand how users interact with a system. As software engineers are all too aware, the intimate familiarity you may have gained with why users do something in a certain way can quickly fade in just a few days or weeks. A hierarchical task analysis is an effective means of capturing this information.
Applying Hierarchical Task Analysis to User Experience
Hierarchical task analysis requires a detailed understanding of users’ tasks. You can achieve this understanding by
- identifying users’ primary goals
- detailing the steps users must perform to accomplish their goals
- optimizing these procedures
Let’s look at an example of a hierarchical task analysis. Our example is from a hierarchical task analysis I performed to better understand an existing system. We’ll consider a common task: ordering a book. Figure 1 shows a high-level hierarchical task analysis for this task.
Figure 1—Hierarchical task analysis for ordering a book
In this hierarchical task analysis, I’ve broken this task down into subtasks, expressing the relationships between the parent task and its subtasks through a numbering scheme. This hierarchical task analysis is very coarse from a user experience standpoint. It does not communicate anything about what is happening at the level of a user’s interaction with the system. However, it does give a clear understanding of the task’s high-level steps. A more complete task analysis would ultimately get down to the level of user interactions. To illustrate, Subtask 1.4, “Complete address,” would break down as follows:
- Locate the Full Name field.
- Move the insertion point to the field.
- Type the full name.
- Locate the Address Line 1 field.
- Move the insertion point to the field.
- Type the address.
- Optional: Locate the Address Line 2 field.
- Move the insertion point to the field.
- Type the address.
- Locate the Town/City field.
- Move the insertion point to the field.
- Type the town or city.
- Locate the County field.
- Move the insertion point to the field.
- Type the county.
- Locate the Postcode field.
- Move the insertion point to the field.
- Type the postal code.
- Locate the Country field.
- Move the insertion point to the field.
- Select the country from the drop-down list.
- Locate the Phone Number field.
- Move the insertion point to the field.
- Type the phone number.
Optionally, you can provide an illustration of the screen on which a user performs this task, helping to put this interaction in context. Figure 2 shows the screen for the “Complete address” task.
Figure 2—“Complete address” task
Combining different approaches to describing user interactions provides an understanding of tasks that is both broad and deep. The diagram shows how the high?level steps of a task relate to one another. The structured breakdown of the task into its subtasks describes each interaction in detail. The screenshot puts the interaction in context.
It is advisable to create a plan that describes the way in which a hierarchical task analysis assembles the subtasks that let users achieve a particular goal and any conditions the subtasks must fulfill. In many cases, users can simply work through the subtasks in a hierarchical task analysis, so keeping the plan separate from the tasks provides an additional degree of flexibility. For the example hierarchical task analysis, there could be two different plans, as follows:
- If a user is new to the system, complete Task 1.
- If a user has registered and is signed in, complete Tasks 1.1, 1.2, and 1.5.
The Benefits of Hierarchical Task Analysis
Understanding user interactions at multiple levels of abstraction provides several benefits.
- It lets you objectively compare different approaches to the supporting same task—in terms of the numbers and types of steps the approaches require. For instance, reducing the number of steps in a task would probably enable a user to complete the task more rapidly, so replacing multiple fields with a single field would speed up the task. However, this would also make the address less easy to verify. The hierarchical task analysis provides a framework in which you can capture such a design rationale and refer to any related documentation.
- There may be several competing approaches to the same problem, so ensuring your team uses common language and a consistent approach to hierarchical task analysis can help you to compare them fairly.
- It enables effective UX design, because designers can understand how a system works, at whatever level of abstraction is most appropriate for what they are currently trying to accomplish.
- It supports UX design reuse. UX design patterns are a useful step toward UX design reuse, but they describe only the high?level principles of interactions. Hierarchical task analysis lets you capture multiple implementations of a design pattern—expressing interactions in a common structured format—and identify new design patterns.
You can use established user research techniques to collect the information for a hierarchical task analysis. Observational methods can inform a hierarchical task analysis for an existing system, while interviews and similar qualitative approaches can help you to understand how users think about tasks when you are designing new systems, ensuring that the proposed approach follows users’ existing mental schemas.
While creating a detailed hierarchical task analysis is time consuming, making each step explicit makes it less likely that you’ll ignore any of the knowledge a user requires. Plus, it may let you identify further opportunities for improving the user experience. For example, knowing that a user is likely to have restricted movement can influence the design and implementation of a form. Because a hierarchical task analysis makes the required steps explicit, it is less likely that a designer would overlook such issues.
Any hierarchical task analysis must have a clear stopping point that you’ve defined in advance: the point at which the analysis stops. For most UX applications, this can be the most atomic level of user interaction—for instance, a mouse movement. A hierarchical task analysis is not restricted to describing a single process. You can associate multiple plans with a single hierarchical task analysis to illustrate how users can accomplish multiple tasks, using reference numbers to illustrate the different flows through the hierarchical task analysis. You can also associate different plans with different personas whose needs you intend a system to supportor with different options, depending on the type of system.
A hierarchical task analysis can provide the basis for creating user journeys. While user journeys may include a lot of information about particular users—their perceptions, backgrounds, and levels of understanding—a hierarchical task analysis objectively describes users’ interactions with a system. User journeys are a more specialized application of the information a hierarchical task analysis describes, putting user interactions in the context of specific users. Once you have created a hierarchical task analysis, the development of other design tools such as user journeys becomes much simpler.
No comments:
Post a Comment