User interface design
Designing graphical interfaces for software systems
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 1
Objectives
u u u u u
To suggest some general design principles for user interface design To describe direct manipulation interfaces To discuss factors to be considered when designing information presentations To describe the user support which should be built-in to user interfaces To introduce usability attributes and system approaches to system evaluation
Software Engineering, 5th edition. Chapter 17 Slide 2
Ian Sommerville 1995
Topics covered
u u u u u
Design principles User-system interaction Information presentation User guidance Interface evaluation
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 3
The user interface
u u u u
System users often judge a system by its interface A poorly designed interface can cause a user to make catastrophic errors Poor user interface design is the reason why so many software systems are never used Focus in this chapter is on graphical user interface design
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 4
Graphical user interfaces
u
u u
User interfaces which rely on windows, iconic representation of entities, pull-down or pop-up menus and pointing devices. Previously called WIMP interfaces - now generally referred to as GUIs. The standard form of interface for workstations and high-power personal computers.
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 5
GUI characteristics
Characteristic Windows Icons Menus Pointing Graphics Description Multiple windows allow different information to be displayed simultaneously on the users screen. Icons different types of information. On some systems, icons represent files; on others, icons represent processes. Commands are selected from a menu rather than typed in a command language. A pointing device such as a mouse is used for selecting choices from a menu or indicating items of interest in a window. Graphical elements can be mixed with text on the same display.
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 6
GUI advantages
u
They are easy to learn and use.
Users without experience can learn to use the system quickly.
The user may switch quickly from one task to another and can interact with several different applications.
Information remains visible in its own window when attention is switched.
Fast, full-screen interaction is possible with immediate access to anywhere on the screen
Software Engineering, 5th edition. Chapter 17 Slide 7
Ian Sommerville 1995
Design principles
u u
UI design must take account of the needs, experience and capabilities of the system users Users should be involved in the design process and user interface designs should be refined through rapid prototyping There are cognitive factors, such as the size of short-term memory, which user interface designers must be aware of
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 8
User interface design principles
Principle User familiarity Description The interface should use terms and concepts which are drawn from the experience of the anticipated class of user. The interface should be consistent in that comparable operations should be activated in the same way. Users should never be surprised by the behaviour of a system. The interface should include mechanisms to allow users to recover from their errors. The interface should incorporate some form of context sensitive user guidance and assistance.
Consistency Minimal surprise Recoverability User guidance
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 9
Design principles
u
The interface should be based on user-oriented terms and concepts rather than computer concepts
For example, an office system should use concepts such as letters, documents, folders etc. rather than directories, file identifiers, etc.
The system should display an appropriate level of consistency
Commands and menus should have the same format, command punctuation should be similar, etc.
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 10
Design principles
u
The system should not surprise the user
If a command operates in a known way, the user should be able to predict the operation of comparable commands.
The system should provide some resilience to user errors and allow the user to recover from errors
This might include an undo facilities, confirmation of destructive actions, 'soft' deletes, etc.
Some user guidance should be supplied
Help systems, on-line manuals, etc.
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 11
User-system interaction
u
Two problems must be addressed in interactive systems design
How should information from the user be provided to the computer system? How should information from the computer system be presented to the user?
User interaction and information presentation may be integrated through a coherent framework such as a user interface metaphor
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 12
Direct manipulation
u
u u
A direct manipulation interface presents the user with a model of their information space which is modified by direct action e.g. names are changed by typing the new name over them A form interface is a simple example of a direct manipulation interface GUI's provide some direct manipulation e.g. files can be deleted by moving icons to a trashcan
Software Engineering, 5th edition. Chapter 17 Slide 13
Ian Sommerville 1995
Form-based interface
NE W BOOK Title Author Publisher Edition Classification Date of purchase ISBN Price Publication date Number of copies Loan status Order status
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 14
Direct manipulation advantages
u u u
Users feel in control of the computer and are less likely to be intimidated by it User learning time is relatively short Users get immediate feedback on their actions so mistakes can be quickly detected and corrected
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 15
Direct manipulation problems
u u
The derivation of an appropriate information space model can be very difficult Given that users have a large information space, what facilities for navigating around that space should be provided? Direct manipulation interfaces can be complex to program and make heavy demands on the computer system
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 16
Interface models
u
Desktop metaphor.
The model of an interface is a (kind of) desktop with icons representing files, cabinets, etc.
Control panel metaphor.
The model of an interface is a hardware control panel with interface entities including:
Buttons. Switches Menus Lights Displays Sliders
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 17
Control panel interface
Title Method Type Selection JSD. example JSD Network Process Units Reduce cm Full PRINT NODE LINKS FONT LABEL EDIT OUIT Grid Busy
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 18
Menu systems
u u
Users make a selection from a list of possibilities presented to them by the system The selection may be made by pointing and clicking with a mouse, using cursor keys or by typing the name of the selection May make use of simple-to-use terminals such as touchscreens
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 19
Advantages of menu systems
u
u u u
Users need not remember command names as they are always presented with a list of valid commands Typing effort is minimal User errors are trapped by the interface Context-dependent help can be provided. The users context is indicated by the current menu selection
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 20
Problems with menu systems
u u
Actions which involve logical conjunction (and) or disjunction (or) are awkward to represent Menu systems are best suited to presenting a small number of choices. If there are many choices, some menu structuring facility must be used Experienced users find menus slower than command language
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 21
Menu structuring
u
Scrolling menus
When a choice is not displayed, the menu can be scrolled to reveal more choices. Not practical if there is a very large number of choices
Hierarchical menus
The menus are organized in a hierarchy. Selecting a menu item causes the menu to be replaced by a sub-menu
u u
Walking menus
A menu selection causes another menu to be revealed
Associated control panels
When a menu item is selected, a control panel pops-up offering further options
Software Engineering, 5th edition. Chapter 17 Slide 22
Ian Sommerville 1995
Walking menus
Times Helvetica Pala tino Bookface Frutiger Gothic Symbol
9 Point 10 Point 12 Point 14 Point 18 Point 24 Point 36 Point 48 Point
Plain Bold Italic Underline S hadow
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 23
Command interfaces
u u u u u
User types commands to give instructions to the system e.g. UNIX May be implemented using cheap terminals. Easy to process using compiler techniques Commands of arbitrary complexity can be created by command combination Concise interfaces requiring minimal typing can be created
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 24
Problems with command interfaces
u
u u
Users have to learn and remember a command language. Command interfaces are therefore unsuitable for occasional users Users make errors in command. An error detection and recovery system is required System interaction is through a keyboard so typing ability is required
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 25
Command languages
u u u
Often preferred by experienced users because they allow for faster interaction with the system Not suitable for casual or inexperienced users May be provided as an alternative to menu commands (keyboard shortcuts). In some cases, a command language interface and a menu-based interface are supported at the same time
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 26
Multiple user interfaces
Gr aphical user interface Command language interface
GUI manager
Command language interprerter
Application software system
Ian Sommerville 1995 Software Engineering, 5th edition. Chapter 17 Slide 27
Information presentation
u
Static information
Initialized at the beginning of a session. It does not change during the session May be either numeric or textual
Dynamic information
Changes during a session and the changes must be communicated to the system user May be either numeric or textual
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 28
Information display factors
u u u u u
Is the user interested in precise information or data relationships? How quickly do information values change? Must the change be indicated immediately? Must the user take some action in response to a change? Is there a direct manipulation interface? Is the information textual or numeric? Are relative values important?
Software Engineering, 5th edition. Chapter 17 Slide 29
Ian Sommerville 1995
Information presentation
Information to be displayed
Presentation software
Display
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 30
Textual and graphical views
Jan 2842 4000 Feb Mar 2851 3164 April 2789 May 1273 June 2835
3000
2000
1000
0 Jan
Ian Sommerville 1995
Feb
Mar
April
May
June
Slide 31
Software Engineering, 5th edition. Chapter 17
Analogue vs. digital presentation
u
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
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 32
Dynamic information display
1 4 3 2 0 10 20
Dial with needle
Pie chart
Thermometer
Horizontal bar
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 33
Displaying relative values
Pressure 0 100 200 300 400 0 25
T emper atu re 50 75 100
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 34
Textual highlighting
The filename you have chosen h as been used. Please choose an other name Ch. 17. User interface design OK Cancel
!
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 35
Data visualization
u u u
Concerned with techniques for displaying large amounts of information Visualization can reveal relationships between entities and trends in the data Possible data visualizations are:
Weather information collected from a number of sources The state of a telephone network A model of a molecule displayed in 3 dimensions
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 36
Color displays
u
u u
Color adds an extra dimension to an interface and can help the user understand complex information structures Can be used to highlight exceptional events Common mistakes in the use of color in interface design include:
The use of color to communicate meaning Over-use of color in the display
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 37
Color use guidelines
u u u u u u u u
Don't use too many colors Use color coding to support use tasks Allow users to control color coding Design for monochrome then add color Use color coding consistently Avoid color pairings which clash Use color change to show status change Be aware that color displays are usually lower resolution
Software Engineering, 5th edition. Chapter 17 Slide 38
Ian Sommerville 1995
User guidance
u
The user guidance system is integrated with the user interface to help users when they need information about the system or when they make some kind of error User guidance covers:
System messages, including error messages Documentation provided for users On-line help
The help and message system may be integrated
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 39
Help and message system
Application
Help interface
Error message system
Message presentation system
Help frames
Ian Sommerville 1995
Error message texts
Software Engineering, 5th edition. Chapter 17 Slide 40
Error message design
u
u u
Error message design is critically important. Poor error messages can mean that a user rejects rather than accepts a system Messages should be polite, concise, consistent and constructive The background and experience of users should be the determining factor in message design
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 41
Design factors in message wording
Context Experience The user guidance system should be aware of what the user is doing and should adjust the output message to the current context. As users become familiar with a system they become irritated by long, meaningful messages. However, beginners find it difficult to understand short terse statements of the problem. The user guidance system should provide both types of message and allow the user to control message conciseness. Messages should be tailored to the users skills as well as their experience. Messages for the different classes of user may be expressed in different ways depending onthe terminology which is familiar to the reader. Messages should be positive rather than negative. They should use the active rather than the passive mode of address. They should never be insulting or try to be funny. Wherever possible, the designer of messages should be familiar with the culture of the country where the system is sold. There are distinct cultural differences between Europe, Asia and America. A suitable message for one culture might be unacceptable in another.
Software Engineering, 5th edition. Chapter 17 Slide 42
Skill level
Style Culture
Ian Sommerville 1995
Nurse input of a name
Please type the patient name in the box then click on OK Bates, J.
OK
Cancel
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 43
Good and bad error responses
Error #27 Invalid patient id
Patient J. Bates is not known to the system Click on Patients for a list of kno wn patients Click on Retr y to re-input a patient name Click on Help for more information
Patients Help
Retr y
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 44
Help system design
u u u u
Help? means help I want information Help! means HELP. I'm in trouble Both of these requirements have to be taken into account in help system design Different facilities in the help system may be required
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 45
Help information
u u u u
Should not simply be an on-line manual Screens or windows don't map well onto paper pages. The dynamic characteristics of the display can improve information presentation. People are not so good at reading screen as they are text.
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 46
Help system use
u
u u
Multiple entry points should be provided so that the user can get into the help system from different places. Some indication of where the user is positioned in the help system is valuable. Facilities should be provided to allow the user to navigate and traverse the help system.
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 47
Entry points to a help system
Top-level entry
Entry from application
Entry from error message system
Help frame network
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 48
Help system windows
Help frame map Mail redirection Mail may be redirected to another network user by pressing the redirect button in the control panel. The system asks for the name of the user or users to whom the mail has been sent You are here more next top ics
Help history 1. 2. 3. 4. Mail Send mail Read mail Redirection
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 49
User documentation
u u u
As well as on-line information, paper documentation should be supplied with a system Documentation should be designed for a range of users from inexperienced to experienced As well as manuals, other easy-to-use documentation such as a quick reference card may be provided
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 50
User document types
System evaluators System administrators Novice users Experienced users System administrators
Functional description
Installation document
Introductory manual
Reference manual
Administrators guide
Description of services
How to install the system
Getting started
Facility description
Operation and maintenance
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 51
Document types
u u u u u
Functional description
Brief description of what the system can do
Introductory manual
Presents an informal introduction to the system
System reference manual
Describes all system facilities in detail
System installation manual
Describes how to install the system
System administrators manual
Describes how to manage the system when it is in use
Software Engineering, 5th edition. Chapter 17 Slide 52
Ian Sommerville 1995
User interface evaluation
u u u
Some evaluation of a user interface design should be carried out to assess its suitability Full scale evaluation is very expensive and impractical for most systems Ideally, an interface should be evaluated against a usability specification. However, it is rare for such specifications to be produced
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 53
Usability attributes
Attribute Learnability Speed of operation Robustness Recoverability Adaptability Description How long does it take a new user to become productive with the system? How well does the system response match the users work practice? How tolerant is the system of user error? How good is the system at recovering from user errors? How closely is the system tied to a single model of work?
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 54
Simple evaluation techniques
u u u
Questionnaires for user feedback Video recording of system use and subsequent tape evaluation. Instrumentation of code to collect information about facility use and user errors. The provision of a grip button for on-line user feedback.
Ian Sommerville 1995
Software Engineering, 5th edition. Chapter 17
Slide 55
Key points
u
u u
Interface design should be user-centered. An interface should be logical and consistent and help users recover from errors Menu systems are good for casual or occasional system users Graphical displays should be used to present trends and approximate values. Digital displays when precision is required Color should be used sparingly and consistently
Software Engineering, 5th edition. Chapter 17 Slide 56
Ian Sommerville 1995
Key points
u
u u
Systems should provide on-line help. This should include help, Im in trouble and help, I want information Error messages should be positive rather than negative. A range of different types of user documents should be provided Ideally, a user interface should be evaluated against a usability specification
Software Engineering, 5th edition. Chapter 17 Slide 57
Ian Sommerville 1995