Prevent Errors Do not let the user make the mistake in the first place. Limit choices –Hide or gray out unusable functions Look ahead –Have the system.

Slides:



Advertisements
Similar presentations
Chapter 3: Editing and Debugging SAS Programs. Some useful tips of using Program Editor Add line number: In the Command Box, type num, enter. Save SAS.
Advertisements

Tutorial 8: Developing an Excel Application
© De Montfort University, Characteristics of Good Dialogues Howell Istance Department of Computer Science De Montfort University.
Tailoring Needs Chapter 3. Contents This presentation covers the following: – Design considerations for tailored data-entry screens – Design considerations.
Lecture 2Slide 1 Event Driven Computing Basic Interaction Handling –Interactive programs - must pay attention to the user interface.
XP New Perspectives on Microsoft Office Access 2003, Second Edition- Tutorial 2 1 Microsoft Office Access 2003 Tutorial 2 – Creating And Maintaining A.
11 INSTALLING WINDOWS XP Chapter 2. Chapter 2: Installing Windows XP2 INSTALLING WINDOWS XP  Prepare a computer for the installation of Microsoft Windows.
7M701 1 User Interface Design Sommerville, Ian (2001) Software Engineering, 6 th edition: Chapter 15
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 12: Managing and Implementing Backups and Disaster Recovery.
PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 1.
Chapter 5 Attention and Memory Constraints Presentation By: Sybil Calvillo.
Creating And Maintaining A Database. 2 Learn the guidelines for designing databases When designing a database, first try to think of all the fields of.
Errors & Error Assistance Discussion Section Wed 8:30-9:30 & Thu 1:30-2:30 Introductory HCI: User Interface Design, Prototyping, and Evaluation CSE 440.
Systems Software Operating Systems.
User Interface Design Principles Gabriel Spitz 1 Lecture # 4.
Teaching and Learning with Technology  Allyn and Bacon 2002 Introduction to Personal Computers in the Classroom Chapter 3 Teaching and Learning with Technology.
User Characteristics & Design Principles Gabriel Spitz 1 Lecture # 11.
CHAPTER 4: INTRODUCTION TO COMPUTER ORGANIZATION AND PROGRAMMING DESIGN Lec. Ghader Kurdi.
Ch 26 & 27 User Interfaces.
Basic Navigation in SAP For the Windows Graphical User Interface (GUI) Click your mouse anywhere or select “Page Down” to scroll through the pages.
Errors & the Art of Error Assistance CSE 440 Autumn 2008.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment, Enhanced Chapter 12: Managing and Implementing Backups and Disaster Recovery.
1 Computing Software. Programming Style Programs that are not documented internally, while they may do what is requested, can be difficult to understand.
CS 4720 Usability and Accessibility CS 4720 – Web & Mobile Systems.
CSC 480 Software Engineering Lecture 19 Nov 11, 2002.
©RavichandranUser interface Slide 1 User interface design.
How to construct an interactive PowerPoint.  The first task is always content, content, content.  What are the lesson objectives?  Remember Miller’s.
Automating Database Processing Chapter 6. Chapter Introduction Design and implement user-friendly menu – Called navigation form Macros – Automate repetitive.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 7: Focusing on Users and Their Tasks.
Designing Interface Components. Components Navigation components - the user uses these components to give instructions. Input – Components that are used.
XP 1 Microsoft Word 2002 Tutorial 1 – Creating a Document.
1 Word 2010 Intro to Word – Part 2. 2 Steps for Creating a Document  Step 1: Open a Blank Document (New, or Open)  Step 2: Name the Document (Save As.
Windows Tutorial Common Objects ACOS: 1, 4. Using the Taskbar 1. Using the taskbar, you can switch between open programs and between open documents within.
Automating Database Processing
Oracle Data Integrator Procedures, Advanced Workflows.
CS160 Discussion Section Final review David Sun May 8, 2007.
Errors & Help An ounce of prevention.... Microsoft’s Spectacular Errors Adobe UI Gripes Fall 2006PSYCH / CS
DEBUGGING. BUG A software bug is an error, flaw, failure, or fault in a computer program or system that causes it to produce an incorrect or unexpected.
Why do we need good user interfaces?. Goals of User Interfaces Usable – how much effort to do a task? – example: often-used buttons easier to find – example:
1 3132/3192 User Accessibility © University of Stirling /3192 User Accessibility 2.
More on Design of Everyday Things. Turn it up, or shut it down?
INTERFACE DESIGN DMS 546/446 DESIGNING INTERFACES - JENIFER TIDWELL CHAPTER 1.
1 User Interface Design Components Chapter Key Definitions The navigation mechanism provides the way for users to tell the system what to do The.
INTERFACE COMPOSITION GAME DESIGN. OBJECTIVES After this lesson, students will be able to: Identify the Eight Golden Rules of Human-Computer Interface.
Heuristic Evaluation Short tutorial to heuristic evaluation
Getting Started with Word & Saving Guided Lesson.
Lesson 4.  After a table has been created, you may need to modify it. You can make many changes to a table—or other database object—using its property.
Yonglei Tao School of Computing & Info Systems GVSU Ch 7 Design Guidelines.
Gabriel Spitz 1. Light Switch Issues  Consistency – The switch design is inconsistent with common light switches  Visibility – No visible cue regarding.
Matthew Glenn AP2 Techno for Tanzania This presentation will cover the different utilities on a computer.
Fall 2002CS/PSY Preventing Errors An Ounce of Prevention Errors  Avoiding and preventing  Identifying and understanding  Handling and recovering.
Cs413_design02.ppt GUI Design The User Controls Navigation Traditional GUI design the designer can control where the user can go gray out menu options.
Introduction to Computer Programming - Project 2 Intro to Digital Technology.
A disciplined approach to analyzing malfunctions –Provides feedback into the redesign process 1.Play protocol, searching for malfunctions 2.Answer four.
Advance startup options Shift Restart. Restart options.
CACI Proprietary Information | Date 1 PD² SR13 Client Upgrade Name: Semarria Rosemond Title: Systems Analyst, Lead Date: December 8, 2011.
CACI Proprietary Information | Date 1 PD² v4.2 Increment 2 SR13 and FPDS Engine v3.5 Database Upgrade Name: Semarria Rosemond Title: Systems Analyst, Lead.
McGraw-Hill/Irwin The Interactive Computing Series © 2002 The McGraw-Hill Companies, Inc. All rights reserved. Microsoft Excel 2002 Using Macros Lesson.
CEN3722 Human Computer Interaction Title of Presentation
Errors & the Art of Error Assistance
Software engineering USER INTERFACE DESIGN.
Professor John Canny Fall 2004
CONFIGURING HARDWARE DEVICE & START UP PROCESS
MBI 630: Week 11 Interface Design
Professor John Canny Spring 2003
Proper functionality Good human computer interface Easy to maintain
To Err is Human Owen Brennan.
Professor John Canny Spring 2004
Lecture 22: HCI Design March 15, /6/2019
Professor John Canny Fall 2001 Nov 13, 2001
Presentation transcript:

Prevent Errors Do not let the user make the mistake in the first place. Limit choices –Hide or gray out unusable functions Look ahead –Have the system be away if a command pathway has no valid options Guide users away from problems –Limit choices for naïve users –Warn users when they are in dangerous territory –Confirm before performing actions that cannot be reversed

Minimizing Error User errors: –Use Intuitive (from the users domain of knowledge) command names. –Include short explanations as “tool tips”. –Put longer explanations in help system. Recognition over recall –Easier to select a file icon from a folder than to remember and type in the filename. –Auto-completion can help fix this. Use appropriate representations –E.g. graphical file selector good for choosing individual files –Textual file names support automation, richer organization (using command line options).

Types of errors Mistakes –User intended to do what they did, and it led to an error. User would probably do the same thing again. Slips –User did not mean to do what they did. They can recover by doing it differently again. –Slips are not just for beginners. Experts often make them because they devote less conscious attention to the task.

Description errors Description error: –The action is insufficiently specified by the user. –User may not know all the command line switches, or all the installation options for a program. Solution: –Warn the user that the command is ambiguous, or “unusual”. Provide help about options in several standard ways.

Capture error Capture error: (aka the tongue twister error) –Command sequences overlap, and one is more common. –User reflexively does the common one when trying to do the unusual one. –E.g. try typing “soliton” very fast. Solution –be aware of and test for this error. Try different command names.

Mode errors Mode errors: –User forgets what mode they’re in, and does the command appropriate for another mode. –Digital watches, VCRs etc. Several attributes: –There aren’t enough command keys for all the operations – so the mode determines what each button does. –There isn’t enough display space to provide strong feedback about the mode.

Mode errors Solutions: –Strive for consistent behavior of buttons across modes. –Provide display feedback about behavior of keys in the current mode. –Provide an option for scrolling help tips if possible. –Allow the device to be programmed externally (e.g. from a PC with Bluetooth). –If you don’t have a tiny screen, then make the context clear! i.e. use color, tabs, navigation graphics etc. to make clear to the user “where” they are in the interface.

Detecting Errors The earlier the better: –Check for consistency whenever possible (“asserts” for user input). –If there’s a high risk of error, check for unusual input, or for common slips (spelling correction). E.g. google’s “did you mean XX?” response

System Response Stop the user from continuing the way they were going (and possibly compounding the error). Take “safe” recovery actions - e.g. auto-save the state with a unique name. Begin the recovery process…

Explanations The first part of the recovery process is to explain what appears to be wrong. Remember the user is only supposed to have a functional model of what’s going on. Try to give an explanation at high level. People understand basic resources like filespace, memory etc. “I’m afraid the program has an internal fault in the code that >, which was called when trying to >. We regret the inconvenience, and are trying to recover…”

Recovery The system should always give the user a reasonable amount of information about the problem. Better to err on the side of too much information. Some problems are amenable to automatic repair: retry, use redundant information, backup data etc… DWIM (Do What I mean) was an editor that attempted to correct common user errors. You need an “undo” key to use this approach.

Recovery Run a “diagnostic wizard” for common or unreliable subsystems (e.g. the network). These can interact with the user to get extra information needed to fix the problem.

Recovery Gag Warn Do Nothing Self Correct Teach Me Let’s talk about it

Gag Response Machine freezes, often not even accepting input. Generally a bad idea, but there are good(?) uses: –Raskin’s FLOW system, refuses to accept keystrokes that are not legal commands. –Intended for naïve users. –Even random typing produces legal programs!

Warn Response Machine accepts input, even if not legal. Warns user about problem(s). Allows user to get into deeper trouble. Allow backtracking “undo”, back to start of trouble if possible.

Do Nothing Response Machine accepts input, even if not legal. Machine does nothing User has to figure out that something’s wrong. Usually a bad idea, but can be useful in automation/DB queries – –It allows scripts/queries to continue executing, but e.g. don’t copy a file onto itself.

Self Correct DWIM (Do What I Mean) was an aggressive self- correcting system. Spell checkers are of this type. Generally good but: –Sometimes override user intent. –Can frustrate on frequently-used strings: “naïve” is good but not “Hsi”. –Solutions: Don’t repeat correction if overridden. Watch user behavior over time.

Teach Me System informs user what they can do. Common in speech recognizers. Include command “what can I say?”, or run speech tutorial.

Let’s talk about it Inspired by human error recovery. –Machine explains its understanding of the situation, gives the user some options. –Examples: network diagnostic wizard, modem wizard,… Very difficult to program these, but they’re very valuable. –Need some analysis of previous user problems. –Look at help desk logs.