Cpe/csc 486: Human-Computer Interaction

Download 56,43 Kb.
Date conversion12.12.2017
Size56,43 Kb.

CPE/CSC 486: Human-Computer Interaction

          • Computer Science Department
          • California Polytechnic State University
          • San Luis Obispo, CA, U.S.A.
  • Franz J. Kurfess

Usage of the Slides

  • © Franz J. Kurfess
  • these slides are intended for the students of my CPE/CSC 486 “Human-Computer Interaction” class at Cal Poly SLO
    • some of them are based on the “Interaction Design” textbook
      • www.id-book.com
    • if you want to use them outside of my class, please let me know (fkurfess@calpoly.edu)
    • some of them are based on other sources, which are identified at the bottom of the respective slide

Course Overview

  • © Franz J. Kurfess
  • Introduction
  • Cognitive Foundations
  • Input-Output Devices
  • Interaction Spaces
  • Interaction Styles
  • Interaction with Mobile Devices
  • Speech-Based Interaction
  • User Assistance
  • Natural User Interfaces
  • Case Studies
  • Project Presentations

Chapter Overview Interaction Styles

  • © Franz J. Kurfess
  • Motivation
  • Objectives
  • Terminology
  • Batch Systems
  • Command-Line Interfaces
  • Full-Screen Interfaces
  • Menus
  • Forms
  • Direct Manipulation Interfaces
  • WIMPs
  • User Assistance
  • Interaction through Speech
  • Interaction with Mobile Devices

Interaction Styles in CSC 484

  • © Franz J. Kurfess
  • there is a similar chapter in the CPE/CSC 484 class
    • follows the Rogers, Preece, Sharp textbook
    • see http://users.csc.calpoly.edu/~fkurfess/Courses/484/S12/Administration/Schedule.html, Week 3


  • © Franz J. Kurfess
  • Use of HCI Lab Facilities
    • Morae
    • reservations for exclusive use of the lab
  • Open House: Fri, April 13 + Sat, April 14
    • opportunity for usability evaluations and data collection
      • Fri ~2:30 - 4:00 pm: new students, parents
  • Loaner Devices Checkout
    • iPads, XBox + Kinect, PS3 + Move, Qualcomm Android kits
  • Assignments
    • A1 due today
      • project-related => TRAC Wiki
      • others => PolyLearn Assignment Submission
    • A2 published (same as 484 - A4)
  • Research Activity
    • topic selected?
    • dissemination method discussed (paper, blog, video)
  • Term Project
    • addition of students who enrolled late
    • contact and regular meetings with external customers


  • © Franz J. Kurfess
  • student presentations/papers
    • discussion
    • sign-up for those who already have a topic
  • project: finalize teams, topics
  • hand out: presentation/paper specifications

Evaluation Criteria

  • © Franz J. Kurfess
  • recall
    • important I/O devices and their properties
  • recognition
    • which of a list of I/O devices has certain properties
  • analysis
    • according to given criteria, how well does a device perform a certain task
  • evaluation
    • is a particular I/O device suitable for a certain task
    • what is the performance of a device for a task
      • criteria to measure performance

Shell’s Advocate

  • © Franz J. Kurfess
  • In a mock debate with your neighbor, one person plays an advocate for command line interfaces (“shells”), the other for graphical user interfaces.
    • Even if you’re not personally convinced that your position (e.g. as advocate of the shell) is the better one, you must do your best to defend it (“devil’s advocate”).
    • As a starting point, you could use an exaggerated statement like “With today’s technology, shells are completely obsolete, and should not even be offered as alternatives to graphical user interfaces.”

Batch Systems

  • © Franz J. Kurfess
  • Why were batch systems historically the first user interfaces for computers?
  • Are there circumstances under which batch systems are still appropriate today?


  • © Franz J. Kurfess
  • the way interaction with computers is performed depends on available technology on one hand, but also on different methods and usage styles for a particular technology
  • the change in interaction style from command-line to graphical user interface has contributed considerably to the popularity of personal computers
  • for a given task and user population, different interaction styles may make the difference between success, acceptance, or failure of a product


  • © Franz J. Kurfess
  • to know the advantages and drawbacks of the most often used interaction styles, in particular command-based vs. graphical user interfaces
  • to be familiar with evaluation criteria for a comparison of different interaction styles
  • to be able to select an appropriate interaction style for a specific task, environment, and user population
  • to be exposed to emerging interaction styles like natural language, gestures, or intelligent agents

Evaluation Criteria

  • © Franz J. Kurfess
  • name and briefly describe at least three interaction styles
    • e.g. batch, command line, GUI
  • apply three criteria to the evaluation and comparison of interaction styles
    • representation, operation, navigation
  • discussion of potential advantages and drawbacks of emerging interaction styles
    • e.g. usability, user control, computational overhead, prevention of errors


  • © Franz J. Kurfess
  • exchange of information between user and system
  • actions of the user that change the status of the system
  • feedback to the user concerning actions of the system
  • requires translation between the intentions of the user and the actions of the system


  • © Franz J. Kurfess
  • task
    • actions to be performed in order to solve a problem in an application domain
  • goal
    • desired output from a completed task
  • task analysis
    • identification of the problems space
      • in particular domain, goals, intentions, specific tasks
  • user language (task language)
    • describes the problem to be solved in terms familiar to the user
  • system language (core language)
    • describes the functionality of the system in terms familiar to the designer or developer

Interaction Model

  • © Franz J. Kurfess
  • execution
    • establishing the goal
    • forming the intention
    • specifying the action sequence
    • executing the action
  • evaluation
    • perceiving the system state
    • interpreting the system state
    • evaluation of the system state
      • with respect to goals and intentions
  • [Norman, Dix]

Interaction Styles

  • © Franz J. Kurfess
  • term covers all of the ways that users interact with a computer system
    • also referred to as communication styles or dialog styles
  • represent alternative design strategies for the UI
    • each style offers its own way of organizing the system’s functionality, of managing the user’s inputs, and of presenting information
      • e.g. display-based interfaces -> menus, mice, windows, widgets, icons, buttons, function keys, etc.
  • provide a behavioral view of how the user communicates with the system
    • “look and feel”
  • [Mustillo]

Evaluation Criteria for Interaction Styles

  • © Franz J. Kurfess
  • representational
    • how a system “looks and feels” (graphical), or “sounds and feels” (speech)
  • operational
    • how a system links sequences of operations together
    • maps the representations used onto its functions
  • navigational
    • awareness of what users can do at each stage
    • how they can move through the system
  • [Mustillo]

Interaction Framework

  • © Franz J. Kurfess
  • components
    • system user, input, output
    • input and output together form the interface
    • each of the components may have its own language to describe the objects and actions it is concerned with
  • [Dix]

Interaction Framework

  • © Franz J. Kurfess
  • [Dix]
  • Core
  • System
  • User
  • Interface
  • Input
  • Output
  • Task

Interactive Cycle

  • © Franz J. Kurfess
  • [Dix]
  • Core
  • System
  • User
  • Interface
  • Input
  • Output
  • Task
  • Articulation
  • Presentation
  • Performance
  • Observation

Translations Between Components

  • © Franz J. Kurfess
  • articulation
    • user translates task intentions into the input language
  • performance
    • input language is translated into stimuli for the system
  • presentation
    • system activities are translated into output language
  • observation
    • output language is translated into the user’s task model

Example: Light in a Room

  • © Franz J. Kurfess
  • controlling the lighting in a room
    • articulation: “I’m going to bed now, so I better turn off the light in the living room. To do this, I need to flip the switch.”
    • task language: turn lights on/off
    • input language: flip switch
    • system language: close/open circuit for light bulbs
    • output language: lights on/off

Example (cont)

  • © Franz J. Kurfess
  • translations
    • articulation
      • user decides to turn on the light, and flips a switch
    • performance
    • presentation
      • light bulb emits light
    • observation
      • user notices that the light is on
  • frequent problem
    • multiple switches in large rooms

Practical Exercise

  • © Franz J. Kurfess
  • Describe the languages and translations for the interactions required to open a document containing the third homework for this class.

Practical Exercise: Open a Document

  • © Franz J. Kurfess
  • languages
    • task language: activities described in natural language
    • input language: user commands, file names
    • system language: system calls, OS objects
    • output language: commands for an output device
      • e.g. screen, or PostScript for a printer

Practical Exercise (cont.)

  • © Franz J. Kurfess
  • translations
    • articulation
      • user translates “document with the third homework” into the corresponding file name
        • double-click on file “HW-3.html”
    • performance
      • system translates user-level commands and parameters into system-level commands and objects
        • system calls to invoke an application program compatible with HW-3.html’s type, and to load the file
    • presentation
      • system translates internal representation into a form suitable for output devices
        • display of the file on the screen
    • observation
      • user interprets the information shown on the output device

Practical Exercise: Digital vs. Analog Clocks

  • © Franz J. Kurfess
  • Describe and compare the languages and translations used for setting digital and analog clocks. What are frequent problems with the two device types and their languages or translations?
  • languages
    • task language: set time to a certain value
    • input language: wheel vs. buttons
    • system language: mechanical movement vs. ICs
    • output language: minute and hour hands vs. LCD display

Practical Exercise (cont.)

  • © Franz J. Kurfess
  • translations
    • articulation
      • turn wheel / press buttons
    • performance
      • clock translates input actions into modified display
    • presentation
      • new time setting is displayed
    • observation
      • user translates hand positions or numbers into time

Exercise: Select Example

  • © Franz J. Kurfess
  • Identify an activity or scenario to illustrate interaction styles
    • languages
      • task, input, system, output
    • translations
      • articulation, performance, presentation, observation
    • problems

  • © Franz J. Kurfess

Practical Exercise (cont.)

  • © Franz J. Kurfess
  • problems
    • which way do you turn the wheel
    • which button do you press, how often, in which combination
    • turning the time “back” on a digital clock is frequently impossible

Batch Systems

  • © Franz J. Kurfess
  • first generation of user interfaces
  • interaction restricted to a single point in time
    • submission of a batch job as a single unit
  • user commands have to be specified before the result of any of them is made known to the user
  • work well for repetitive jobs (e.g., payroll processing, billing, etc.), and are still used today
    • Examples: Revenue Canada, Canada Post, Bell Canada.
  • drawbacks
    • not interactive
    • inflexible
  • [Mustillo]

Personal History

  • © Franz J. Kurfess
  • the images in the following slides represent computer systems I used early in my career

Example Batch Systems: Telefunken TR 4

  • © Franz J. Kurfess
  • http://www.vaxman.de/historic_computers/telefunken/tr4/tr4.jpg

Example Batch Systems: Telefunken TR 440

  • © Franz J. Kurfess
  • http://www.vaxman.de/historic_computers/telefunken/tr440/tr440.jpg
  • http://www.uni-saarland.de/typo3temp/pics/a3b60e2be1.jpg
  • © Franz J. Kurfess
  • TR440
    • mainframe,
    • communications cabinet
    • console
  • http://archive.computerhistory.org/resources/physical-object/telefunken/102668025.1.sm.jpg
  • http://archive.computerhistory.org/resources/physical-object/telefunken/102667999.5.lg.jpg?rand=668344533
  • © Franz J. Kurfess
  • http://www.qslnet.de/member/dj4kw/lt440.jpg
  • © Franz J. Kurfess
  • http://www.qslnet.de/member/dj4kw/lplat.jpg

TR 440 Terminal

  • © Franz J. Kurfess
  • http://www.qslnet.de/member/dj4kw/ljim.jpg

Example Batch Systems

  • © Franz J. Kurfess
  • http://www.epa.gov/athens/learn2model/part-one/career/images/card3.jpg
  • © Franz J. Kurfess
  • http://www.qslnet.de/member/dj4kw/lcard.jpg
  • © Franz J. Kurfess
  • http://www.qslnet.de/member/dj4kw/loink.jpg

Command-Line Interfaces

  • © Franz J. Kurfess
  • also referred to as Command-Language or Line-Oriented Interfaces
  • A new user’s first view of almost all command-line interfaces: “>“
  • one-dimensional
    • user interacts with a system on a single line that serves as the command line
    • once the user hits the return key, the input can no longer be modified
  • typical of many early computer systems, but remain common even today
    • e.g., MS-DOS, UNIX
  • [Mustillo]

Command-Line Interfaces (cont.)

  • © Franz J. Kurfess
  • responsibility for navigation is on the user
    • user has to know what the allowable commands are
    • needs to have a clear idea of the function to be performed
  • difficult for novice users to learn
    • once mastered, command languages often represent the quickest form of communication
      • abbreviations, function keys, keyboard shortcuts,
  • query languages represent a special case of command languages
    • allow users to request information
  • [Mustillo]

Example 1 Command-Line Interface

  • © Franz J. Kurfess
  • NASCOM-2
  • http://www.myplace.nu/nascom/images/simfull.jpg

Example 2 Command-Line Interface

  • © Franz J. Kurfess
  • [Mustillo]
  • C > A:
  • A > dir
  • Not ready error reading drive A
  • Abort, Retry, Ignore? _

Example 3 Command Line Interface

  • © Franz J. Kurfess

Example 4 Command-Line Interface

  • © Franz J. Kurfess
  • A typical dialog using a UNIX system (Telnet session)
  • [Mustillo]
  • HP-UX bmtlh730 A.09.05 A 9000/755 (ttyw0)
  • login: fkurfess
  • Password: **********
  • Please wait...checking for disk quotas
  • mtlh730:~> cokol
  • Enter EDMX password:
  • mtlh730:~> exit

Advantages Command-Line Interfaces

  • © Franz J. Kurfess
  • powerful
    • commands can be stringed together, automated scripts can be run, macros can be used, commands can be executed repetitively)
  • flexible, user controlled
    • users can do anything in any order
  • fast, efficient
    • requires more typing than other interaction styles, but is probably the fastest, most efficient of all interaction styles
    • very fast and efficient for expert, high-frequency users)
  • use minimal screen space
    • only one line at a time
  • [Mustillo]

Drawbacks Command-Line Interfaces

  • © Franz J. Kurfess
  • operating system or program exposed to the user
  • difficult to learn
    • very cryptic, use of arbitrary syntactic delimiters, require rote memorization
  • difficult to remember
    • especially for infrequent users
    • rely totally on recall
  • inflexible
    • commands need to be expressed using a precise syntax
    • any variation represents an error
  • susceptible to errors, poor error handling
  • [Mustillo]

Full-Screen Interfaces

  • © Franz J. Kurfess
  • two-dimensional
    • user is no longer limited to a single command line, but can move around the screen along two dimensions
      • e.g. form-filling application, in which the user is presented with a number of labeled fields that can be edited in any sequence.
  • many full-screen interfaces use function keys, enumerated choices, or the first characters of a menu item as the primary interaction style
  • [Mustillo]

Example Full-Screen Interfaces

  • © Franz J. Kurfess
  • Example of a full-screen interface
  • [Mustillo]
  • Name John Doe
  • City Montreal
  • Province Quebec
  • Postal Code H3E 1H6
  • F1 - Help
  • F2 - New Customer


  • © Franz J. Kurfess
  • mechanism that allows the user to make a selection from a limited set of options
  • one of the most popular interaction styles
  • the user does not have to remember the name or abbreviation of a command
    • recognize it from a list of available options
  • names of options, contents of the icons, descriptions of buttons should be self-explanatory
  • [Mustillo]

Menu Building Blocks

  • © Franz J. Kurfess
  • menus can consist of
    • textual descriptions of the available functions
    • icons
      • small graphic images that represent different aspects of an interface metaphor
    • buttons
      • horizontal or vertical
    • boxes

Hierarchical Menus

  • © Franz J. Kurfess
  • most frequently used form of menus
  • Word
  • Processing
  • Office
  • Automation
  • Spreadsheet
  • Electronic
  • Mail
  • Create
  • Edit
  • Print
  • File
  • Graphics
  • [Mustillo]

Networked Menus

  • © Franz J. Kurfess
  • Office
  • Automation
  • Word
  • Processing
  • Electronic
  • Mail
  • Spreadsheet
  • Graphics
  • Help
  • Print
  • Quit
  • [Mustillo]

Menu Types

  • © Franz J. Kurfess
    • fixed menus
      • remain in place until the option is selected
    • pull-down menus (drop-down menus)
      • dragged down from a menu bar at the top of the screen, an item is selected, and the menu automatically returns back to its original title
    • pop-up menus
      • appear when a user clicks on a particular area of the screen, which may be designated by an icon
      • menu remains in place until the user instructs it to disappear, usually by clicking on a “close” box in the border of the menu’s window
    • cascading menus
      • display all options chosen one after the other in a cascading fashion
  • [Mustillo]

Design Considerations for Menus

  • © Franz J. Kurfess
  • order of items
    • alphabetically, by category, or by frequency
    • some functions should be kept apart (e.g., ‘create’ option should not be placed next to the ‘delete’ option)
  • selection of items
    • number or letter corresponding to the required option
    • pointing at the option using a pointing device
    • highlighting the item through cursor control keys
  • navigation through a series of menus
    • hierarchically-structured menus
      • main menu with a series of sub-menus to make further selections
  • [Mustillo]

Tradeoffs with Menus

  • © Franz J. Kurfess
  • depth vs. breadth
    • deep: few alternatives, many selection steps
    • broad: many alternatives, few selection steps
  • deep and narrow is often difficult for users
  • broad and shallow is usually easier
    • user does not have to go through as many levels, thereby reducing the need for user navigation
    • each node in the menu hierarchy becomes more complex, making the user choose between more options at each level
  • [Mustillo]

Depth and Breadth in Menus

  • © Franz J. Kurfess
  • broad menu hierarchy
  • deep menu hierarchy
  • [Mustillo]

Advantages of Menus

  • © Franz J. Kurfess
  • self-explanatory
    • require little training or learning
  • require little human memory
  • indicates when parts are not relevant
  • interaction under user control
  • fast, efficient interface for experienced users
    • shortcuts to mouse actions
  • few keystrokes, which reduces errors
  • easy error handling
  • enhancements and changes are visible
  • [Mustillo]

Problems with Menus

  • © Franz J. Kurfess
  • not appropriate or efficient for some users and tasks
    • may slow down frequent or expert users
  • users may get lost in menu hierarchies
  • menu names may not be meaningful to users
  • inflexible
    • unless highly networked, the user is forced through set sequences of steps
  • impractical for numerous choices
    • good for a limited number of valid inputs at any given time
  • use lots of screen space
  • most effective with a pointing device
    • mouse, trackball, touch screen
  • [Mustillo]

Fill-in Forms

  • © Franz J. Kurfess
  • similar to a paper fill-in form
    • presented on a computer screen instead of paper
  • formatted structure containing fields, in which the user inputs data
    • each field has a label or caption that indicates the type of data to be entered in that field
  • organization and layout are important aspects
  • [Mustillo]

Example Fill-in Forms

  • © Franz J. Kurfess
  • A fill-in form interface design for a department store
  • [Mustillo]
  • Type in the information below.
  • Press TAB to move the cursor to the next field.
  • Press ENTER when done.
  • Name: ________________________ Phone: (___) ___-___
  • Address: ________________________
  • ________________________
  • City: _________________ Province: ____ Postal Code: _______
  • Catalog No. Quantity Catalog No. Quantity
  • ___________ ____________ ___________ ____________
  • ___________ ____________ ___________ ____________
  • ___________ ____________ ___________ ____________
  • ___________ ____________ ___________ ____________
  • ___________ ____________ ___________ ____________

Advantages Fill-in Forms

  • © Franz J. Kurfess
  • self-explanatory
    • little training or learning required
  • require little human memory
    • rely on recognition rather than recall
  • efficient use of screen space
    • multiple fields can be presented on one screen
  • parameters with many possible input values
    • e.g., names, street names, city names, postal codes, etc.
  • provide context
  • enhancements and changes are visible
  • [Mustillo]

Problems Fill-in Forms

  • © Franz J. Kurfess
  • assume knowledge of valid inputs
    • e.g., catalog numbers, part numbers, etc.
  • assume typing skills
  • users need to know how to use TAB to move to the next field, BACKSPACE to correct
  • resent opportunities for making errors
  • inflexible
    • input order cannot be changed
  • [Mustillo]

Questions-and-Answer Interfaces

  • © Franz J. Kurfess
  • combine some of the features of both menus and fill-in forms in a unique dialog style
    • the user is faced with a single question at a time
    • the user has to input an answer, rather than select one from a list
  • system driven
    • the user does not have to worry about navigation.
    • suitable for novice or untrained users
    • can be frustrating to more experienced users
  • often the best choice for data-entry tasks performed by unskilled users
  • [Mustillo]

Example Questions-and-Answers

  • © Franz J. Kurfess
  • [Mustillo]
  • Canada Census 1998
  • Enter your name:
  • (Last, First, Initial)
  • > Kurfess, Franz J.
  • Enter your marital status:
  • (M - married, S - single, D - divorced, W - widowed)
  • > M
  • Citizenship:
  • (C - Canadian, O - Other))
  • > O
  • For instructions Press HELP
  • To accept responses Press RETURN
  • To backup Press BACKSPACE
  • To skip a question Press RETURN
  • To cancel and quit Press ESC
  • To save and quit Press EXECUTE

Advantages Questions-and-Answers

  • © Franz J. Kurfess
  • self-explanatory
    • little training or learning required
  • require little human memory
    • recognition rather than recall
  • simple, non-intimidating
  • parameters with many possible input values
    • e.g., names, street names, city names, postal codes, etc.
  • accommodate tasks with a hierarchical structure
    • skip questions that do not pertain
  • accommodates complete and clear prompting
    • only one question at a time on the screen
  • enhancements are visible
  • [Mustillo]

Drawbacks Questions-and-Answers

  • © Franz J. Kurfess
  • inefficient
  • assume typing skills
  • opportunities for making errors
  • inflexible
    • input order cannot be changed
    • except in wizards, which may have a “Previous” button
  • no forward context
    • serial nature of questions may restrict context information
  • [Mustillo]

Direct Manipulation

  • © Franz J. Kurfess
  • describes the interaction between user and object
    • directly connects an action to an observable response from an object
  • follows an object-action paradigm
    • user performs tasks by selecting an object (e.g., icon, window, or text), and then selects an action (e.g., move, close, underline) to perform on that object
  • permits users to control their environment
    • by directly manipulating graphical objects and controls similar to those that they encounter in real life
    • push button starts an action
    • slider is used to select an analog setting, etc.
    • mapped onto affordances
  • [Mustillo]

Principles of Direct Manipulation

  • © Franz J. Kurfess
  • visible objects of interest
    • representing an object with an icon
  • continuous representation of objects and actions of interest in a meaningful metaphor
  • objects and actions are shown
  • rapid, reversible, incremental actions
  • immediate visibility of results of actions
  • direct manipulation of the object of interest instead of a complex command language syntax
    • typing is replaced with pointing and selecting
  • [Mustillo]

Direct Manipulation Examples

  • © Franz J. Kurfess
  • name three applications or domains where direct manipulation
    • is appropriate
    • is not appropriate

Indirect Manipulation

  • © Franz J. Kurfess
  • in many industrial applications, objects on the computer screen stand for devices in the real world
  • manipulation of the screen objects may not directly constitute an identical manipulation of the real-world objects
  • feedback is required on two levels
    • directly from the user interface
    • indirectly, but more relevant from the real-world devices

Direct Manipulation Interfaces

  • © Franz J. Kurfess
  • powerful
    • expert users can work quickly, wide range of tasks
  • novice users can learn basic functionality quickly
    • either through self exploration or through a demonstration by a more experienced user.
    • no need to learn and remember complex commands
  • goal-oriented
    • users can see immediately if their actions are helping them realize their goals
    • if not, they can simply change the direction of their activity
  • error messages are rarely needed
  • [Shneiderman, Mustillo]

WIMP Interfaces

  • © Franz J. Kurfess
  • direct manipulation interfaces are characterized by
    • windows
      • to divide the screen into areas
    • icons representing objects
      • can be moved around the screen
    • mouse (or another pointing device)
      • used to manipulate objects on the screen
    • pop-up or pull-down menus
      • display the available options
  • [Mustillo]

WIMP Advantages

  • © Franz J. Kurfess
  • system as a whole is easily visible
    • objects are represented by icons
    • available menu options can be inspected by pulling down menus
  • basic actions are consistent across systems
    • opening, closing, copying, deleting, scrolling, etc.
    • makes learning easier
  • users are free to explore different aspects of the system
    • most actions can be ‘undone’ (reversed) if it does not have the desired or required effect
  • [Mustillo]

GUIs and Direct Manipulation

  • © Franz J. Kurfess
  • GUIs rely heavily on direct manipulation
    • have become synonymous with the WIMP interface
  • in addition to having all of the characteristics of DM and WIMP interfaces, GUIs are also strongly graphical
  • the primary interaction style is direct manipulation
  • [Mustillo]

Advantages of Direct Manipulation

  • © Franz J. Kurfess
    • easy to learn and remember
      • rely on recognition, not recall
    • comprehensible, predictable, and controllable
      • users experience less anxiety
      • users feel in control
    • visual: WYSIWYG
    • flexible, reversible actions
      • undo -> you can always choose to de-select a menu item
    • provide context, and instant visual feedback
    • exploit human use of visual-spatial cues
      • “a picture is worth a thousand words!”
    • less prone to errors
      • low typing requirement, visual feedback
      • less need for error messages
  • [Mustillo]

Problems with Direct Manipulation

  • © Franz J. Kurfess
    • not self-explanatory
      • not necessarily intuitive or obvious to first-time users
      • users must learn meaning of the visual representation
    • can be inefficient for high-frequency users
      • same tasks much faster/ more efficient with command languages
    • moving a mouse and pointing slower than pressing keys
    • repetitive tasks
      • users need a macro or scripting mechanism to handle repeated manipulations
    • limited accuracy
      • pointer system may not be accurate enough or sufficiently controllable for some tasks
  • [Mustillo]

GUI Example 1

  • © Franz J. Kurfess
  • ICL/Three River PERQ workstation
  • http://toastytech.com/guis/perqintranvid3.jpg

Movie: Advanced GUI, ca 1980

  • © Franz J. Kurfess
  • a marketing movie for the INTRAN software package for scientific design on the PERQ2 workstation
    • http://www.youtube.com/watch?v=Fap-mXY80ls&feature=gv&hl=en
      • computer stuff starts around the 2:00 min mark

GUI Example 2

  • © Franz J. Kurfess
  • Apple Lisa
  • http://www.minitrue.nl/essays/vanfresconaarjpeg/graph/lisa2.gif

GUI Example 3

  • © Franz J. Kurfess
  • Atari TOS
  • http://upload.wikimedia.org/wikipedia/en/0/07/ST_Desktop.png

GUI Example 4

  • © Franz J. Kurfess
  • Symbolics Lisp Machine (Macivory)
  • http://upload.wikimedia.org/wikipedia/en/f/f6/Debugger.gif

Natural Language Interaction

  • © Franz J. Kurfess
  • natural language (NL) to communicate and interact with a computer system
    • Such a system would have to be able to handle the vagueness, ambiguity, and ungrammatical constructions associated with natural language
  • ideally, a NL dialog should be based on speech input
    • speech recognition technology is still far from being perfect
    • users may have to rely on typing, which has its own problems
      • spelling errors, slow, verbose
  • not very widely accepted
  • [Mustillo]

Non-command Interfaces

  • © Franz J. Kurfess
  • no explicit commands
    • computer interprets observations of the user
  • ubiquitous computing, immersive computing
  • gesture recognition, user observation
  • intelligent agents, user preferences

Selection of Interaction Styles

  • © Franz J. Kurfess
  • considerations
    • who has control
    • ease of use for novice users
    • learning time to become proficient
    • speed of use (efficiency) once users become proficient
    • generality, flexibility, power
    • task requirements
    • user background
  • [Mustillo]

Task Requirements

  • © Franz J. Kurfess
  • high degree of data entry is required
    • fill-in forms are recommended, but a command-line interface may also be used
  • familiar notation exists
    • use a command-line interface
  • visual exploration is required
    • use a direct manipulation interface
  • users have poor keyboard skills
    • rely on menu selection and direct manipulation
  • [Mustillo]

User Background

  • © Franz J. Kurfess
  • novice users
    • use menu selection and direct manipulation
  • modest domain knowledge, some computer skills
    • use menu selection, direct manipulation, or fill-in forms
  • users work with the application on an intermittent basis
    • any interaction style may be used, but some form of help (user guide, on-line) may also be required
  • frequent users
    • use a command-line interface with macros, menu selection with type-ahead capability, direct manipulation with shortcuts, or a fill-in form with a dense display
  • [Mustillo]

Intelligent Agents

  • © Franz J. Kurfess
  • user conveys intentions
    • goals
    • critical parameters
  • computer handles mundane and tedious activities
  • less, but more effective interaction
  • computer acts more autonomously

Mobile Devices

  • © Franz J. Kurfess
  • Usage
  • Capabilities
  • Advantages
  • Limitations

Mobile Devices - Usage

  • © Franz J. Kurfess
  • often closer proximity to users
    • with the user most of the time
    • easy to carry
  • often multi-purpose devices
    • mobile phone, music player, camera, hand-held computer
  • essential professional or personal device
    • connectivity (phone, text messaging, email, Web)
    • organization (calendar, to do list, contacts, directions)
    • pleasure (music, photos, videos, e-books)

Mobile Devices - Capabilities

  • © Franz J. Kurfess
  • I/O capabilities
    • input
      • control and navigation (buttons; no mouse; cursor keys or limited pointing device; touch screen; gyroscope or accelerometer)
      • text (keyboard missing or small)
      • speech (microphone/head set)
    • output
      • visual: small screen
      • audio: small speaker, headphones
      • haptic: vibration
  • computational capabilities
    • limited memory, processing
  • connectivity
    • wired (USB)
    • wireless (cellular, Wi-Fi, Bluetooth, Infrared)

Mobile Devices - Advantages

  • © Franz J. Kurfess
  • quick & easy access
  • multiple functions in one device

Mobile Devices - Limitations

  • © Franz J. Kurfess
  • input and output constraints
    • buttons, keyboard, navigation
    • screen size
  • functional constraints
    • available functions are often not very sophisticated
  • proprietary or unusual interaction methods
    • touch gestures, (virtual) keyboard arrangement
  • synchronization with other devices
    • computer, home phone, car, …

Ubiquitous and Pervasive Computing

  • © Franz J. Kurfess
  • Usage
  • Capabilities
  • Advantages
  • Limitations

Ubiquitous Computing – Usage

  • © Franz J. Kurfess
  • task-specific devices with computing capabilities
    • entertainment systems
    • home security
    • phone
    • car navigation systems
  • core functionality augmented by computational capabilities
    • connectivity
    • additional functionality
    • better interaction

Ubiquitous Computing - Capabilities

  • © Franz J. Kurfess
  • core capabilities defined by the application are or task
    • often very limited
    • sometimes augmented for better functionality or interaction
  • Input
    • often buttons, remote control
  • Output
    • screen, audio, actuators (performing specific functions)
  • computational capabilities
    • often embedded microprocessors

Ubiquitous Computing - Advantages

  • © Franz J. Kurfess
  • familiar devices and tasks
  • added functionality for such devices
  • better interaction with devices
    • e.g. Tivo vs. VCR
  • connectivity between computers and household or personal devices

Ubiquitous Computing - Limitations

  • © Franz J. Kurfess
  • limited computational capabilities
  • limited interaction methods
  • coordination and synchronization

Overview Interaction Styles

  • © Franz J. Kurfess
  • Interaction Style
  • Batch
  • Command language
  • Fill-in Form
  • Question-and-Answer
  • Menu
  • Direct Manipulation
  • Non-Command
  • Natural Language
  • Mainly used In
  • Batch processing, e-mail
  • servers
  • Command-line interfaces
  • Full-screen interfaces
  • Command-line interfaces
  • Full-screen, WIMP, telephone-based interfaces
  • WIMP, virtual reality interfaces
  • Future interfaces, virtual reality
  • interfaces
  • Future interfaces
  • Main Characteristics
  • Does not require user intervention. Works even when user and computer are in a different time or place.
  • Easy to edit and reuse command history. Powerful
  • language can support very complex operations.
  • Many fields can be seen and edited at once.
  • Computer controls the user. Suited for casual use.
  • Frees user from remembering options, at cost of
  • potentially being slow or having confusing hierarchy.
  • User is in control. Enables metaphors from real world. Good for graphics.
  • User is freed to concentrate on the domain, and need to control the computer. Computer monitors users and interprets their actions.
  • Ideally, allows unconstrained input to handle frequently challenging problems.
  • [Mustillo]

Conclusions Interaction Styles

  • © Franz J. Kurfess
  • many interaction styles
  • not always possible to draw clear, unambiguous distinctions between different interaction styles
  • the selection of an appropriate interaction style depends on many factors
    • application, users, characteristics
    • tasks
      • simple, walk-up-and-use vs. browsing and data entry
    • time to complete the tasks
    • accuracy to complete the tasks
    • levels of experience
  • [Mustillo]


  • © Franz J. Kurfess


  • © Franz J. Kurfess
  • Criteria

Important Concepts and Terms

  • © Franz J. Kurfess
  • batch system
  • command-line interface
  • contextual task analysis
  • desktop
  • direct manipulation
  • forms
  • full-screen interface
  • goal
  • graphical user interface (GUI)
  • heuristic evaluation
  • hierarchical menu
  • human-machine interface
  • intelligent agent
  • interaction style
  • menu
  • mouse
  • natural language
  • networked menu
  • system language
  • task
  • task analysis
  • usability
  • user-centered design
  • user interface design
  • user language
  • user requirements
  • What You See Is What You Get” (WYSIWYG)
  • WIMP
  • window

Chapter Summary

  • © Franz J. Kurfess
  • practically all current interaction styles are variations of command-based interfaces
  • the currently predominant interaction style is the WIMP interface
    • windows, icons, mouse, pull-down menus
  • the selection among various possible interaction styles depends on user background, task requirements, technology, and economical factors
  • emerging technologies like natural language processing or intelligent agents may cause a shift towards non-command interfaces
  • © Franz J. Kurfess

The database is protected by copyright ©sckool.org 2016
send message

    Main page