CSC 8570 -- USI CSC 8570 -- USI Class Meeting 3 Class Meeting 3 January 23, 2009 January 23, 2009
Jan 04, 2016
CSC 8570 -- USICSC 8570 -- USI
Class Meeting 3Class Meeting 3
January 23, 2009January 23, 2009
Course TextbookCourse Textbook
Carroll, Carroll, HCI Models, Theories, and HCI Models, Theories, and Frameworks Frameworks is no longer readily is no longer readily available for reasonable cost.available for reasonable cost.
Copies of relevant chapters will be Copies of relevant chapters will be provided.provided.
Homework for TodayHomework for Today
Research team membership Research team membership – FinishedFinished
Research areasResearch areas– Comments sentComments sent
Creating TablesCreating Tables
Concerns:Concerns: 6 of 12 tables didn’t follow 6 of 12 tables didn’t follow
specifications and example rowspecifications and example row Several examples of header row (not Several examples of header row (not
required by specs) poorly formatted required by specs) poorly formatted or with less helpful labelsor with less helpful labels
Where is Gregor?Where is Gregor?
One of the initial questionsOne of the initial questions
Process vs. systemProcess vs. system Systems:Systems:
– Google Maps (maybe Satellite View)Google Maps (maybe Satellite View)– Google EarthGoogle Earth– Personal GPS (maybe phone-based)Personal GPS (maybe phone-based)
Where is Gregor? (2)Where is Gregor? (2)
Process:Process:– Use GPS, read off coordinatesUse GPS, read off coordinates– Read from map Read from map – Read from mapping softwareRead from mapping software
Where is Gregor? (3)Where is Gregor? (3)
Example: Google EarthExample: Google Earth Start Google EarthStart Google Earth Enter “Villanova University” in search Enter “Villanova University” in search
dialog boxdialog box Drag map to center on statueDrag map to center on statue Zoom to highest resolutionZoom to highest resolution Point to statuePoint to statue Read coordinates:Read coordinates:
– 404002’15.92”N 7502’15.92”N 7520’29.53”W20’29.53”W
Where is Gregor? (4)Where is Gregor? (4)
Example: Garmin GPSExample: Garmin GPS Push “on” button, label with light Push “on” button, label with light
iconicon Wait for satellite acquisitionWait for satellite acquisition Push “Page” buttonPush “Page” button Place GPS at Gregor’s feet and read Place GPS at Gregor’s feet and read
locationlocation– 4040 02.290’ N 75 02.290’ N 75 20.505’ W 20.505’ W
Where is Gregor? (5)Where is Gregor? (5)
Questions:Questions:
1.1. How do the two answers compare?How do the two answers compare?
2.2. How big is one hundredth of a How big is one hundredth of a second?second?
3.3. How big is one thousandth of a How big is one thousandth of a minute?minute?
GeneralizingGeneralizing
How do users interact with the How do users interact with the interface? Historically,interface? Historically,
Push the Read buttonPush the Read button Type a command at the prompt and Type a command at the prompt and
press Enterpress Enter Work with a widgetWork with a widget
Interacting with the InterfaceInteracting with the Interface
Issues are:Issues are: Types of interface widgetsTypes of interface widgets Methods of interactionMethods of interaction Formal notation for interactionsFormal notation for interactions Extensions to the Keystroke Level ModelExtensions to the Keystroke Level Model Timings for each simple interactionTimings for each simple interaction Interactions for control vs. for contentInteractions for control vs. for content QuasimodesQuasimodes Others?Others?
Interface ExamplesInterface Examples
Focus on battery operated devices on our Focus on battery operated devices on our first week’s list and other small interfacesfirst week’s list and other small interfaces– Remote car lock controlRemote car lock control– WatchWatch– Cell phoneCell phone– IPodIPod– Laptop computerLaptop computer– PDAPDA– Programmable thermostatProgrammable thermostat– Simple calculatorSimple calculator
Interface Examples (2)Interface Examples (2)
NotationNotation
How should we describe interactions How should we describe interactions with (or actions taken with) the with (or actions taken with) the interface devices?interface devices?
Time for some discovery groupsTime for some discovery groups
Group WorkGroup Work
Pair up by threesPair up by threes Create a list of simple (atomic?) widgets Create a list of simple (atomic?) widgets
that appear in interfaces. Consult the list that appear in interfaces. Consult the list of examples, generalize, then synthesize.of examples, generalize, then synthesize.
For each item on the list, state the actions For each item on the list, state the actions that can be performed on it.that can be performed on it.
Suggest a notation for each action Suggest a notation for each action expressed in a way that it is easy to form a expressed in a way that it is easy to form a sequence of actions.sequence of actions.
Group Work (2)Group Work (2)
Notes:Notes: Distinguish between physical devices Distinguish between physical devices
and actions on them and interface and actions on them and interface widgets and actions on them. Both widgets and actions on them. Both types should be on your list.types should be on your list.
Group Work SummaryGroup Work Summary
Construct the union table of widgets Construct the union table of widgets and actions on them.and actions on them.
Invent the formal notation for Invent the formal notation for describing the actions.describing the actions.
Create some examples of performing Create some examples of performing tasks using these widgets, tasks using these widgets, expressing the method in the formal expressing the method in the formal notation.notation.
Interface WidgetsInterface Widgets
Physical devicesPhysical devices– KeyboardKeyboard– Graphical Interface Device (GID)Graphical Interface Device (GID)
Point, buttonsPoint, buttons
– Touch padTouch pad Gestures, point, tapGestures, point, tap
Virtual devicesVirtual devices– Programmed as objects and methodsProgrammed as objects and methods– SummarySummary
Syntax vs. semanticsSyntax vs. semantics
Interface Widgets (2)Interface Widgets (2)
The The linkedlinked chart shows the summary chart shows the summary of the group work.of the group work.
The chart will be revised asThe chart will be revised as– new widgets are created or discoverednew widgets are created or discovered– new actions are needednew actions are needed– new notation is invented new notation is invented
Interface ModelsInterface Models
Look at:Look at: Physical interfacePhysical interface Operations of physical interfaceOperations of physical interface Task setTask set Error costError cost
Error CostError Cost
Definition:Definition: The cost, measured in The cost, measured in time or keystroke level actions, time or keystroke level actions, needed to recover from an erroneous needed to recover from an erroneous action with a widget.action with a widget.
Example: Example: Mistyping “the” as “teh”. Mistyping “the” as “teh”. Error cost is four keystrokes: 2 Error cost is four keystrokes: 2 backspace and 2 for the correct keys.backspace and 2 for the correct keys.
Models of Physical ActionModels of Physical Action
Fitts’ Law: moving a cursor to a Fitts’ Law: moving a cursor to a targettarget
Keystroke Level (Card & Moran): Keystroke Level (Card & Moran): timing predictions for a task timing predictions for a task represented as a sequence of represented as a sequence of “physical” operations“physical” operations
Hick’s Law: time for choosing among Hick’s Law: time for choosing among a number of widgetsa number of widgets
Fitts’ Law QuestionsFitts’ Law Questions
How does Fitts’ Law generalize to 2-How does Fitts’ Law generalize to 2-dimensional targets?dimensional targets?– Where does the user aim?Where does the user aim?– Where does the user land?Where does the user land?– What path is followed?What path is followed?– What happens with partially hidden What happens with partially hidden
targets?targets?
Notations for ActionsNotations for Actions
Actions for a keyboard and graphical input Actions for a keyboard and graphical input device (GID) include:device (GID) include:
Tap: pressing and immediately releasing a Tap: pressing and immediately releasing a key. Implemented with a momentary key. Implemented with a momentary contact (spring-loaded) switch.contact (spring-loaded) switch.
Click: Position the GID and tap the GID Click: Position the GID and tap the GID button.button.
Double click: Position the GID and tap the Double click: Position the GID and tap the GID button twice quickly, without GID button twice quickly, without repositioning.repositioning.
Notation for Actions (2)Notation for Actions (2)
Keystroke Level ModelKeystroke Level Model– K[ ], a keystroke. E.g. K[b] means K[ ], a keystroke. E.g. K[b] means
tapping lower case btapping lower case b– P, pointing. E.g. positioning the GIDP, pointing. E.g. positioning the GID– H, homing. E.g. moving from keyboard H, homing. E.g. moving from keyboard
to GID or GID to keyboardto GID or GID to keyboard– M, mental processingM, mental processing– R, respondingR, responding
Notations for Action (3)Notations for Action (3)
What does the descriptionWhat does the description
To create a right justified paragraph, To create a right justified paragraph, use Control + .use Control + .
ask you to do?ask you to do?
Notations for Action (4)Notations for Action (4)
More actions:More actions: Press and hold a keyPress and hold a key Release a keyRelease a key
– But on what signal or input?But on what signal or input?
Notations and Actions (5)Notations and Actions (5)
Raskin/BeckRaskin/Beck– Press and hold: Press and hold: bb– Release: Release: bb– Tap: Tap: bbbb, shortened to , shortened to bb or just or just bb– Release on signal: Release on signal: bb[ ][ ]– Note that key names are italicizedNote that key names are italicized
Examples:Examples:– Create an upper case M: Create an upper case M:
ShiftShiftmmmmShiftShift, shortened to , shortened to ShiftShiftmm
Notations for Action (6)Notations for Action (6)
Examples (continued)Examples (continued)– Distinguish between Distinguish between EnterEnter and and E n t e r E n t e r
EnterEnter is the name of a key and is the name of a key and E n t e r E n t e r is short for is short for EEnntteerr
– bb[20] gives a string of [20] gives a string of bbss– CtrlCtrlAltAltDelDelbrings up the Task brings up the Task
ManagerManager– Drag is the same as Drag is the same as LMBLMB↓↓LMB↑LMB↑[on target][on target]
GOMSGOMS
Model for user interactionModel for user interaction
Goal: Goal: task to be accomplishedtask to be accomplished Operators: Operators: set of atomic actions provided set of atomic actions provided
by systemby system Methods: Methods: set of sequences of operators. set of sequences of operators.
Each sequence accomplishes the goalEach sequence accomplishes the goal Selection rule: Selection rule: Governs which method the Governs which method the
user chooses to useuser chooses to use
GOMS (2)GOMS (2)
Example:Example: Goal: Goal: Unlocking the rear doors on a Unlocking the rear doors on a
car using a three-button remote car using a three-button remote control. control.
Operators: Operators: {Lock, Unlock, Panic}{Lock, Unlock, Panic} Methods: Methods: {Double click Unlock}{Double click Unlock} Selection Rule:Selection Rule: {Only method {Only method
available}available}
GOMS (3)GOMS (3)
Example:Example: Goal: Goal: Selecting an item from a menuSelecting an item from a menu Method: Method:
– Find menu headingFind menu heading– Point cursor at menu headingPoint cursor at menu heading– Click “mouse” button (displaying menu entries)Click “mouse” button (displaying menu entries)– Find desired entryFind desired entry– Point cursor atPoint cursor at menu entrymenu entry– Click “mouse” button (choosing menu option)Click “mouse” button (choosing menu option)
GOMS (4)GOMS (4)
Assume that you manage your email Assume that you manage your email messages using a hierarchy of messages using a hierarchy of folders that is at least five levels folders that is at least five levels deep. Develop a GOMS analysis for deep. Develop a GOMS analysis for deleting a message in a level three deleting a message in a level three folder when you currently are folder when you currently are reading messages in your inbox (a reading messages in your inbox (a level one folder). level one folder).
Research ProjectResearch Project
Teams (done)Teams (done) Areas (should be narrowed, can be Areas (should be narrowed, can be
revised)revised) HypothesisHypothesis Independent variablesIndependent variables Dependent variablesDependent variables
Research Project (2)Research Project (2)
SourcesSources– ACM Digital LibraryACM Digital Library– Science Citation IndexScience Citation Index– Web, but be carefulWeb, but be careful– Conference proceedings, MSC 159Conference proceedings, MSC 159
BibliographyBibliography– Entered into EndNoteEntered into EndNote
Research Project (3)Research Project (3)
IRBIRB Form Form– Consent formConsent form– Data gathering processData gathering process
Research Project (4)Research Project (4)
Experimental designExperimental design– Between subjectsBetween subjects– Within subjectsWithin subjects
Sources of biasSources of bias Sources of subjectsSources of subjects Logic of conclusionsLogic of conclusions
Next TimeNext Time
Carry out research project activitiesCarry out research project activities Create a GOMS model for Create a GOMS model for
constructing the table of sums of constructing the table of sums of powers of 2. The methods must be powers of 2. The methods must be at the keystroke level and include at the keystroke level and include the 45 keystrokes necessary to enter the 45 keystrokes necessary to enter the data.the data.
Next Time (2)Next Time (2)
Research projectResearch project– Submit hypothesis, independent Submit hypothesis, independent
variables, dependent variablesvariables, dependent variables– Submit draft of IRB formSubmit draft of IRB form– Submit bibliography as printed from Submit bibliography as printed from
EndNoteEndNote
HandoutsHandouts
Reprint of Chapter 3, Carroll, Reprint of Chapter 3, Carroll, HCI HCI Theories, Models, Frameworks. Theories, Models, Frameworks. The The chapter, written by Scott MacKenzie, chapter, written by Scott MacKenzie, deals with motor behavior models.deals with motor behavior models.