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

exercises  -  3. the interaction

EXERCISE 3.1

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?

answer

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.


Other exercises in this chapter

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)

all exercises for this chapter


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