Ch15 User Interface Design
Ch15 User Interface Design
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide1
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide2
Objectives
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide3
Topics covered
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide4
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide5
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide6
GUI characteristics
Characteristic
Windows
Icons
Menus
Pointing
Graphics
IanSommerville2000
Description
Multiple windowsallowdifferentinformationtobe
displayedsimultaneouslyontheusersscreen.
Iconsdifferenttypesofinformation. Onsomesystems,
iconsrepresentfiles;onothers,icons
represent
processes.
Commandsareselectedfromamenuratherthan typed
inacommandlanguage.
Apointingdevicesuchasamouseis usedforselecting
choicesfromamenuorindicatingitemsofinterest ina
window.
Graphicalelementscanbemixedwithtext onthesame
display.
SoftwareEngineering,6thedition.Chapter15
Slide7
GUI advantages
SoftwareEngineering,6thedition.Chapter15
Slide8
User-centred design
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide9
Producepaper
baseddesign
prototype
Design
prototype
Evaluatedesign
withendusers
Produce
dynamicdesign
prototype
Executable
prototype
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Evaluatedesign
withendusers
Implement
finaluser
interface
Slide10
UI design principles
SoftwareEngineering,6thedition.Chapter15
Slide11
Consistency
Minimal surprise
Recoverability
User guidance
User diversity
IanSommerville2000
Description
The interface should
use
terms and
concepts
which
are
drawn
from
the
experience of the people who will make most
use of the system.
The interface should be consistent in that,
wherever possible, 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 errors.
The interface should provide meaningful
feedback when errors occur and provide
context-sensitive user help facilities.
The interface should provide appropriate
interaction facilities for different types of
system user.
SoftwareEngineering,6thedition.Chapter15
Slide12
Design principles
User familiarity
Consistency
Minimal surprise
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide13
Design principles
Recoverability
User guidance
User diversity
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide14
User-system interaction
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide15
Interaction styles
Direct manipulation
Menu selection
Form fill-in
Command language
Natural language
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide16
Interaction
style
Direct
manipulation
Main advantages
Main disadvantages
Menu
selection
Form fill-in
May be hard to
implement
Only suitable where
there is a visual
metaphor for tasks
and objects
Slow for experienced
users
Can become complex
if many menu options
Takes up a lot of
screen space
Command
language
Powerful and
flexible
Natural
language
Accessible to
casual users
Easily extended
Hard to learn
Poor error
management
Requires more typing
Natural language
understanding
systems are unreliable
Application
examples
Video games
CAD systems
Advantages and
disadvantages
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide18
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide19
Busy
Title
JSD.example
Method
JSD
Type
Network
Units
cm
Selection
Process
Reduce
Full
NODE
LINKS
IanSommerville2000
FONT
LABEL
OUIT
EDIT
SoftwareEngineering,6thedition.Chapter15
Slide20
Menu systems
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide21
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide22
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide23
Form-based interface
NE WBOOK
Title
ISBN
Author
Price
Publisher
Publication
date
Edition
Numberof
copies
Classification
Dateof
purchase
IanSommerville2000
Loan
status
Order
status
SoftwareEngineering,6thedition.Chapter15
Slide24
Command interfaces
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide25
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide26
Command languages
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide27
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide28
Command
language
interface
GUI
manager
Command
language
interpreter
Operatingsystem
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide29
Information presentation
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide30
Information presentation
Informationto
bedisplayed
Presentation
software
Display
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide31
Model-view-controller
Viewstate
viewmodification
messages
Userinputs
Controllermethods
Viewmethods
Modelqueries
andupdates
Controllerstate
Modeledits
Modelstate
Modelmethods
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide32
Information presentation
Static information
Dynamic information
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide33
SoftwareEngineering,6thedition.Chapter15
Slide34
Alternative information
presentations
Jan
2842
Feb Mar
2851 3164
April
2789
May
1273
June
2835
May
June
4000
3000
2000
1000
Jan
IanSommerville2000
Feb
Mar
April
SoftwareEngineering,6thedition.Chapter15
Slide35
Digital presentation
Analogue presentation
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide36
1
4
10
20
Dialwithneedle
IanSommerville2000
Piechart
Thermometer
SoftwareEngineering,6thedition.Chapter15
Horizontalbar
Slide37
Pressure
0
100
IanSommerville2000
200
Temper atu re
300
400
25
SoftwareEngineering,6thedition.Chapter15
50
75
100
Slide38
Textual highlighting
Thefilenameyouhavechosenh asbeen
used.Pleasechoosean othername
Ch.16Userinterfacedesign
OK
IanSommerville2000
Cancel
SoftwareEngineering,6thedition.Chapter15
Slide39
Data visualisation
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide40
Colour displays
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide41
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide42
User support
SoftwareEngineering,6thedition.Chapter15
Slide43
Help
interface
Errormessage
system
Message
presentation
system
Help
frames
IanSommerville2000
Errormessage
texts
SoftwareEngineering,6thedition.Chapter15
Slide44
Error messages
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide45
Experience
Skilllevel
Style
Culture
IanSommerville2000
Theuserguidancesystemshouldbeawareofwhatthe useris
doingandshouldadjusttheoutputmessageto
thecurrent
context.
Asusersbecomefamiliarwithasystem theybecomeirritated
bylong,meaningfulmessages. However,beginnersfindit
difficulttounderstandshorttersestatementsof theproblem.
Theuserguidancesystemshouldprovidebothtypesofmessage
andallowtheusertocontrolmessageconciseness.
Messagesshouldbetailoredtotheusersskillsaswellastheir
experience.Messagesforthedifferentclasses ofusermaybe
expressedindifferentwaysdependingontheterminologywhich
isfamiliartothereader.
Messages shouldbepositiveratherthannegative.Theyshould
usetheactiveratherthanthepassivemodeofaddress.
They
shouldneverbeinsultingortrytobefunny.
Whereverpossible,the designerofmessagesshouldbefamiliar
withthecultureofthe countrywherethesystemissold.There
aredistinctculturaldifferences
betweenEurope,Asiaand
America.Asuitablemessageforoneculture
mightbe
unacceptableinanother.
SoftwareEngineering,6thedition.Chapter15
Slide46
Bates, J.
OK
IanSommerville2000
Cancel
SoftwareEngineering,6thedition.Chapter15
Slide47
Error #27
Invalid patient id entered
OK
Cancel
IanSommerville2000
Help
SoftwareEngineering,6thedition.Chapter15
Retr y
Cancel
Slide48
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide49
Help information
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide50
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide51
Entryfrom
application
Entryfromerror
messagesystem
Helpframenetwork
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide52
Mailredirection
Mailmayberedirectedtoanother
networkuserbypressingthe
redirectbuttoninthecontrol
panel.Thesystemasksforthe
nameoftheuserorusersto
whom themailhasbeensent
Youarehere
more
next
top ics
Helphistory
1.Mail
2.Sendmail
3.Readmail
4.Redirection
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide53
User documentation
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide54
System
administrators
Novice
users
Experienced
users
System
administrators
Installation
document
Introductory
manual
Reference
manual
Administrators
guide
Howtoinstall
thesystem
Getting
started
Facility
description
Operationand
maintenance
Functional
description
Descriptionof
services
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide55
Document types
Functional description
Introductory manual
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide56
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide57
Usability attributes
Attribute
Learnability
Speedofoperation
Robustness
Recoverability
Adaptability
IanSommerville2000
Description
Howlongdoesittakeanewuser
to
becomeproductivewiththesystem?
Howwelldoesthesystem responsematch
theusersworkpractice?
Howtolerantisthesystemofusererror?
Howgoodisthesystematrecoveringfrom
usererrors?
Howcloselyisthesystemtiedtoa single
modelofwork?
SoftwareEngineering,6thedition.Chapter15
Slide58
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide59
Key points
IanSommerville2000
SoftwareEngineering,6thedition.Chapter15
Slide60
Key points
SoftwareEngineering,6thedition.Chapter15
Slide61