User Interface Design
User Interface Design
Design
Roadmap
Interface design models
Design principles
GUI characteristics
User Guidance
Usability Testing
Examples
Literature
Sources
Software Engineering, I. Sommerville, 7th Edn., 2004.
Software Engineering — A Practitioner’s Approach, R. Pressman, Mc-Graw Hill, 5th Edn., 2001.
Recommended reading
Mary Beth Rosson, John M. Carroll, Usability Engineering, 2002
Jakob Nielsen, Usability Engineering, Morgan Kaufmann, 1999.
Alan Cooper, About Face — The Essentials of User Interface Design, Hungry Minds, 1995.
Alan Cooper, The Inmates are running the Asylum, SAMS, 1999.
Jef Raskin, The Humane Interface, Addison Wesley, 2000.
Jeff Johnson, GUI Bloopers, Morgan Kaufmann, 2000.
The Interface Hall of Shame, http://homepage.mac.com/bradster/iarchitect/shame.htm
Roadmap
Interface design models
Design principles
GUI characteristics
User Guidance
Usability Testing
Examples
The UI design process
UI design is an iterative process involving close liaisons between
users and designers.
The 3 core activities in this process are:
◦ User analysis. Understand what the users will do with the system;
◦ System prototyping. Develop a series of prototypes for experiment;
◦ Interface evaluation. Experiment with these prototypes with users.
The design process
Interface Design Models
Four different models occur in HCI design:
2. The user model describes the profile of the end users. (i.e., novices vs.
experts, cultural background, etc.)
4. The system image is the external manifestation of the system (look and
feel + documentation etc.)
UI Models
Implementation Mental
Model Model
Principles
Principle Description
Use terms and concepts familiar to the user.
User familiarity
GUI Characteristics
Characteristic Description
Multiple windows allow different information to be
Windows
displayed simultaneously on the user’s screen.
Usually icons represent files (including folders and
Icons applications), but they may also stand for processes
(e.g., printer drivers).
Menus bundle and organize commands (eliminating the
Menus
need for a command language).
A pointing device such as a mouse is used for
Pointing command choices from a menu or indicating items of
interest in a window.
Graphical elements can be commands on the same
Graphics
display.
GUIs
Advantages
They are easy to learn and use.
◦ Users without experience can learn to use the system quickly.
Problems
A GUI is not automatically a good interface
◦ Many software systems are never used due to poor UI design
◦ A poorly designed UI can cause a user to make catastrophic errors
Direct Manipulation
Advantages
Users feel in control and are less likely to be intimidated by the system
User learning time is relatively short
Users get immediate feedback on their actions
mistakes can be quickly detected and corrected
Problems
Finding the right user metaphor may be difficult
It can be hard to navigate efficiently in a large information space.
It can be complex to program and demanding to execute
Menu Systems
Advantages
Users don’t need to remember
command names
Typing effort is minimal
User errors are trapped by the interface
Context-dependent help can be
provided (based on the current menu
selection)
Problems
> Actions involving logical conjunction (and) or disjunction (or) are
awkward to represent
> If there are many choices, some menu structuring facility must be
used
> Experienced users find menus slower than command language
Menu Structuring
Scrolling menus
The menu can be scrolled to reveal additional choices
Not practical if there is a very large number of choices
Hierarchical menus
Selecting a menu item causes the menu to be replaced by a sub-menu
Walking menus
A menu selection causes another menu to be revealed
Problems
Users have to learn and remember a command language
Not suitable for occasional or inexperienced users
An error detection and recovery system is required
Typing ability is required (!)
Analogue vs. Digital
Presentation
Digital presentation
Compact — takes up little screen space
Precise values can be communicated
Analogue presentation
Easier to get an 'at a glance' impression of a value
Possible to show relative values
Easier to see exceptional data values
Pressure Temperature
0 100 200 300 400 0 25 50 75 100
Colour Use Guidelines
Colour can help the user understand complex information structures.
Don’t use (only) colour to communicate meaning!
◦ Open to misinterpretation (colour-blindness, cultural differences ...)
◦ Design for monochrome then add colour
Includes
System messages, including error messages
Documentation provided for users
On-line help
Help system use
Multiple entry points should be provided
◦ the user should be able to get help from different places
Usability Attributes
Attribute Description
How long does it take a new user to
Learnability
become productive with the system?
Speed of How well does the system response
operation match the user’s work practice?
How tolerant is the system of user
Robustness
error?
How good is the system at recovering
Recoverability
from user errors?
How closely is the system tied to a
Adaptability
single model of work?
Why you only need to test
with 5 users
QuickTime™ and a
decompressor
are needed to see this picture.
Usability laboratories (!)
Roadmap
Interface design models
Design principles
GUI characteristics
User Guidance
Usability Testing
Examples
Is there progress?