Already in the beginning of the book, the importance of user experience in any product that is being developed is emphasised. Therefore, the focus of the remaining chapters is to describe how this can be achieved.
In Chapter 2, we get an introduction to designs (in general) that will result in good user experience. It stresses the fact that change at an early stage is better in contrast to when some code (from CS perspective) has already been written. Before the design process starts, information about current experience and how it can be improved should be gathered (this is emphasised in chapter 10). It is suggested that teams should consist of people from different fields in order to get as many perspectives as possible, which helps to avoid errors. It is an advantage to design products that contain metaphors or analogies, in order to tell the user how to use the product. For example, it’s better to visualize the process of moving a file to another folder as to allow the user to relate to the physical action. Moreover, it’s crucial to be consistent and use repetition (all tasks should be executed in a similar way). Finally, tasks should be visualized as objects (eg. moving a file) rather than forcing to execute a command. Although commands give the user more power, it takes longer time to learn in contrast to visual actions that are intuitive.
Once there is a design team, data can be gathered that will be used to shape the new product. In chapter 7, three main techniques for data collection are presented: interviews, questionnaires and observations. There are three kinds of interviewing techniques: open, closed or semi-open. Each of them servers a particular purpose. Open interviews are good to get a general understanding the situation, and as a result, the responses will be unique (although it is possible to extract a common theme). Moreover, it will be much harder to analyse open interviews because of the nature of answers (qualitative data). Closed interviews, however, are easier to analyse because closed questions are used, thus they can be quantified. It is important to keep in mind that people might say one thing but in reality do something else (this was mentioned during a lecture also). In that case, it is better to use observations as tool to gain information. Robson’s framework illustrates things to consider during observation (see pp. 249-250).
Chapter 7 is concerned with interpretation of the gathered data. There are three main frameworks that can be used: Grounded Theory, Distributed Cognition and Activity Theory. Grounded theory emphasises the iterative aspect of the design process. First, data is collected, which is later used to establish categories. Then, based on this analysis, more data is gathered and so on. The loop continues until a theory is well defined. Distributed cognition seems to look at detailed steps of a process, considering many factors. Activity theory on the other hand, which is “a product of Soviet psychology”, focuses on the analysis of concepts of an activity. The “eating with a spoon” example on p. 309 shows how a basic action as holding a spoon turns into more simultaneous actions such as holding it horizontally that functions as one action.
In chapter 10, the important conclusion is to adjust the interface to the task. This can be achieved by for instance Persona driven development, use cases, scenarios, et cetera. There is a great emphasis on constructing requirements (from CS perspective, a UML diagram is one of them) and to do that, many information gathering techniques have to be used. Those described in chapter 7 (interview, questionnaires, observations) are just some of the examples. In addition, research of similar products and the study of documentation has to be performed. The main advantage of the latter is that they don’t require active participation of the stackeholders.