SlideShare ist ein Scribd-Unternehmen logo
1 von 15
Jun 23, 2015
GUI Design
2
HMI design
 There are entire college courses taught on HMI
(Human-Machine Interface) design
 This is just a very brief presentation on some of the
most essential points
 The goal is (usually) to make the design:
 “Intuitive”--that is, it behaves as the user expects
 Simple--not cluttered
 Complete--that is, it lets the user do everything that the
program is capable of doing
 From CIT591, day one: A program is elegant if it
combines power with simplicity
3
Different needs
 Someone who uses the program only occasionally wants to be
able to figure out how to use it
 Simple controls
 Clear, descriptive labels
 Help files
 Frequent users want to minimize effort
 Few button clicks, little typing
 No long sentences that must be read
 You should know what audience you are designing for
 Compromises may be necessary, but with care you can design an
interface that isn’t too bad for either group
 Nobody likes an interface that encourages mistakes
4
“Intuitive” design
 An interface is intuitive if a new user grasps
immediately how to use it
 It is impossible to make a very specialized task intuitive
to someone who doesn’t understand the underlying
principles
 For example, 3D animation programs
 Very few programs are of this nature
 What is “intuitive” varies from person to person
 However, most computer users have some common
expectations as to how common controls work
5
Principle of Least Surprise
 The Principle of Least Surprise says that the GUI should
do the least surprising (= most expected) thing
 Users have strong expectations about how GUI
elements, such as Buttons, work
 Users also have strong expectations about how and
when files are opened and saved, and a host of other
things
 Anything that we “take for granted” in an interface should not
be violated without very good reason
6
Passive GUI elements
 When text is entered, it just sits there until the user does
something more--entering text does not cause something to
happen
 For example, there may be an OK button to use the text
 Exception: Very simple forms with only a text field may respond to the
Enter key (even if an OK button is present)
 Checkboxes (squares) and radio buttons (circles) accept
information from the user but don’t take any actions
 Selection lists (for example, to choose a language) accept
information but don’t themselves do anything with it
 Exception: Lists that modify the view (such as the font or the alignment)
may have an immediate, visible effect
7
Active GUI elements
 The most common active GUI element is the Button
 When you click a button, you expect something to happen
 Buttons that only make settings for future use should not be
Buttons
 Menu items may be either active or passive
 Menu items that are just settings should have a checkmark in
front of them when “turned on”
 Menu items that change their labels (such as On or Off) are
just confusing

Does On mean the feature is on, or you have to click it to turn it on?
 Menu items that open a dialog box to get more information
should end in an ellipsis (...), for example, Font...
8
Feedback
 Everything the user does in a GUI should result in feedback as to
whether it worked
 Example: Checkboxes get checked, radio buttons get “pushed,” typing
shows up in text areas, etc.
 Clicking a button should either show the results, display a
message that the action occurred, start a “progress bar” going, or
pop up a dialog box that says what went wrong
 Items that cannot be used at the moment should be made inactive
(so that they are visibly “grayed out”)
 This also solves the problem of what to do if the user clicks on one—it
can’t happen
 Items that cannot be used at the moment should not be removed, which
will cause the user to waste time looking for them
9
Minimize effort
 One common measure of the effort required to do
something is “mouse clicks”
 Example: Compiling a program in BlueJ vs. Dr. Java
 For example, if the user’s action is successful, provide
feedback, but don’t pop up a dialog box with a message
such as “Your file has been saved. [OK]”
 Many editors use an asterisk or dot next to the name of any
unsaved file
 If the user’s action is not successful, make sure that the
feedback is highly visible
 This is a good place to use a dialog box
10
Simple design
 Windows that do everything are too cluttered to use
easily
 For example, you should not put your preferences and your
working elements in the same window
 One ambulance company used a single window for
maintenance information, keeping track of which employees
were on duty, and dispatching ambulances
 Separate concerns—present windows that give the user
the right tools for what they are working on now
11
wGetGUI v1.0
12
FileMatrix
13
Progressive disclosure
 Simple design does not mean less control
 The Principle of Progressive Disclosure says to hide
complexity until it is needed
 For example, look at the Preferences... menu on almost any
large program

You don’t see all the possible settings at once

Settings are grouped according to what the user is probably trying to
do—change the appearance, set security levels, etc.
14
User testing
 Most important in GUI design, even for experienced
designers, is user testing
 Have a classmate or friend try out your program
 Watch as they do it
 Do not tell them how to use it; let them figure it out
 If your test user cannot figure something out, explain how to
do it; but make a note of the problem, and fix it
 Even a minimal amount of user testing can greatly
improve the design
15
The End

Weitere ähnliche Inhalte

Ähnlich wie 41 gui-design

Project BasicsLesson 1© 2014, John Wiley & Sons, Inc.M.docx
Project BasicsLesson 1© 2014, John Wiley & Sons, Inc.M.docxProject BasicsLesson 1© 2014, John Wiley & Sons, Inc.M.docx
Project BasicsLesson 1© 2014, John Wiley & Sons, Inc.M.docxstilliegeorgiana
 
window_10_user_guide.pdf
window_10_user_guide.pdfwindow_10_user_guide.pdf
window_10_user_guide.pdfMertin2
 
Windows 10 Technical Preview - http://f2suporte.blogspot.com
Windows 10 Technical Preview - http://f2suporte.blogspot.comWindows 10 Technical Preview - http://f2suporte.blogspot.com
Windows 10 Technical Preview - http://f2suporte.blogspot.comWlademir RS
 
14 timeless rules for creating intuitive web apps
14 timeless rules for creating intuitive web apps14 timeless rules for creating intuitive web apps
14 timeless rules for creating intuitive web appsMAAN Softwares INC.
 
Usability Heuristics
Usability HeuristicsUsability Heuristics
Usability HeuristicsOvidiu Von M
 
1 PROGRAM ISEM RESEARCH PAPER FOR APPLIED.docx
1 PROGRAM ISEM RESEARCH PAPER FOR APPLIED.docx1 PROGRAM ISEM RESEARCH PAPER FOR APPLIED.docx
1 PROGRAM ISEM RESEARCH PAPER FOR APPLIED.docxhoney725342
 
Adrian Moreno - What Is A Good UI?
Adrian Moreno - What Is A Good UI?Adrian Moreno - What Is A Good UI?
Adrian Moreno - What Is A Good UI?Adrian Moreno
 
Scopic UX Design Test Task.pdf
Scopic UX Design Test Task.pdfScopic UX Design Test Task.pdf
Scopic UX Design Test Task.pdfAtiqur Rahaman
 
14 timeless rules for creating intuitive web apps
14 timeless rules for creating intuitive web apps14 timeless rules for creating intuitive web apps
14 timeless rules for creating intuitive web appsDev Technosys
 
Usability of web application
Usability of web applicationUsability of web application
Usability of web applicationBurhan Ahmed
 
usabilityofwebapplication.pdf
usabilityofwebapplication.pdfusabilityofwebapplication.pdf
usabilityofwebapplication.pdfYuriTamaki
 
Chapter 3 - Variety of Dialogue
Chapter 3  - Variety of DialogueChapter 3  - Variety of Dialogue
Chapter 3 - Variety of DialogueMuhammad Najib
 
Usability Essentials to Know
Usability Essentials to KnowUsability Essentials to Know
Usability Essentials to KnowPravin Mehta
 
Accessibility, Usability and User Centred Design (Usabiltiy)
Accessibility, Usability and User Centred Design (Usabiltiy)Accessibility, Usability and User Centred Design (Usabiltiy)
Accessibility, Usability and User Centred Design (Usabiltiy)David Lamas
 
Microinteractions
MicrointeractionsMicrointeractions
MicrointeractionsDan Saffer
 
Introduction of computer basic skills on windows 7
Introduction of computer basic skills on windows 7Introduction of computer basic skills on windows 7
Introduction of computer basic skills on windows 7kalindunimanthadonz
 
Lecture 10
Lecture 10Lecture 10
Lecture 10Rana Ali
 

Ähnlich wie 41 gui-design (20)

Ux design-fundamentals
Ux design-fundamentalsUx design-fundamentals
Ux design-fundamentals
 
Windows 11 2.pdf
Windows 11 2.pdfWindows 11 2.pdf
Windows 11 2.pdf
 
Project BasicsLesson 1© 2014, John Wiley & Sons, Inc.M.docx
Project BasicsLesson 1© 2014, John Wiley & Sons, Inc.M.docxProject BasicsLesson 1© 2014, John Wiley & Sons, Inc.M.docx
Project BasicsLesson 1© 2014, John Wiley & Sons, Inc.M.docx
 
window_10_user_guide.pdf
window_10_user_guide.pdfwindow_10_user_guide.pdf
window_10_user_guide.pdf
 
Windows 10 Technical Preview - http://f2suporte.blogspot.com
Windows 10 Technical Preview - http://f2suporte.blogspot.comWindows 10 Technical Preview - http://f2suporte.blogspot.com
Windows 10 Technical Preview - http://f2suporte.blogspot.com
 
What is usability testing?
What is usability testing?What is usability testing?
What is usability testing?
 
14 timeless rules for creating intuitive web apps
14 timeless rules for creating intuitive web apps14 timeless rules for creating intuitive web apps
14 timeless rules for creating intuitive web apps
 
Usability Heuristics
Usability HeuristicsUsability Heuristics
Usability Heuristics
 
1 PROGRAM ISEM RESEARCH PAPER FOR APPLIED.docx
1 PROGRAM ISEM RESEARCH PAPER FOR APPLIED.docx1 PROGRAM ISEM RESEARCH PAPER FOR APPLIED.docx
1 PROGRAM ISEM RESEARCH PAPER FOR APPLIED.docx
 
Adrian Moreno - What Is A Good UI?
Adrian Moreno - What Is A Good UI?Adrian Moreno - What Is A Good UI?
Adrian Moreno - What Is A Good UI?
 
Scopic UX Design Test Task.pdf
Scopic UX Design Test Task.pdfScopic UX Design Test Task.pdf
Scopic UX Design Test Task.pdf
 
14 timeless rules for creating intuitive web apps
14 timeless rules for creating intuitive web apps14 timeless rules for creating intuitive web apps
14 timeless rules for creating intuitive web apps
 
Usability of web application
Usability of web applicationUsability of web application
Usability of web application
 
usabilityofwebapplication.pdf
usabilityofwebapplication.pdfusabilityofwebapplication.pdf
usabilityofwebapplication.pdf
 
Chapter 3 - Variety of Dialogue
Chapter 3  - Variety of DialogueChapter 3  - Variety of Dialogue
Chapter 3 - Variety of Dialogue
 
Usability Essentials to Know
Usability Essentials to KnowUsability Essentials to Know
Usability Essentials to Know
 
Accessibility, Usability and User Centred Design (Usabiltiy)
Accessibility, Usability and User Centred Design (Usabiltiy)Accessibility, Usability and User Centred Design (Usabiltiy)
Accessibility, Usability and User Centred Design (Usabiltiy)
 
Microinteractions
MicrointeractionsMicrointeractions
Microinteractions
 
Introduction of computer basic skills on windows 7
Introduction of computer basic skills on windows 7Introduction of computer basic skills on windows 7
Introduction of computer basic skills on windows 7
 
Lecture 10
Lecture 10Lecture 10
Lecture 10
 

Kürzlich hochgeladen

ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...JhezDiaz1
 
Karra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxKarra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxAshokKarra1
 
Choosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for ParentsChoosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for Parentsnavabharathschool99
 
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSJoshuaGantuangco2
 
ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4MiaBumagat1
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPCeline George
 
Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Mark Reed
 
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYKayeClaireEstoconing
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatYousafMalik24
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)lakshayb543
 
Q4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptxQ4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptxnelietumpap1
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxHumphrey A Beña
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPCeline George
 
ACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfSpandanaRallapalli
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for BeginnersSabitha Banu
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Celine George
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designMIPLM
 

Kürzlich hochgeladen (20)

ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
 
Karra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxKarra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptx
 
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptxFINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
 
Choosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for ParentsChoosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for Parents
 
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTSGRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
GRADE 4 - SUMMATIVE TEST QUARTER 4 ALL SUBJECTS
 
ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
 
How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERP
 
Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)
 
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice great
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
 
Q4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptxQ4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptx
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERP
 
ACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdf
 
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptxYOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for Beginners
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-design
 

41 gui-design

  • 2. 2 HMI design  There are entire college courses taught on HMI (Human-Machine Interface) design  This is just a very brief presentation on some of the most essential points  The goal is (usually) to make the design:  “Intuitive”--that is, it behaves as the user expects  Simple--not cluttered  Complete--that is, it lets the user do everything that the program is capable of doing  From CIT591, day one: A program is elegant if it combines power with simplicity
  • 3. 3 Different needs  Someone who uses the program only occasionally wants to be able to figure out how to use it  Simple controls  Clear, descriptive labels  Help files  Frequent users want to minimize effort  Few button clicks, little typing  No long sentences that must be read  You should know what audience you are designing for  Compromises may be necessary, but with care you can design an interface that isn’t too bad for either group  Nobody likes an interface that encourages mistakes
  • 4. 4 “Intuitive” design  An interface is intuitive if a new user grasps immediately how to use it  It is impossible to make a very specialized task intuitive to someone who doesn’t understand the underlying principles  For example, 3D animation programs  Very few programs are of this nature  What is “intuitive” varies from person to person  However, most computer users have some common expectations as to how common controls work
  • 5. 5 Principle of Least Surprise  The Principle of Least Surprise says that the GUI should do the least surprising (= most expected) thing  Users have strong expectations about how GUI elements, such as Buttons, work  Users also have strong expectations about how and when files are opened and saved, and a host of other things  Anything that we “take for granted” in an interface should not be violated without very good reason
  • 6. 6 Passive GUI elements  When text is entered, it just sits there until the user does something more--entering text does not cause something to happen  For example, there may be an OK button to use the text  Exception: Very simple forms with only a text field may respond to the Enter key (even if an OK button is present)  Checkboxes (squares) and radio buttons (circles) accept information from the user but don’t take any actions  Selection lists (for example, to choose a language) accept information but don’t themselves do anything with it  Exception: Lists that modify the view (such as the font or the alignment) may have an immediate, visible effect
  • 7. 7 Active GUI elements  The most common active GUI element is the Button  When you click a button, you expect something to happen  Buttons that only make settings for future use should not be Buttons  Menu items may be either active or passive  Menu items that are just settings should have a checkmark in front of them when “turned on”  Menu items that change their labels (such as On or Off) are just confusing  Does On mean the feature is on, or you have to click it to turn it on?  Menu items that open a dialog box to get more information should end in an ellipsis (...), for example, Font...
  • 8. 8 Feedback  Everything the user does in a GUI should result in feedback as to whether it worked  Example: Checkboxes get checked, radio buttons get “pushed,” typing shows up in text areas, etc.  Clicking a button should either show the results, display a message that the action occurred, start a “progress bar” going, or pop up a dialog box that says what went wrong  Items that cannot be used at the moment should be made inactive (so that they are visibly “grayed out”)  This also solves the problem of what to do if the user clicks on one—it can’t happen  Items that cannot be used at the moment should not be removed, which will cause the user to waste time looking for them
  • 9. 9 Minimize effort  One common measure of the effort required to do something is “mouse clicks”  Example: Compiling a program in BlueJ vs. Dr. Java  For example, if the user’s action is successful, provide feedback, but don’t pop up a dialog box with a message such as “Your file has been saved. [OK]”  Many editors use an asterisk or dot next to the name of any unsaved file  If the user’s action is not successful, make sure that the feedback is highly visible  This is a good place to use a dialog box
  • 10. 10 Simple design  Windows that do everything are too cluttered to use easily  For example, you should not put your preferences and your working elements in the same window  One ambulance company used a single window for maintenance information, keeping track of which employees were on duty, and dispatching ambulances  Separate concerns—present windows that give the user the right tools for what they are working on now
  • 13. 13 Progressive disclosure  Simple design does not mean less control  The Principle of Progressive Disclosure says to hide complexity until it is needed  For example, look at the Preferences... menu on almost any large program  You don’t see all the possible settings at once  Settings are grouped according to what the user is probably trying to do—change the appearance, set security levels, etc.
  • 14. 14 User testing  Most important in GUI design, even for experienced designers, is user testing  Have a classmate or friend try out your program  Watch as they do it  Do not tell them how to use it; let them figure it out  If your test user cannot figure something out, explain how to do it; but make a note of the problem, and fix it  Even a minimal amount of user testing can greatly improve the design