Copyright © 2006 – Brad A. Myers Answering Why and Why Not Questions in User Interfaces Brad...
-
Upload
georgiana-ryan -
Category
Documents
-
view
220 -
download
3
Transcript of Copyright © 2006 – Brad A. Myers Answering Why and Why Not Questions in User Interfaces Brad...
Copyright © 2006 – Brad A.
Myers
Answering Why and Why Not Questions in
User Interfaces
Answering Why and Why Not Questions in
User Interfaces
Brad Myers, David A. Weitzman, Andrew J. Ko, and Duen Horng (“Polo”) Chau
Human Computer Interaction Institute
Carnegie Mellon University http://www.cs.cmu.edu/~bam
Brad Myers, David A. Weitzman, Andrew J. Ko, and Duen Horng (“Polo”) Chau
Human Computer Interaction Institute
Carnegie Mellon University http://www.cs.cmu.edu/~bam
Brad A. Myers, CMU 22
Modern Applications are Complex Modern Applications are Complex
WHY?
WHY?
Brad A. Myers, CMU 33
Complexities, cont.Complexities, cont.
WHY?
Brad A. Myers, CMU 44
Complexities, cont.Complexities, cont.
WHY?
WHY?
Brad A. Myers, CMU 55
Complexities, cont.Complexities, cont.
XX WHY NOT?
WHY?WHY?WHY?
WHY?
WHY? WHY?
Brad A. Myers, CMU 66
Why Do They Do That?Why Do They Do That?
Many of these features are useful most of the time
Interfaces will inevitably get more “intelligent” and helpful
No current help system can help users understand why behaviors happen at run-time Especially why they do not happen
Many of these features are useful most of the time
Interfaces will inevitably get more “intelligent” and helpful
No current help system can help users understand why behaviors happen at run-time Especially why they do not happen
Brad A. Myers, CMU 77
CRYSTAL
CRYSTAL
larificationslarificationsegardingegardingourouroftware using aoftware using aoolkit,oolkit,rchitecture andrchitecture andanguageanguage
larificationslarificationsegardingegardingourouroftware using aoftware using aoolkit,oolkit,rchitecture andrchitecture andanguageanguage
CrystalCrystal
User interfaces for asking Why and Why Not questions
Answers that are helpful
Object-oriented framework to make it easy to implement applications
Note: Not for existing applications
User interfaces for asking Why and Why Not questions
Answers that are helpful
Object-oriented framework to make it easy to implement applications
Note: Not for existing applications
Brad A. Myers, CMU 88
Crystal DemonstrationCrystal Demonstration
Implemented in Java Created a text editor to experiment with
Crystal features A few features copied from Microsoft
Word v11 (2003) Basic text editing with character and
paragraph properties Automatic spelling correction and
capitalization Complete Styles mechanism with inheritance
Ability to ask Why and Why Not questions
Implemented in Java Created a text editor to experiment with
Crystal features A few features copied from Microsoft
Word v11 (2003) Basic text editing with character and
paragraph properties Automatic spelling correction and
capitalization Complete Styles mechanism with inheritance
Ability to ask Why and Why Not questions
Brad A. Myers, CMU 99
Why Questions, 1Why Questions, 1
Why menu Easy to find Might be a submenu
of help Contains list of
most recent commands
Including commands not executed due to mode settings
Why menu Easy to find Might be a submenu
of help Contains list of
most recent commands
Including commands not executed due to mode settings
Brad A. Myers, CMU 1010
Why Questions, 2Why Questions, 2
Can hit “F1” key anywhereto ask about a location Users often know where the
problem is, but notwhat caused it
Might not be recent Drops a pink ? to show where
Pops up a menu of questions about objects under the mouse
Can also point to invisible objects Whitespace Objects that were deleted
Can hit “F1” key anywhereto ask about a location Users often know where the
problem is, but notwhat caused it
Might not be recent Drops a pink ? to show where
Pops up a menu of questions about objects under the mouse
Can also point to invisible objects Whitespace Objects that were deleted
Brad A. Myers, CMU 1111
Questions, 3Questions, 3
If don’t know to use “F1”, Why menu includes prompt for a location
If don’t know to use “F1”, Why menu includes prompt for a location
Brad A. Myers, CMU 1212
Specific QuestionsSpecific Questions
Can ask about specific properties of objects Fonts, paragraph properties
Or about more global changes teh The
Can ask about specific properties of objects Fonts, paragraph properties
Or about more global changes teh The
Brad A. Myers, CMU 1313
Questions about ControlsQuestions about Controls
Can ask about the user interface controls as well
What they do
Why grayed out
Can ask about the user interface controls as well
What they do
Why grayed out
Brad A. Myers, CMU 1414
AnswersAnswers People usually don’t really want to know
“why” They want to know “How do I fix this” Crystal’s answers show the specific user
interface controls that control the behavior
People usually don’t really want to know “why”
They want to know “How do I fix this” Crystal’s answers show the specific user
interface controls that control the behavior
Brad A. Myers, CMU 1515
18 items, 4 submenus
with16 more choices!
18 items, 4 submenus
with16 more choices!
Answers, cont.Answers, cont.
teh the ?? teh the ??
5 panes!
Brad A. Myers, CMU 1616
Answers, cont.Answers, cont.
teh the ?? teh the ??
13 panes!
Brad A. Myers, CMU 1717
Answers, cont.Answers, cont.
Brad A. Myers, CMU 1818
Answers, cont.Answers, cont.
If complex, multi-part answer, then provides multiple “How can I…” questions for each part E.g., for Styles
If complex, multi-part answer, then provides multiple “How can I…” questions for each part E.g., for Styles
Brad A. Myers, CMU 1919
Implementation OverviewImplementation Overview
(Full details in the paper) Only a little more work than supporting Undo “Command object” architecture for actions
Command objects stored on a list for undo Programmer adds back pointers from objects
to the commands that changed them Add dependency
information for modevariables
Add special commands for actions not executed
Add extra invisible objects for whitespace and deletions
(Full details in the paper) Only a little more work than supporting Undo “Command object” architecture for actions
Command objects stored on a list for undo Programmer adds back pointers from objects
to the commands that changed them Add dependency
information for modevariables
Add special commands for actions not executed
Add extra invisible objects for whitespace and deletions
Brad A. Myers, CMU 2020
Implementation, cont.Implementation, cont. Crystal framework then builds Why
menus and answers automatically Crystal finds:
Objects under the mouse Commands that affected those objects User interface controls involved in those
commands Programmer can annotate some
commands to not include in menus E.g., regular typing Similar to heuristics for granularity of Undo
Crystal framework then builds Why menus and answers automatically
Crystal finds: Objects under the mouse Commands that affected those objects User interface controls involved in those
commands Programmer can annotate some
commands to not include in menus E.g., regular typing Similar to heuristics for granularity of Undo
Brad A. Myers, CMU 2121
User StudyUser Study Between participants, 10 in each group
One group had Why menus, other group didn’t 6 tasks, based on Microsoft support pages Example:
All tasks shown on video
Between participants, 10 in each group One group had Why menus, other group didn’t
6 tasks, based on Microsoft support pages Example:
All tasks shown on video
a) Type in the following sentence “The abbreviation fl. oz. stands for fluid ounce.”
b) You notice that the word processor has capitalized some characters for you, but you don’t want this to happen.
c) Your task is to make the automatic capitalization not happen again.
d) When you think you’re done, type “fl. oz. stands” again to make sure it works.
a) Type in the following sentence “The abbreviation fl. oz. stands for fluid ounce.”
b) You notice that the word processor has capitalized some characters for you, but you don’t want this to happen.
c) Your task is to make the automatic capitalization not happen again.
d) When you think you’re done, type “fl. oz. stands” again to make sure it works.
Brad A. Myers, CMU 2222
ResultsResults “Why” menus group completed 5.60 (93%) of
the tasks compared to 4.20 (70%) without 33% more completed F [1, 20] = 12.60, p < .005 on between-participants
ANOVA
“Why” menus group completed 5.60 (93%) of the tasks compared to 4.20 (70%) without 33% more completed F [1, 20] = 12.60, p < .005 on between-participants
ANOVACompletion Rate
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
1 2 3 4 5 6 AVERAGE
Task #
With Why Menu
Without
Brad A. Myers, CMU 2323
ObservationsObservations
Participants really liked the “Why” capability on the survey Wanted it in their applications
Diversity of use of F1 key vs. menu Desired questions were found easily in
the why menus
Participants really liked the “Why” capability on the survey Wanted it in their applications
Diversity of use of F1 key vs. menu Desired questions were found easily in
the why menus
Brad A. Myers, CMU 2424
VideoVideo
Brad A. Myers, CMU 2525
ConclusionsConclusions
Answering “Why” and “Why Not” questions is helpful and feasible
Should be added to all future applications
Answering “Why” and “Why Not” questions is helpful and feasible
Should be added to all future applications
WHY NOT?
Copyright © 2006 – Brad A.
Myers
Answering Why andWhy Not Questions in
User Interfaces
Answering Why andWhy Not Questions in
User Interfaces
Funded by NSF
Brad Myers, David A. Weitzman, Andrew J. Ko, and Duen Horng (“Polo”)
Chauhttp://www.cs.cmu.edu/~bam
Funded by NSF
Brad Myers, David A. Weitzman, Andrew J. Ko, and Duen Horng (“Polo”)
Chauhttp://www.cs.cmu.edu/~bam