In Exercise 7, we explored differences in the types of users who encounter our software and the styles in which they can (and prefer to) interact with our systems. We found that, not too surprisingly, different audiences have different needs. In Exercise 8, you are exploring the some of the basic principles that guide good interaction design, Shneiderman's so-called Eight Golden Rules of Interface Design.
Shneiderman's rules most commonly retained: consistency, feedback, error handling, and reversal of action. Rarely does any group retain 'design dialogs to yield closure' or 'support internal locus of control'. Why do you think that is?
What are the advantages of stating explicitly these principles when they seem implicit in some of the others? In what ways do these guidelines differ from their "relatives" on Shneiderman's list. (Think about intellect versus psychology...)
New rules you proposed included "make the interface easy to adapt", "match the user's task", "provide on-line help", and "give the user a way to terminate the system in a fail-safe mode".
Students this semester proposed a variation of adaptability that I hadn't seen in quite the same form ever before: provide multi-level support, for novices and experts. In this idea, one system supports both, first with special assistance to novices and then with special assistance to experts. The software can "grow" with the user as the user turns novice-directed features off and expert-directed features on. Very interesting idea.
Some groups generalize 'provide shortcuts' to a rule about 'adapting to the type of user', which also included the providing of help. How much is this science fiction, and how much can we achieve today?
Other ideas that have surfaced as possible rules: "match the environment", "provide help -- outside of the software", "provide appropriate response times", "(use graphics that) send the right signals to the user", and "provide multiple input devices".
How do you go about creating new rules? (Sometimes it's hard to create anything once you have seen an answer...) Three strategies I'd suggest you try sometime:
Keep in mind that more general rules will be less directly helpful in some contexts, and that more specific rules will be less broadly useful in some contexts.
Task 2 is an icebreaker for the work we will do in Chapter 3. Assuming that you want to build software with which users have positive interactions, then you will want to build software that satisfies the Golden Rules. How do you do that? How can you build software in a way that ensures that user dialogues yield closure?? You at least need to be thinking about your users during the software development life cycle...
As I read Chapters 1 and 2, I am struck by the idea that interface design as "myth making". While interacting with software, users build a mental model of how the program works. The interface is one of the most effective ways for the system developer to guide the construction of this model. So, interface designers are helping to construct the most useful "myth" in the mind of the user.
You have read and thought about principles of good interface design, including Shneiderman's eight Golden Rules, Section 2.5 in Designing the User Interface (Session 8). You have proposed your own design for a common software tool, with free reign to creativity (Session 2).
Work in teams of three or four people based on the number in the upper right hand corner of this page.
Are Shneiderman's golden rules technology-independent? Imagine a virtual reality system or a free-form natural-language interface. Do the golden rules still apply? Do some no longer apply? If so, which new design principles emerge?
Types of technology considered: virtual reality, natural language, voice recognition, visual tracking and "smart glasses". Machine learning of user preferences and characteristics. Others considered by past groups of students: pen- and touch-based input, chips that sense physical and mental state(!).
What counts as a short-cut in a VR interface? Walking through a marked (or unmarked!) door. In a natural language interface? "Do Gaussian elimination on the data" instead of "For each point in the data set, do the following..."
How does one achieve consistency in a VR world? Consistent "geographic" layouts. Consistent effects of similar types of actions. In a natural language interface? Resolving ambiguity consistently within and across dialogues!
General consensus: All of the rules still apply, only implementations to achieve the goals change. Why? The perceptive answer given in class: Because the rules are based on how the human mind works, and what it needs, and not on how current technologies work.
What part of a golden rule might be technology-dependent?
Some folks thought that error prevention/handling and internal locus of control become more important in the context of more advanced technologies. The former, because of the shrinking gap between onset of a user's intention and the achievement of that intention. The latter, because some technologies seem more pervasive or controlling. (Maybe this seems so only from our lack of exposure to the technologies??)
One group proposed that some technologies, such as VR, might make it easier to achieve 'reduce short-term memory load' because of the richer set of ways to record relevant items and present them to the user.