Anthony Tang, acknowledgements to Saul Greenberg

Slides:



Advertisements
Similar presentations
Interaction Techniques Level 2 Prepared by: RHR First Prepared on: Nov 23, 2006 Last Modified on: Quality checked by: MOH Copyright 2004 Asia Pacific Institute.
Advertisements

User Interface. What is a User Interface  A user interface is a link between the user and the computer. It allows the user and the computer to communicate.
Lecture 7 Date: 23rd February
User Interface Design: Methods of Interaction. Accepted design principles Interface design needs to consider the following issues: 1. Visual clarity 2.
Chapter 2: Understanding and conceptualizing interaction
Dialog Design Command languages, direct manipulation, and WIMP.
Chapter 2: Understanding and conceptualizing interaction Question 1.
Chapter 11: Interaction Styles. Interaction Styles Introduction: Interaction styles are primarily different ways in which a user and computer system can.
11.10 Human Computer Interface www. ICT-Teacher.com.
The ID process Identifying needs and establishing requirements Developing alternative designs that meet those requirements Building interactive versions.
AVI/Psych 358/IE 340: Human Factors Interfaces and Interaction September 22, 2008.
E.g.: MS-DOS interface. DIR C: /W /A:D will list all the directories in the root directory of drive C in wide list format. Disadvantage is that commands.
CMPF124: Basics Skills for Knowledge Workers Manipulating Windows GUI.
Fall 2002CS/PSY Dialog Design 2 Direct Manipulation 1) Continuous visibility of the objects and actions of interest 2) Rapid, reversible, incremental.
Conceptual Model Design Informing the user what to do Lecture # 10 (a) Gabriel Spitz.
Styles of User Interface. Learning Objectives: By the end of this topic you should be able to: describe the characteristics of different styles of user.
Human Computer Interface INT211
Operating System Concepts Three User Interfaces Command-line Job-Control Language (JCL) Graphical User Interface (GUI)
A disciplined approach to analyzing malfunctions –Provides feedback into the redesign process 1.Play protocol, searching for malfunctions 2.Answer four.
Systems and User Interface Software. Types of Operating System  Single User  Multi User  Multi-tasking  Batch Processing  Interactive  Real Time.
Conceptual Model Design Informing the user what to do Lecture 10a Gabriel Spitz 1.
Chapter 2 – Introduction to Windows Operating System II Manipulating Windows GUI 1CMPF112 Computing Skills for Engineers.
Mr L Challenor ICT Teacher BTEC IT Unit 02 - Lesson 06 Computer Software.
Chapter 6 : User interface design
Section 2.1 Section 2.2 Identify hardware
Development Environment
Running a Forms Developer Application
Tech Level Cyber Security
Image by MIT OpenCourseWare Troughput (bps) Error rate (%) Mouse Trackball Joystick Touchpad.
Lesson Objectives Aims You should be able to:
CIS 376 Bruce R. Maxim UM-Dearborn
Introduction to Event-Driven Programming
11.10 Human Computer Interface
Event-driven programming
BASIC COMPUTERS Merced Adult School
Console and GUI Programs
Excise Tasks CS 4640 Programming Languages for Web Applications
Human Computer Interface
Robustness of handwriting recognition systems
Unit 2 User Interface Design.
P4: Write-Up Write this as if it’s going to be sent to the boss of your company (boss of your boss) What was the design problem? What did you do for user.
Human Computer Interaction (HCI)
Lesson 1: Buttons and Events – 12/18
Software engineering USER INTERFACE DESIGN.
Exploring the Basics of Windows XP
Learning Java with Alice 3.0 Game Design Kathy Bierscheid
Introduction to Microsoft Windows
Human Computer Interface
Human Computer Interface
Exploring the Basics of Windows XP
Dialog Design 2 Direct Manipulation
GRAPHICAL USER INTERFACE
Introduction UI designer stands for User Interface designer. UI designing is a type of process that is used for making interfaces in the software or the.
Human Computer Interface
Human Computer Interface
An Introduction to Computers and Visual Basic
Proper functionality Good human computer interface Easy to maintain
Cognitive models linguistic physical and device architectural
Chapter 12 cognitive models.
Human Computer Interaction Lecture 24 Cognitive Models
Human and Computer Interaction (H.C.I.) &Communication Skills
Human/Computer Interface
Human and Computer Interaction (H.C.I.) &Communication Skills
Chapter 12 cognitive models.
What is Interaction? Communication User  System
Software Development Techniques
An Introduction to the Windows Operating System
Presentation transcript:

Anthony Tang, acknowledgements to Saul Greenberg Direct Manipulation CPSC 481: HCI I Fall 2014 http://www.hpl.hp.com/techreports/96/HPL-96-152.pdf http://www.ifs.tuwien.ac.at/~silvia/wien/vu-infovis/articles/hutchins_1985_direct-manipulation.pdf Anthony Tang, acknowledgements to Saul Greenberg

Learning Objectives By the end of this lecture, you should be able to: » Describe the benefits and drawbacks of direct manipulation » Define "engagement" and "distance" in the context of direct manipulation » Distinguish between gulf of execution and gulf of evaluation » Define both semantic and articulatory distance

Outline Direct manipulation What does “direct” mean? » engagement » distance » semantic and articulatory distances

WIMP <==> GUI Windows, Icons, Menus, Pointers Main lesson: Easier to find things (recognize) than it is to remember things (CLI) A window runs a self-contained program, isolated from other programs that (if in a multi-program operating system) run at the same time in other windows . Developed by Gene McDaniel at PARC An icon acts as a shortcut to an action the computer performs (e.g., execute a program or task). A menu is a text or icon-based selection systems that selects and executes programs or tasks. The pointer is an onscreen symbol that represents movement of a physical device that the user controls to select icons, data elements, etc. Pejorative use

Direct Manipulation is a “Researcher”-originated term People invented GUIs People liked GUIs Researchers’ articulation/characterization of what it is about GUIs that make them likable/effective => “Direct manipulation” Carry these lessons forward, beyond particular instantiations

Example: Copy command (DOS) Copies files from one location to another. The destination defaults to the current directory. > copy file1 [destination] If multiple files are to be copied, the destination must be a directory, or an error will result. > copy file1 file2 file3 [destination] Files may be copied to devices. To send file to printer: > copy file lpt1 To display file on screen ("console"): (alternatively: type file) > copy file con > No feedback given after one of these commands; just a prompt > Equivalent Unix command: cp

SQL Queries “Which companies sell everything that WalMart sells?” (List companies such that there does not exist an item sold by Walmart that they do not sell.) select distinct X.name from suppliers X where 0 = (select count (*) from suppliers Y where Y.name = “WalMart” and 0 = (select count (*) from suppliers Z where Z.name = X.name and Z.item = Y.item)) Don’t scrutinize my SQL ;-)

Compare and Contrast Interaction Styles EdgeMaps Command Line What makes these two things kind of different? Directness and Engagement See video for edgemaps here: http://mariandoerk.de/edgemaps/

“Direct Manipulation” in terms of GUI mechanics Continuous representation of the object of interest Physical actions or labeled button presses instead of complex syntax » copying a file: cp foo.txt /home/tonyt vs. dragging file icon to my home folder Rapid incremental reversible operations whose impact on the object of interest is immediately visible » think about EdgeMaps Output representation can be operated on as input

Direct Manipulation: benefits Novices can learn quickly, e.g. through demonstration Error messages are rarely needed » actions are constrained by the interaction syntax Users can see immediately if actions are furthering goals, and if not, they can change the direction of their activity

Direct Manipulation: weaknesses

Direct Manipulation: weaknesses Ill-suited for abstract operations Tedious » manually searching a database vs. query » or some other repeated operation Inability to deal with variables / semantic symbols What about tasks for the future With DM, user is responsible for doing everything; but some tasks are better achieved by delegating! e.g. spell checking repetitive actions are tedious! Moving a mouse around the screen can be slower than pressing function keys to do same actions

“Directness” more abstractly… DIRECTNESS = ENGAGEMENT + minimal DISTANCE Engagement: feeling of power/control Distance: effort to communicate/execute one’s goals, and to evaluate system state Think about gestural interactions, voice interactions, etc.

Engagement http://www.hpl.hp.com/techreports/96/HPL-96-152.pdf Time What I wanted to get done Done the way I expected it to get done

Engagement I hate this image. It is so hard to understand whether it’s going to do the right thing But anyway, this is kind of like having that engagement in terms of what you would like to have done. You are essentially telling someone else what you would like to have done, and the system lets you know whether something got done

Engagement Another way to think about this is in terms of “locus of control.” In terms of the outcome: Do I feel like I am in control? Do I feel like the system is in control?

Black Ops 2 Engagement is not static Changes with experience, context, etc.

Distance and the Gulfs… Gulf of execution: ability to express my desires/intentions to the system Gulf of evaluation: ability to understand what system is communicating to me What’s important here: It’s about a dialogue between the user and the system It’s a TWO WAY THING So, on the one hand, it does have a little to do with a person’s capacity: reaction, eye-hand coordination, knowledge But it also has to do with the system’s capacity to: speak in the person’s language, efficiency, expressivity.

Zork

King’s Quest http://www.agdinteractive.com/games/kq2/about/about.html

Distance: communication Semantic distance » is it possible to say what I want to say? » can it be said concisely? Articulatory distance » how difficult is it to “physically” express these meanings? http://www.paulgraham.com/avg.html Semantic distance: -- in a GUI: can I say: repeat this action multiple times? -- in a console, … Limits of a language. If you know multiples language Articulatory distance: how many key presses, how much to move the mouse, etc.

Any musicians out there? David Garrett http://cdn.mos.musicradar.com/images/carouselimages/ableton-live-9-session-carousel-450-80.jpg Skill – in evaluation, and execution

Another way of viewing interaction http://www.ifs.tuwien.ac.at/~silvia/wien/vu-infovis/articles/hutchins_1985_direct-manipulation.pdf These are not always in sync with one another (i.e. may be using different modality) How the system responds to you may not be in the same medium that you communicate with it in For example: voice commands/number presses to have a system do something (say on the phone) Or voice dictation That’s why listening to voice menus is such a pain in the butt. It’s this huge gulf of evaluation and huge gulf of execution. Not allowing me to express what I want to express (gulf of execution). Making me wait for the entire message (gulf of evaluation). Some systems: you can say a one or two word thing to trigger a particular menu. But, isn’t it better to talk to someone often? Minimize gulf of execution Minimize gulf of evaluation

Learning Objectives You should now be able to: » Describe the benefits and drawbacks of direct manipulation » Define "engagement" and "distance" in the context of direct manipulation » Distinguish between gulf of execution and gulf of evaluation » Define both semantic and articulatory distance