Human-Computer Interaction 3e Dix, Finlay, Abowd, Beale

exercises  -  6. HCI in the software process


(a) How can design rationale benefit interface design and why might it be rejected by design teams? (b) Explain QOC design rationale using an example to illustrate.

answer available for tutors only

(a) It makes design decisions and the reasons for them explicit. It can be used to communicate decisions within the design team, to clients and to incoming new team members. It can allow re-use of design decisions in future designs. It forces rigour in the design process and helps designers to generate ideas. It can highlight trade-offs that are implicit in a decision.

It may be time consuming and may take resources away from the actual design. There is little tool support for DR commercially available. Designers can get wrapped up in doing DR rather than in the design. Those making the effort may not perceive themselves to be the ones gaining the benefit.

(b) QOC is an example of design space analysis, structure-oriented design rationale. This means that its primary concern is not with how a design decision was reached (in terms of the process) but why it was reached (in terms of a post-hoc representation of the design space). Designs are structured around Questions, each of which is answered by a number of Options, which in turn are supported or not supported by a range of Criteria. A Decision (the Option chosen in a given design) is represented by boxing the chosen Option or changing its labelling from O (for Option) to D (for Decision). Subsequent questions result from particular options being considered and chosen. QOC uses a semi-formal graphical notation to represent the design space in terms of these three features. (Answer would draw an example QOC showing a question with options and criteria - indicating the decision taken and ideally a subsequent question.)



Imagine you have been asked to produce a prototype for the diary system discussed in the worked exercise in Section 7.2.3. What would be an appropriate prototyping approach to enable you to test the design using the usability metrics specified, and why?

answer available for tutors only

For the guessability criterion, it would be sufficient to show a paper storyboard of the system and ask the user to indicate how they would perform the initial task of scheduling an appointment. For the second, repeated meetings task, a slightly more functional prototype would likely be needed, but it could be very constrained to support a specific example of this task.


EXERCISE 6.3 [extra - not in book]

(Cross-refer to Chapter 9, 14, 19) This is an extended assignment to develop a prototype groupware system and report on the design, implementation and evaluation of it.

The problem situation

XYZ Ltd. is a large company with many offices in the US and overseas, including sites in Edinburgh and Adelaide. It has a number of partly owned subsidiaries and works closely with several of its suppliers during the design and manufacture of its product line. It is becoming increasingly difficult for employees to trace the appropriate people within the organisation and in its closely allied companies.

Alison Zetici is responsible for corporate communications and has decided that a company-wide system is needed. This will be some form of contact database which would list both internal employees and also external contacts. The employee information can be maintained centrally, but individuals within the company will have to be able to enter details of their personal contacts.

The system is not simply to be a passive database, but should aid the establishment of communication wherever possible, by email, telephone, voice-mail, text conference or video-conference (XYZ has a giga-baud corporate backbone and every employee's PC has full audio-visual capabilities). Ideally, the system should also help employees to coordinate their contacts with external contacts.

Several objections have been raised to Alison's original proposals. Some members of the marketing department are worried about loss of control over their contacts with others, and about the privacy of comments they would normally add to their existing paper records. Also several employees are worried that they will lose their small set of close contacts within the large database.

Design brief

Your job is to design and build a prototype of aspects of the system for Alison to use in her presentation to the board of XYZ and also to use to communicate with the software engineers at XYZ (who don't know anything about groupware!).
It is not necessary to cover every aspect of the system in your prototype. The overall system can be developed in outline (sample screens, design plans for system architecture). However, some parts should be prototyped in greater detail, including some level of networking.

The prototype

Note when choosing which aspects to include in your prototype that the aim is to test your understanding of groupware construction. A fully featured contacts database with no support for cooperative activity is not acceptable.
Consider both individual and group activities. The choice of functionality and software architecture should take CSCW issues into account.


You should evaluate the final prototype using techniques appropriate for cooperative systems. This should include both a technical and a user-oriented evaluation. Both design and evaluation should also take into account the expected context of use.


Prepare a report on the development of the system, which should describe and critique the design and evaluation process and the prototype itself. You should include a critique that relates the prototype as built to the broad range of issues and to comparable systems, and also demonstrates a deeper knowledge in at least one area.

answer available for tutors only

extended project


EXERCISE 6.4 [extra - not in book]

Have students examine various programming environments and report on how they support the variety of prototyping methods discussed in this chapter.

answer available for tutors only

open-ended investigation


EXERCISE 6.5 [extra - not in book]

You have been asked to develop an instant messaging client for a mobile phone, based on a current desktop client. The design challenge is to pare down the interface to fit on a mobile phone. Create a design rationale in which you record design decisions about what aspects of the desktop client to keep and which to remove.

answer available for tutors only



EXERCISE 6.6 [extra - not in book]

There are various standards in the software engineering community for recording requirements. Find one of these standards and see how well it supports the documentation of end user requirements.

answer available for tutors only

open-ended research

Individual exercises

ex.6.1 (tut), ex.6.2 (tut), ex.6.3 (open), ex.6.4 (open), ex.6.5 (open), ex.6.6 (open)

Worked exercises in book


What is the distinction between a process-oriented and a structure-oriented design rationale technique? Would you classify psychological design rationale as process or structure oriented? Why? [page 255]

home | about | chapters | resources | exercises | online | editions | interactive | community | search | plus +++
exercises: 1. human | 2. computer | 3. interaction | 4. paradigms | 5. design basics | 6. software process | 7. design rules | 8. implementation | 9. evaluation | 10. universal design | 11. user support | 12. cognitive models | 13. socio-organizational | 14. comm and collab | 15. task models | 16. dialogue | 17. system models | 18. rich interaction | 19. groupware | 20. ubicomp, VR, vis | 21. hypertext and WWW