Direct Manipulation Interfaces
(Based on Shneiderman Chapter 6)
[ lecture notes | CSC 397 | Pete Sanderson | Computer Science | SMSU ]
Table of Contents
Significance
Example DM applications
Concepts and critique of DMI
Icon design
Programming by manipulation of icons
Other applications of DM
Virtual reality
Resources
Chapter 6 of Designing the User Interface Third Edition, by Ben Shneiderman.
Significance
What is the relationship between DMI and :
- Advances in computer hardware technology?
- Advances in software development technology, such as OO(A/D/P)?
- Dramatic growth in the market for personal computers?
- Dramatic growth of the Internet and WWW?
- Widespread recreational use of computers (e.g. games) ?
- Emergence of information visualization as an important technology and research area?
- Emergence of computer-supported cooperative work (CSCW)?
Return to the Top
Example DM systems
Editors and word processors:
- What is the single most important contribution of DM to word processing?
- Consider progression:
- from line-oriented text editors
- to screen-oriented text editors
- to WYSIWYG.
- Descendents of word processors include desktop publishing, spell and grammar checkers, slide-presentation software, hypertext links.
Spreadsheets:
- What is the single most important contribution of DM to spreadsheets?
- What is pre-DMI history of word processors vs. spreadsheets?
- VisiCalc was first spreadsheet.
- Revolutionary concept: relating cells to each other with automatic value updates upon modification of related cell. Patentable? Patented?
- Major enhancements are graphics presentation of spreadsheet data and macro facilities.
Video games:
- What is the single most important contribution of DM to video games?
- Characterized by :
- simple and intuitive action specification
- using joystick-type device and
- immediate audio/visual feedback.
- Note that application users and game users have:
- similar expectations (feedback, easy to learn and use) and
- differing ones (predictability and sense of control -- application users need 'em more).
Office Automation:
- What is the single most important contribution of DM to Office Automation?
- What is the single most important contribution of Office Automation to DM?
- The desktop metaphor arose from this, and the subsequent look-and-feel of personal computer operating systems.
- Xerox Star, Apple Lisa, Macintosh, Windows, OS/2 and others.
Which of the above do people find the least intimidating to use? Why?
Common DM principles exhibited by systems surveyed above:
1. visual OA continuously displayed with meaningful metaphors.
2. simple physical actions rather than complex syntax
3. effect of operations immediately visible
4. operations can be reversed and sequenced.
Consider how this applies to children, who learn from spatial relationships and representations well before they can learn from symbolic relationships and representations.
EXERCISE: Design a DM interface for web-based airline reservation system. Includes flight and seating selection. What kinds of objects would it contain, and how would you manipulate them?
Return to the Top
Concepts and critique of DMI
Major concepts upon which DMI is based include:
- Nelson: principle of virtuality (manipulable representation of reality)
- Rutkowski: principle of transparency (user concentrates on task while tool disappears)
- Hutchins: direct involvement with world of objects instead of through intermediary
- Montessori: e.g. use of physical objects to convey mathematical principles (educational psych)
- (many): use of spatial representations for more effective problem-solving.
- Wertheimer: physical/spatial representations led to more effective retention and generalization
- LOGO: rapid feedback enabling more effective debugging of turtle programs
DM benefits include:
- Basic functionality learned quickly
- Intermittent users can retain usage concepts
- Reduced opportunity for user error
- Immediate feedback for every action
- Users are in control
- Less user anxiety due to all the above
DM problems include:
- Require a lot of screen space (may require scrolling)
- Loss of precision
- Diagrams can become visually complex and therefore confusing
- Visual representation may be misleading (poor choice of metaphor)
- May be slower to manipulate mouse than type command, and takes hand off keyboard.
Example:
I want to copy the file /csc132/spring98/exams/exam2.doc
into directory /csc132/fall98/exams.
My current directory is /csc132/spring98/exams.
Explain how to do this from a Unix command line versus a WinNT or MacOS desktop.
Relate Shneiderman OAI to DMI. (p. 205).
- Interface object translates directly to domain object
- Interface action causes visible change to interface object (which is very close to domain object)
Return to the Top
Icon Design
use icons for visually-oriented applications (e.g. drawing)
use words for textually-oriented applications (e.g. word processor)
icon design is difficult: make it visually representative of object/action
Some guidelines to icon design:
- must be familiar/recognizable
- limit the number of different icons in application
- each icon should be clearly distinguishable from other icons and from background
- selected icon should stand out from surrounding unselected icons
- family of icons should be harmonious
- carefully design icon movement (what it looks like while being dragged)
- consider making object attributes visible through icon dimensions/color/animation (e.g. wastebasket/trashcan, file icon width increases as file size increases)
In-class exercise: develop a set of icons for direct-manipulation ATM (automated teller) service using touch screen. Once customer enters PIN, functions available are to: withdraw from checking, withdraw from savings, deposit to checking, deposit to savings. The dollar amount must also be specified: deposits can be any amount, deposits must be multiple of $20 up to a maximum of $300. This exercise should illustrate the difficulty in icon design.
Return to the Top
Programming by manipulation of icons
AKA programming by demonstration.
analogy to programming button on car radio (has been around at least since the 40s).
use it to program robot movements (move arm to position, record it, move to next position, etc)
Macro facilities for command-based systems much easier to design than macro facilities for DM systems.
Macros can be defined automatically based on system monitoring user actions and recognizing repeated patterns.
Brad Myers has done some work in this area (IEEE computer, Aug 92), which he terms demonstrational programming.
Return to the Top
Other applications of DM
Home Automation
- Check Bill Gates' book The Road Ahead
- Touchscreens are popular (more so than keypads, remote controls, even voice control).
- Example: clock icons or time-lines to specify scheduled events (such as thermostat settings).
- Example: diagrams of floorplans with devices (lights, switches, alarms) located appropriately
Remote control of devices operating in inaccessible environment
- microsurgery, space and underwater exploration and other hazardous environments.
- Must be reliable, give fast and accurate feedback, minimize errors and other risks.
Return to the Top
Virtual Reality
Shneiderman prefers the term Virtual Environments
Distinguish between "being in" and "looking at". For some applications, the latter may be preferable (e.g., does surgeon want to "be inside" patients lung or "look" at it? Their physical experience has all been of the latter variety.).
"The DM principles and the OAI model may be helpful to people who are designing and refining virtual environments." Think about the similar characteristics.
Related to other advances in hardware and algorithms
- 3D graphics
- textures/illumination
- animation
- head- and hand-position sensing
- tactile feedback
- sound input/output.
Virtual environments are also quite relevant to CSCW (computer supported cooperative work), a hot research area.
EXERCISE: design a virtual classroom environment, which would enable instructor and students to interact even though each may be in a different physical environment. What devices, networking capabilities, and software would be required? Should it mimic the traditional physical classroom environment, or is a new paradigm / metaphor / environment preferable? If the latter, what might it look and sound like? It should support active participation by all, not just by the instructor! All participants should have access to all others (e.g., a student has access to other students also, not just to the instructor).
Return to the Top
[
lecture notes | CSC 397 | Pete Sanderson | Computer Science | SMSU ]
Last reviewed: 22 October 1998
Peter Sanderson ( pete@csc.smsu.edu )