Authors: Preece, Rogers & Sharp
Case Studies
Buy the Book [pop-up]
About the Book [pop-up]
2 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Chapter Index
Identifying Needs and Establishing Requirements


Chapter Introduction | Web Resources | Assignment comments | Teaching Materials


An interaction design project may aim to replace or update an established system, or it may aim to develop a totally innovative product with no obvious precedent. There may be an initial set of requirements, or the project may have to begin by producing a set of requirements from scratch. Whatever the initial situation and whatever the aim of the project, the users' needs, requirements, aspirations, and expectations have to be discussed, refined, clarified, and probably re­scoped. This requires an understanding of, among other things, the users and their capabilities, their current tasks and goals, the conditions under which the product will be used, and constraints on the product's performance.

As we discussed in Chapter 6, identifying users' needs is not as straightforward as it sounds. Establishing requirements is also not simply writing a wish list of features. Given the iterative nature of interaction design, isolating requirements activities from design activities and from evaluation activities is a little artificial, since in practice they are all intertwined: some design will take place while requirements are being established, and the design will evolve through a series of evaluation—re­design cycles. However, each of these activities can be distinguished by its own emphasis and its own techniques.

This chapter provides a more detailed overview of identifying needs and establishing requirements. We introduce different kinds of requirements and explain some useful techniques.

The main aims of this chapter are to:

  • Describe different kinds of requirements.
  • Enable you to identify examples of different kinds of requirements from a simple description.
  • Explain how different data­gathering techniques may be used, and enable you to choose among them for a simple description.
  • Enable you to develop a "scenario,'' a "use case,'' and an "essential use case'' from a simple description.
  • Enable you to perform hierarchical task analysis on a simple description.