620 likes | 836 Views
Dialog Design. Categories of Dialogs. Agenda. Dialog design Command Language WIMP - Window, Icon, Menu, Pointer Direct manipulation Speech/Natural language Gesture, pen, multi-touch, VR…. Dialog Design. How does a user interact with the interface?. Command Languages.
E N D
Dialog Design Categories of Dialogs
Agenda • Dialog design • Command Language • WIMP - Window, Icon, Menu, Pointer • Direct manipulation • Speech/Natural language • Gesture, pen, multi-touch, VR… IAT 334
Dialog Design • How does a user interact with the interface? IAT 334
Command Languages • Earliest UI interaction paradigms • Examples • MS-DOS shell • UNIX shell IAT 334
CL Attributes • Work primarily by recall, not recognition • Heavy memory load • Little or nothing is visibleso… • Poor choice for novicesbut... IAT 334
CL Attributes • Specify commands to operate on current data collection • User only controls initiation • Single thread of control • Some other display area needed IAT 334
CL Advantages • Advantages for experts • Speed, conciseness • % ls<ret> • Can express actions beyond a limited set • Flags, pipes • Repetition, extensibility • Scripts, macros • Easier implementation, less overhead • Power • eg. Wild cards IAT 334
CL Dangers • With added power, comes added responsibility and danger • UNIX % rm -r * • Deletes every file that you have, and you can’t get them back IAT 334
CL Reflection • Command languages are often maligned (for good reason) • But increased functionality can win out over bad UI (e.g., LINUX) • Try to get both • Avoid excess functionality (comes at cost) IAT 334
CL Design Goals • Consistency • Syntax, order • Good naming and abbreviations • Doing your homework in design can help alleviate some of the negatives IAT 334
Consistency • Provide a consistent syntax • In general: Have options and arguments expressed the same way everywhere • UNIX fails here because commands were developed by lots of different people at different organizations • No guidelines provided IAT 334
Dialog Order • English: SVO subject verb object • CL: S assumed (you) Is VO or OV better? % rm file % file rm • VdOiO vs. ViOdO % printfilethePrinter % lpr -PthePrinterfile IAT 334
Dialog Order • Technical issues dictate the choice: • ViOdO % lpr -PthePrinterfile • The command must parse the arguments • So the command comes first • Flags control how to act on the file • Want to parse all flags before checking files • e.g. -o outputFile IAT 334
Syntax • Pick a consistent syntax strategy • Simple command list • eg., vi minimize keystrokes • Commands plus arguments • realistic, can provide keyword parameters • % cp from=foo to=bar • Commands plus options plus arguments • what you usually see IAT 334
Terminology • Keep terminology consistent • Same concept expressed with same options • Useful to provide symmetric (congruent) pairings • forward/backward • next/prev • control/meta IAT 334
Example • vi text editor w - forward word b - backward word • Wouldn’t ‘f’ be better for forward? ‘f’ already used • How about ‘fw’ and ‘bw’? Extra keystrokes IAT 334
Ordering • Keep ordering consistent • VO seems to be the most natural • Typically need to pick where options go • Example • % ln -s file1 file2 (I can never remember) • Think of % cp file1 file2 IAT 334
Names and Abbreviations • Specificity versus Generality • General words • More familiar, easier to accept • Specific (typically better) • More descriptive, meaningful, distinctive • (Nonsense does surprisingly well in small set) IAT 334
Abbreviations IAT 334
Abbreviations • Abbrevs. allow for faster actions • Expert performance begins to be dominated by motor times such as # of keystrokes • Not good idea for novices • (Allow but don’t require) • IBM CMS and DEC VMS had shortened commands- first unique characters were enough • filelist -- f, fi, fil, file, filel, fileli, filelis, filelist IAT 334
Picking Good Abbrevs. • Strategies • Simple truncation (works best, but conflicts) • Vowel drop plus truncation (avoid conflicts) • First and last letters • First letters of words in a phrase • Standard abbrev from other contexts • qty, rm, bldg • Phonics • xqt IAT 334
Abbrv Gdlns • Use single primary rule (with single fallback for conflicts) • Use fallback as little as possible • Mark use of fallback in documentation • Let user know primary and secondary rules • Truncation is good but generates conflicts • Fixed length is better than variable length • Don’t use abbrevs in system output IAT 334
Agenda • Dialog design • Command Language • WIMP - Window, Icon, Menu, Pointer • Direct manipulation • Speech/Natural language • Gesture, pen, multi-touch, VR… IAT 334
WIMP • Focus: Menus, Buttons, Forms • Predominant interface paradigm now (with some direct manipulation added) • Advantages: • ? IAT 334
Recognition • Recognition is easier than recall! • Recall has one cue • Recognition has the recall cue + the presence of the prompting word/icon IAT 334
Menus • Key advantages: • 1 keystroke or mouse operation vs. many • No memorization of commands • Limited input set IAT 334
Menus • Many different types • pop-up • pull-down • radio buttons • pie buttons • hierarchies IAT 334
Menu Items • Organization strategies • Create groups of logically similar items • Cover all possibilities • Ensure that items are non-overlapping • Keep wording concise, understandable IAT 334
Bad Example • Travel web page links: • Flight page • 3 Best Itineraries • Flights & Prices • Timetables • Fares • Which do you choose for reservations? IAT 334
Presentation Sequence • Use natural if available • Time • e.g. Breakfast, Lunch, Dinner • Numeric ordering • e.g. Point sizes for font • Size • Canada-> BC -> Surrey IAT 334
Presentation Sequence • Choices • Alphabetical • Group related items • Frequently used first • Most important first • Conventional order (MTWRF) • Don’t change the order on the fly! IAT 334
Presentation Sequence • User studies • Novices: alpha > functional > random • Experts: categorization • How would you do it in general? IAT 334
Presentation Sequence • One possible methodology (first->last) • Natural order (if it exists) • Frequency of use • Order of use • Categorical • Alphabetical • Don’t change dynamically! IAT 334
Agenda • Dialog design • Command Language • WIMP - Window, Icon, Menu, Pointer • Direct manipulation • Speech/Natural language • Gesture, pen, multi-touch, VR… IAT 334
Direct Manipulation • Continuous visibility of the objects and actions of interest • Rapid, incremental actions • Reversibility of all actions to encourage experimentation • Syntactic correctness of all actions—every action is syntactically legal • Replacement of command language syntax by direct manipulation of object of interest IAT 334
Direct Manipulation • Examples • WYSIWYG editors and word processors • VISICALC - 1st electronic spreadsheet • CAD • Desktop metaphor • Video games IAT 334
DM Syntax • Typical DM syntax is postfix • DirectObjects first, Verb second • In this case, the command completes the utterance • Enables separate selection syntax • Indirect objects typically specified before direct objects • e.g. brush size before painting in Photoshop IAT 334
DM Essence • Representation of reality that can be manipulated • The user is able to apply intellect directly to the task • Don’t have to name things, just touch them • The tool itself seems to disappear IAT 334
DM Advantages • Easier to learn & remember • Direct WYSIWYG • Flexible, easily reversible actions helps reduce anxiety in users • Provides context & instant visual feedback • Exploits human use of visual spatial cues • Limits types of errors IAT 334
DM Problems • Takes of screen space • Need to learn meaning of components of visual representation • Visual representation must be learned • Mouse ops may be slower than typing • Not self-explanatory (no prompts) IAT 334
Direct Manipulation is Locality • DM Relies on a primary geometric organization • Items located nearby are frequently edited together • The words in a sentence • A column of numbers in a spreadsheet • Less related -> Less local -> Less DM! IAT 334
DM Problems • Not good at • Repetition • History keeping (harder) • Certain tasks (Change all italics to bold) • Macros harder • Abstract elements (variables) IAT 334
What is Directness? • Related to three things: • Physical Distance • “Gulfs” between user’s goals & system image • Engagement Hutchins, Hollan, Norman ‘86 IAT 334
Execution Goals System Evaluation Distance: Two “Gulfs” • Gulf of execution • Distance between user’s goals and means of achieving them in system • Does the system allow the user to do what the user wants to do? • Gulf of evaluation • Amount of effort person must expend to interpret system state and judge if intention was achieved • Can user perceive if progressing favorably? IAT 334
Directness and Distance • Two types • Semantic - Relation between what user wants to express and what is available in interface • Can I say what I want (concisely)? • Articulatory - Relation between meanings of expressions and their physical form(s) • Is the way to perform an action expected and clear (appropriate)? IAT 334
Engagement • Feeling that you are directly manipulating the objects of interest • Promoted by • Unobtrusive interface • Minimizing gulfs of execution and evaluation • Appropriately responsive system IAT 334
Agenda • Dialog design • Command Language • WIMP - Window, Icon, Menu, Pointer • Direct manipulation • Speech/Natural language • Gesture, pen, multi-touch, VR… IAT 334
Speech Input • Speech synthesis • Speaker recognition • Speech recognition • Natural language understanding IAT 334
English Speech • Made up of 40 phonemes, 24 consonants and 16 vowels IAT 334
Speech Synthesis • Often hear robotic voice • Store tones, then put them together • The transition is the difficult thing to do IAT 334