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

exercises  -  16. dialogue notations and design

EXERCISE 16.10 [extra - not in book]

Using an STN (or other dialog notation) define the dialog of a 4 function calculator

answer available for tutors only

N.B. there is no single right answer to this. These are three possible answers.

Solution 1

STN representing every possible state of the calculator

One possibility is to consider every possible state of the calculator, starting off with a display blank apart from a '0'. Typing a '0' leaves it as it is (not 00). Typing a '1' changes it to show a 1. Typing further digits adds them to the end. Even without considering the arithmetic operations, the number of states here is clearly far too large. However, for simple devices this would be an appropriate approach.

solution 2

STN of calculator display

This STN just looks at the number of digits showing on the calculator. Note, however, that it has two special states: one corresponding to the empty display (just a single 0) and one for 'showing result'. The 'showing result' state is important because in this state digits aren't added to the end of the display, but instead replace it - try it out on a calculator.

solution 3

simpler STN of calculator

This last solution focuses purely on the distinction between when you are in the middle of typing and this special 'showing result' state. One might come to this straightaway, or, after looking at solution 2 , one might notice that all the 'n digits' states behave similarly, which suggests this 'minimal' STN. However, has this gone too far? For example there is no difference in this STN between '=' and other operations. Is this purely a semantic difference that doesn't need to be reflected in the dialog?

These three different dialogs show different levels of detail. Which one is most appropriate would depend on the purpose.


Other exercises in this chapter

ex.16.1 (ans), ex.16.2 (ans), ex.16.3 (ans), ex.16.4 (ans), ex.16.5 (tut), ex.16.6 (tut), ex.16.7 (tut), ex.16.8 (tut), ex.16.9 (tut), ex.16.10 (tut), ex.16.11 (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