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

exercises  -  3. the interaction


Choose two of the interface styles (described in Section 3.5) that you have experience of using. Use the interaction framework to analyze the interaction involved in using these interface styles for a database selection task. Which of the distances is greatest in each case?


There is no single answer for this exercise, so we will provide an example of the style of answer that is suitable and the level of analysis that is appropriate.

You should be aware that, although the term distance is used, we have not associated any real measures to any of the translations in the interaction framework.

As a result, this analysis can only be informal and at this point is mainly informed by one's intuition and experience with various interface styles.

As was stated in Section 3.2.3, assessment of any interaction with the interaction framework can only be relative to some task. For this example we will choose a common database selection task - selecting records from an online library database. The two interface styles we will analyze are a natural language interface and a command line interface.

The task is to select a set of references from the library database that satisfy some search criteria. Once the task has been formulated in the user's task language (for instance, the user wants to see all of the books written by Alan Dix since 1990), that task must be articulated in the input language.

A natural language interface style would allow the user simply to type in the selection query exactly as they think of it. The articulation distance is small both because it is easy to articulate (possibly even easier if a spoken interface is provided rather than typing), and because the coverage is total (the user is allowed to articulate anything as a query). On the other hand, for a command line interface, the limited vocabulary of the input language makes it more difficult for the user to articulate a task even though the limited language provides complete coverage in terms of possible queries allowed.

The real difficulty for a natural language interface is how the system translates the input expression into the actual query that accesses the library records. This performance translation will be much easier for the command line interface since it may not even require any translation of an input expression, that language having already been constructed with the database engine in mind.
Therefore, we can see that for a natural language interface the performance distance is greatest, whereas for a command line interface it is the articulation distance that is greatest.

However, the above analysis only really deals with the execution translations. On the evaluation side, a natural language interface must try to present the results of the database query in the form in which the user phrased the question. This can in general be a difficult translation for the system as it attempts to answer questions in the style in which an arbitrary user has posed them.
Having accomplished that, the observation by the user should be easy to perform. For a command line interface, there is no guarantee that the result of the query will be displayed automatically, and the user may have to request a display explicitly (and they may have to express how the display be formatted).

Neglecting that point, presentation by the system is made easier, as the output language can be very constrained. Observation is made more difficult, as the user must translate the output into the terms of their original task formulation. For example, having asked for books by Alan Dix published after 1990, the user may have a difficult time locating author name and year of publication to determine if the resulting records match their expectations.

For evaluation, a natural language interface has a greater presentation distance and a command line interface a greater observation distance. In general, therefore, we would expect that a natural language interface would be easier from the user's perspective but more difficult from the system builder's perspective. The opposite should hold for a command language interface.
There are some issues that we haven't addressed in this example, such as displaying a large set of records that satisfy the query, and being able to reuse the output of one query as the input to another in order to compound searches easily.

Since the performance translation is so difficult for a natural language interface style it is important for a natural language interface to present the results of the query in such a way that the user is able to determine if the system understood the original query in the way the user intended. This would involve the presentation translation reiterating both the user's query and the selected records simultaneously. In our example, since the user was interested in the author and date of publication, it would help if that information was prominently presented in the result set.

We have not considered, either, what effect experience with the system provides. As users become more comfortable with the syntax and semantics of a command language, its perceived difficulty will decrease. Another problem is that a verbose natural language output may limit the number of records it is possible to display from a result set.

The moral of the story is that despite their intuitive allure, such informal analyses as suggested by this exercise cannot be the last word on analysis of an interactive system. Ultimately, our judgements must be made more precise and concrete.



Find out all you can about natural language interfaces. Are there any successful systems? For what applications are these most appropriate?


This exercise is intended to encourage personal research in the form of a brief literature survey. Appropriate places to begin such a search would be: general text books on artificial intelligence (e.g. Janet and Alan's An Introduction to Artificial Intelligence), which will include basic information on natural language processing and famous systems such as SHRDLU; proceedings from conferences such as the AAAI and specialist journals, which will have more up to date research papers in the area; proceedings of HCI conferences such as CHI, Interact and HCI, which will include natural language systems particularly geared towards the interface.

Other likely sources are popular journals such as BYTE and personal computer magazines, which are likely to review commercial systems. The student's response to the second part of the question will depend upon what is unearthed, but it is likely that the systems that they find out about operate in very constrained domains and that the natural language used is restricted. There are as yet no general purpose natural language interfaces.



3.3 What influence does the social environment in which you work have on your interaction with the computer? What effect does the organization (commercial or academic) to which you belong have on the interaction?


The aim of this exercise is to explore the social and environmental influences that affect interaction, often without the user being aware of them. The particular influences will vary from environment to environment, but we encourage you to consider some or all of the following.

Chapters 13 and 14 also discuss the influence of groups of workers within an organization on interaction, and are suggested as further reading material on this topic.



(a) Group the following functions under appropriate headings, assuming that they are to form the basis for a menu-driven word-processing system - the headings you choose will become the menu titles, with the functions appearing under the appropriate one. You can choose as many or as few menu headings as you wish. You may also alter the wordings of the functions slightly if you wish.

save, save as, new, delete, open mail, send mail, quit, undo, table, glossary, preferences, character style, format paragraph, lay out document, position on page, plain text, bold text, italic text, underline, open file, close file, open copy of file, increase point size, decrease point size, change font, add footnote, cut, copy, paste, clear, repaginate, add page break, insert graphic, insert index entry, print, print preview, page setup, view page, find word, change word, go to, go back, check spelling, view index, see table of contents, count words, renumber pages, repeat edit, show alternative document, help.

(b) If possible, show someone else your headings, and ask them to group the functions under your headings. Compare their groupings with yours. You should find that there are areas of great similarity, and some differences. Discuss the similarities and discrepancies.

Why do some functions always seem to be grouped together?
Why do some groups of functions always get categorised correctly?
Why are some less easy to place under the 'correct' heading?
Why is this important?


open-ended investigation



3.5 Using your function groupings from Exercise 3.4, count the number of items in your menus.

(a) What is the average?
What is the disadvantage of putting all the functions on the screen at once?
What is the problem with using lots of menu headings?
What is the problem of using very few menu headings?

Consider the following: I can group my functions either into 3 menus, with lots of functions in each one, or into 8 menus with fewer in each. Which will be easier to use? Why?

(b) Optional experiment
Design an experiment to test your answers. Perform the experiment and report on your results.


(a) The answer depends on the answer to Question 3.4. The problem with putting all functions on the screen at once is that they will occupy too much screen space, leaving little room for anything else. Too many menu headings will make it difficult for the user to decide under which heading a desired command resides. Too few menu headings means that each menu will consist of many menu items, complicating the visual search task to locate the menu item and increasing the average length of time it takes to drag the mouse and select an options. Fitts' Law gives us a way to understand the impact of length of menu items and selection times.

We would tend to go for a larger number of smaller menus, under the assumption that it is possible to create clear conceptual boundaries between menu categories. If the eight categories lead to an easy to understand decomposition of the commands, then it would be easier to decide which menu to select and then would be quick to select a menu item among a small number of options. A small number of menus might result in an unclear decision on where to place some menu items.

(b) Open-ended experiment



Describe (in words as well as graphically) the interaction framework introduced in Human-Computer Interaction. Explain how it can be used to explain problems in the dialogue between a user and a computer.

answer available for tutors only



Describe briefly four different interaction styles used to accommodate the dialog between user and computer.

answer available for tutors only



The typical computer screen has a WIMP setup (what does WIMP stand for?) Most common WIMP arrangements work on the basis of a desktop metaphor , in which common actions are likened to similar actions in the real world. For example, moving a file is achieved by selecting it and dragging it into a relevant folder or filing cabinet. The advantage of using a metaphor is that the user can identify with the environment presented on the screen. Having a metaphor allows them to predict the outcome of their actions more easily.

Note that the metaphor can break down, however. What is the real-world equivalent of formatting a disk? Is there a direct analogy for the concept of 'undo'? Think of some more examples yourself.



Individual exercises

ex.3.1 (ans), ex.3.2 (ans), ex.3.3 (ans), ex.3.4 (open), ex.3.5 (open), ex.3.6 (tut), ex.3.7 (tut), ex.3.8 (open)

Worked exercises in book

  • a worked exercise
  • a worked exercise
  • a worked exercise
  • a worked exercise

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