1CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. Lecture 16: Eliminating Errors.

Slides:



Advertisements
Similar presentations
Testing Relational Database
Advertisements

The 20 Hour Basic Successful Solutions Professional Development LLC Chapter 4 Guidance Techniques Module 6.
On the Telephone! On The Telephone.
Lesson 10: Dealing with Criticism
SELF CONTROL Rejecting wrong desires and doing what is right
Goal Directed Design Author: Alan Cooper This article originally appeared in the September, 1996 issue of Dr. Dobb's Journal.
Attentiveness vs. Distraction
1 Software Engineering Lecture 11 Software Testing.
SLS 1501 Julia Sweitzer. Accepting responsibility is a sign of personal growth and maturity. It is definitely not a sign of weakness.
UNDERSTANDING THE WHY OF CHALLENGING BEHAVIOR: THROUGH COLLABORATIVE PROBLEM SOLVING (CPS) MODEL (GREENE 2008): Explosive Child Ross W. Greene, Ph.D.
Lecture 2 Page 1 CS 236, Spring 2008 Security Principles and Policies CS 236 On-Line MS Program Networks and Systems Security Peter Reiher Spring, 2008.
Debugging Introduction to Computing Science and Programming I.
Debugging CPSC 315 – Programming Studio Fall 2008.
Tips for Working Successfully in a Group Disclaimer: This is not a “good” format for a presentation. There is too much text on the pages.
CSE 219 COMPUTER SCIENCE III PROPERTIES OF HIGH QUALITY SOFTWARE.
Introduction to Software Engineering CS-300 Fall 2005 Supreeth Venkataraman.
 Turn away from your computer, desk, or other work  Have a pen and paper nearby  Answer the calls promptly, by the second or third ring  Smile as.
1 Functional Testing Motivation Example Basic Methods Timing: 30 minutes.
BTEc unit 12 software development
United States Soccer Federation UNITED STATES SOCCER FEDERATION Psychology of Refereeing.
Lecture 18 Page 1 CS 111 Online Design Principles for Secure Systems Economy Complete mediation Open design Separation of privileges Least privilege Least.
LOCUS OF CONTROL Manishaa & Dayaanand.
Instructor: Chris Trenkov Hands-on Course Python for Absolute Beginners (Spring 2015) Class #001 (January 9, 2015)
CS 4720 Usability and Accessibility CS 4720 – Web & Mobile Systems.
Developing a Solution How to create the computer-based solution for a real-world problem. 1.
Assertiveness Training
 Basic Rules and Concepts  Conversation and Listening  Practices - Check Answers and Further Practice  Writing Practice  Checkpoint.
Lecture 5: Using Computers: Important Ideas Tonga Institute of Higher Education IT 141: Information Systems.
Click to edit Master subtitle style USABILITY and USER INTERFACE DESIGN Application.
Talk Back To Negative Thoughts
Dealing with all different age groups Knowing a correct way to communicate –Kids –Pre-Teens –Teenagers –Middle Age –Elderly Communicating about certain.
Lecture 14: Stability and Control II Reprise of stability from last time The idea of feedback control Remember that our analysis is limited to linear systems.
Errors And How to Handle Them. GIGO There is a saying in computer science: “Garbage in, garbage out.” Is this true, or is it just an excuse for bad programming?
During Circle Work One Person speaks at a time Right to Pass No Put-downs.
Copyright © by Holt, Rinehart and Winston. All rights reserved. Chapter 2: Skills for a Healthy Life 1.I review all of my choices before I make a decision.
Copyright 2007, Information Builders. Slide 1 So You Just Bought WebFOCUS… Dan Schultz Director June, 2008.
Lecture 21 Multiple Inheritance. What is Multiple Inheritance? We defined inheritance earlier in the semester as a relationship between classes. If class.
Moving Around in Scratch The Basics… -You do want to have Scratch open as you will be creating a program. -Follow the instructions and if you have questions.
Introduction to Software Testing. Types of Software Testing Unit Testing Strategies – Equivalence Class Testing – Boundary Value Testing – Output Testing.
Unit 2 (task 28) In this PowerPoint I will tell you about 7 important IT job roles and if a candidate might want one what he would have to do to get one.
Behavioral Management in your Classroom Created by: Lauren Bamsey.
B y T aylor C hase Definition and types of bullying  Bullying is making someone feel bad. Bullying is like abuse, it’s a really bad thing to do.  Types.
By: Beverly Flaxington American Management Association.
Three Cs Clarity Conciseness Consistency. Clarity Being clear is our main priority when communicating. What might prevent us from communicating clearly?
Loops Wrap Up 10/21/13. Topics *Sentinel Loops *Nested Loops *Random Numbers.
Guidance Techniques. SETTING LIMITS Setting Limits What limits where set for you as a child? What did you think about those? What limits are set for.
BMTRY 789 Lecture 11: Debugging Readings – Chapter 10 (3 rd Ed) from “The Little SAS Book” Lab Problems – None Homework Due – None Final Project Presentations.
MY ONLINE CODE In the last 2 years of digital literacy I have learned the proper ways to act and why to act that way online, I have also learned other.
Conditional Statements.  Quiz  Hand in your jQuery exercises from last lecture  They don't have to be 100% perfect to get full credit  They do have.
The Communication Process WHAT IS COMMUNICATION?.
Theme. What is a Theme? Theme is the message that the author is trying to convey to the reader. Theme is the central insight or controlling idea of a.
1CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. Lecture 7: Principles and Patterns.
1CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University. Lecture 11: Orchestration and Flow.
Testing CSE 160 University of Washington 1. Testing Programming to analyze data is powerful It’s useless (or worse!) if the results are not correct Correctness.
Chess Strategies Component Skills Strategies Prototype Josh Waters, Ty Fenn, Tianyu Chen.
Developing a growth mindset in the face of challenge
PROGRAMMING IN PYTHON LETS LEARN SOME CODE TOGETHER!
1 The Last Lecture by - Dr. Randy Pausch Life and How to Live.
Executive Summary - Human Factors Heuristic Evaluation 04/18/2014.
Virtual University - Human Computer Interaction 1 © Imran Hussain | UMT Imran Hussain University of Management and Technology (UMT) Lecture 36 Behavior.
© 2015 albert-learning.com How to talk to your boss How to talk to your boss!!
Lecture 5 Page 1 CS 111 Summer 2013 Bounded Buffers A higher level abstraction than shared domains or simple messages But not quite as high level as RPC.
Ban The Bomb By Alan Cooper Presented by Justin Pilgrim.
Outline Basic concepts in computer security
Excise Tasks CS 4640 Programming Languages for Web Applications
Imran Hussain University of Management and Technology (UMT)
Some Simple Definitions for Testing
CSCE 315 – Programming Studio, Fall 2017 Tanzir Ahmed
A few tricks to take you beyond the basics of Microsoft Office 2007
Presentation transcript:

1CS 338: Graphical User Interfaces. Dario Salvucci, Drexel University. Lecture 16: Eliminating Errors

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 Errors and Dialogs Dialog errors interrupt flow Do users want error messages? Users, when given choices, might want to avoid any error! – This isn't the same from wanting errors Users find it easier to blame themselves for problems coming up in the applications. – Is this the type of message you want to convey?

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 History of Error A history or error is important to understand why they are in such modal format today : CPU cycles more expensive than Human cycles – CPUs were large, in gymnasium sized buildings, on university campuses ryhming with “ten”. 1970s: CPU cycles become just as expensive as a human cycle 1975 and later: CPU cycles much less expensive, but errors still remain.

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 Is it an error? Most errors in dialog boxes really arent an error. Programmer: “I'll put this in a dialog box to ask or inform the user.” User thinks there is some serious problem when actually its just the program being inflexible. Users are human, and humans have emotions and feelings. Humans don't like modal error, makes them angry or embarassed.

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 People don't like being Wrong! Programmer: User should be informed that his action was wrong! Humans don't like being told their wrong. – They may blame many other entities before they think that they are wrong. Humans definitely don't like being embarrased! But whose mistake is it? Clearly computers may actually have user error some times, but is it always the human's fault?

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 Lets play the blame game Computer: User's fault for having input in this manner. User should know how to use the application. User: The choices and effects were not clear to me. The computer should have made them so. Computer: You gave me the wrong validation code, stop right now and give me the right one. User: That wasn't a bad code, you didn't say you didn't want spaces!

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 Compensating error, being flexible Instead of forcing modal error, consider: – User might not have all information – User might not have understood clearly Not all information at hand: – Guess intelligently, but indicate the guess. – Allow multiple entries for guesses. Not understanding the interface: – Its the interface design's fault, the process is suppose to give insight to the user. – Try for interface to ask for forgiveness and to have ample help to indicate what it really means.

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 Error Messages, not errors! Error messages are really showing signs of inflexibility. Error messages can come and go, but they don't prevent the user from making an error. – How would modal “Error in stop bit 5.” help the user from making that error? Users make plenty of real user error without any of these windows existing.

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 Eliminating Error Messages Real errors should be from serious error. Software must assume that the user is correct. – The user is simply more important! Don't reject the input if a certain module of code has it in improper format. Instead: Reconcile and Understand

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 Make Error a Mission Impossible Don't give the user an opportunity to enter the wrong type of information. If you can: Make the user select the input. – We talked about proper selection methods! This means: user can not enter bad state. Error: “Invalid entry, You should type ABC.” – If program knows ABC, then put it in itself. This is much harder on the programmer, but who really is more important?

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 Understanding Error Rationale Users don't care about programmers. Sorry, guys. If it works, then who cares. Users do care about programs not dealing with problems rationally. – Each successive choice in modal format brings despair to the user. – Modal dialogues might say, “Heres all this bad stuff that just happened, and hey all you can do is just acknowledge it. Sorry, have a nice day.”

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 Positive Feedback If a program can report the bad so well, make it also report the good! This takes away from the negativity of the program's temperment. Users like it when they see approval in the software if they achieved a goal. – Acknowledgement – Reward? Helping people means positive response. Negative is punishment, reserved for discipline. Who likes being disciplined by a machine?

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 Last Resorts Error Message boxes that MUST be given should have the following components: Polite: This is a user you're talking to. Don't say that the user caused the problem, ever. Protect the user from harming themselves. Illuminating: Program's responsibility to take a good stab as to what it thought was inappropriate, and confess. Helpful: Give possible solutions to what the error could possibly be. Give a path to that solution for the user to take.

CS 338: Graphical User Interfaces. Michael Czajkowski, Drexel University.1 Class Exercise Lets do a group exercise. Get into groups of 3 or 4. I will give you all a scenario to read and your job is to design the best possible error. The setting: Prexel University's administration office. Who the user is: A busy, underpaid accountant who balances the books of Prexel. Situation: The user needs to print a report out and deliver it by the end of the day. Problem: The printer goes down.