Ch15

  • November 2019
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Ch15 as PDF for free.

More details

  • Words: 4,092
  • Pages: 60
User interface design ●

Designing effective interfaces  for software systems

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 1

Objectives ●

● ● ●



To suggest some general design principles for  user interface design To explain different interaction styles To introduce styles of information presentation To describe the user support which should be  built­in to user interfaces To introduce usability attributes and system  approaches to system evaluation

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 2

Topics covered ● ● ● ● ●

User interface design principles User interaction Information presentation User support Interface evaluation

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 3

The user interface ●





System users often judge a system by its  interface rather than its functionality 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

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 4

Graphical user interfaces ●

Most users of business systems interact with these  systems through graphical interfaces although, in  some cases, legacy text­based interfaces are still  used

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 5

GUI characteristics Characteristic Windows Icons Menus Pointing Graphics

©Ian Sommerville 2000 

Description Multiple  windows allow different information to be displayed simultaneously on the userÕs 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.

Software Engineering, 6th edition. Chapter 15

Slide 6

GUI advantages ●

They are easy to learn and use.  •



The user may switch quickly from one task to  another and can interact with several different  applications. •



Users without experience can learn to use the system  quickly.

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

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 7

User­centred design ●





The aim of this chapter is to sensitise software  engineers to key issues underlying the design  rather than the implementation of user interfaces User­centred design is an approach to UI design  where the needs of the user are paramount and  where the user is involved in the design process UI design always involves the development of  prototype interfaces

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 8

ludecriytvse an A n a d P r o d u c e   p a e r ­ aw v lihutneP  d sr­ouduiegrcn userbapsD ietsoigyngnE d s e E v a l u t e   d s i g n d y n a m i   s i g n w i h n ­ u e r protype E tpxreocutyy p p lfintaer fm p tuscer n ab lpe Im

User interface design process

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 9

UI design principles ●





UI design must take account of the needs,  experience and capabilities of the system users Designers should be aware of people’s physical  and mental limitations (e.g. limited short­term  memory) and should recognise that people make  mistakes UI design principles underlie interface designs  although not all principles are applicable to all  designs

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 10

User interface design principles Principle User familiarity Consistency Minimal surprise Recoverability User guidance User diversity

©Ian Sommerville 2000 

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.

Software Engineering, 6th edition. Chapter 15

Slide 11

Design principles ●

User familiarity •



Consistency •



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.

Minimal surprise •

©Ian Sommerville 2000 

If a command operates in a known way, the user should be  able to predict the operation of comparable commands Software Engineering, 6th edition. Chapter 15

Slide 12

Design principles ●

Recoverability •



User guidance •



The system should provide some resilience to  user errors and allow the user to recover from errors. This might  include an undo facility, confirmation of  destructive actions,  'soft' deletes, etc. Some user guidance such as help systems, on­line manuals, etc.  should be supplied

User diversity •

©Ian Sommerville 2000 

Interaction facilities for different types of user should be  supported. For example, some users have seeing difficulties and  so larger text should be available Software Engineering, 6th edition. Chapter 15

Slide 13

User­system interaction ●

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 2000 

Software Engineering, 6th edition. Chapter 15

Slide 14

Interaction styles ● ● ● ● ●

Direct manipulation Menu selection Form fill­in Command language Natural language

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 15

Interaction style Direct manipulatio n

Main advantages Fast and intuitive interaction Easy to learn

Menu selection

Avoids user error Little typing required

Form fill­in

Simple data entry Easy to learn Powerful and flexible

Command language Natural language

Accessible to casual users Easily extended

Main disadvantages 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 Hard to learn Poor error management Requires more typing Natural language understanding systems are unreliable

Application examples Video games CAD systems

Most general­ purpose systems

Stock control, Personal loan processing Operating systems, Library information retrieval systems Timetable systems WWW information retrieval systems

Advantages and  disadvantages

Direct manipulation advantages ●

● ●

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 2000 

Software Engineering, 6th edition. Chapter 15

Slide 17

Direct manipulation problems ●





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 2000 

Software Engineering, 6th edition. Chapter 15

Slide 18

G r i d B u s y tT iM T lypeh J S D .   e x a m p l e o d O U I T e N e t w o r k U n i t s c m S lN cO tD ioE nP rL cIN sK R e d u c e F u l P R I N T SF O N TL A B E LE D IT

Control panel interface

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 19

Menu systems ●





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 2000 

Software Engineering, 6th edition. Chapter 15

Slide 20

Advantages of menu systems ●

● ● ●

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  user’s context is indicated by the current menu  selection

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 21

Problems with menu systems ●





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 2000 

Software Engineering, 6th edition. Chapter 15

Slide 22

N E W   B O K tP iA T luubtehliosrher IP S B N r i c e u b l a t i o n d a t e N u m b r   o f tD iC E d o n c o p i e s lpuartsce hoiafsceation L o a n tstradu sO sues

Form­based interface

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 23

Command interfaces ●

● ● ●



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 2000 

Software Engineering, 6th edition. Chapter 15

Slide 24

Problems with command interfaces ●





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 2000 

Software Engineering, 6th edition. Chapter 15

Slide 25

Command languages ●

● ●

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 2000 

Software Engineering, 6th edition. Chapter 15

Slide 26

Natural language interfaces ●



The user types a command in a natural language.  Generally, the vocabulary is limited and these  systems are confined to specific application  domains (e.g. timetable enquiries) NL processing technology is now good enough to  make these interfaces effective for casual users  but experienced users find that they require too  much typing

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 27

o m a n d G rap inG lteU h  rfIuser C c a lC ailo n g u e t e r f c m a n d a n g u e m angerO i t e r p t r perating sytem

Multiple user interfaces

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 28

Information presentation ●





Information presentation is concerned with  presenting system information to system users The information may be presented directly (e.g.  text in a word processor) or may be transformed  in some way for presentation (e.g. in some  graphical form) The Model­View­Controller approach is a way of  supporting multiple presentations of data

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 29

In fbeo drm tisplioyne dtoP a reosfnw tarieon D isplay

Information presentation

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 30

V iV eiew  w s m taeethodsview  m o daifgecsationC ontrolerm  staheodsU e s s e r   i n p u t s M lan pqduaetris M o d e M o d e l   d i t s M lodel m o d e  settahoeds

Model­view­controller

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 31

Information presentation ●

Static information • •



Initialised at the beginning of a session. It does not change  during the session May be either numeric or textual

Dynamic  information • •

©Ian Sommerville 2000 

Changes during a session and the changes must be  communicated to the system user May be either numeric or textual

Software Engineering, 6th edition. Chapter 15

Slide 32

Information display factors ●





● ●

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?

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 33

J a n F e b M a r A p r i l M a y J u n e 2 8 4 2 2 8 5 1 3 1 6 4 2 7 8 9 1 2 7 3 2 8 3 5 4 0 3200 100JanF ebM arA prilM ayJune

Alternative information presentations

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 34

Analogue vs. digital presentation ●

Digital presentation • •



Compact ­ takes up little screen space Precise values can be communicated

Analogue presentation • • •

©Ian Sommerville 2000 

Easier to get an 'at a glance' impression of a value Possible to show relative values Easier to see exceptional data values

Software Engineering, 6th edition. Chapter 15

Slide 35

1 01 0 2 0 42 3 D ial w ith nedleP ie chartT herm oetrH orizontal bar

Dynamic information display

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 36

P r e s u r e T e m p e r a t u r e 010203040025507510

Displaying relative values

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 37

T h e   f i l e n a m e   y o u   h a v e   c h o s e n   h a s   b e n u s d . P s c h s n t r m !C h. 16U sO eK r interface d sC ian gcnel

Textual highlighting

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 38

Data visualisation ●





Concerned with techniques for displaying large  amounts of information Visualisation can reveal relationships between  entities and trends in the data Possible data visualisations are: • • • • •

©Ian Sommerville 2000 

Weather information collected from a number of sources The state of a telephone network as a linked set of nodes Chemical plant visualised by showing pressures and  temperatures in a linked set of tanks and pipes A model of a molecule displayed in 3 dimensions Web pages displayed as a hyperbolic tree Software Engineering, 6th edition. Chapter 15

Slide 39

Colour displays ●

● ●

Colour 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 colour in  interface design include: • •

©Ian Sommerville 2000 

The use of colour to communicate meaning Over­use of colour in the display

Software Engineering, 6th edition. Chapter 15

Slide 40

Colour use guidelines ● ● ● ● ● ● ● ●

Don't use too many colours Use colour coding to support use tasks Allow users to control colour coding Design for monochrome then add colour Use colour coding consistently Avoid colour pairings which clash Use colour change to show status change Be aware that colour displays are usually lower  resolution

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 41

User support   ●





User guidance covers all system facilities to  support users including on­line help, error  messages, manuals etc. The user guidance system should be integrated  with the user interface to help users when they  need information about the system or when they  make some kind of error The help and message system should, if possible,  be integrated 

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 42

A p l i c a t o n lintrfapceprM H e E r o   m e s a g e s y t e s a g e n t i o n y m lfram H e ps E rot m exsage

Help and message system

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 43

Error messages ●





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 2000 

Software Engineering, 6th edition. Chapter 15

Slide 44

Design factors in message wording Context Experience

Skill level

Style Culture

©Ian Sommerville 2000 

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 userÕs skills as well as their experience. Messages for the  different classes  of user may be expressed in different ways depending on  the 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, 6th edition. Chapter 15

Slide 45

Pleas x t lic k  Bates , J .OK Can

Nurse input of a patient’s name

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 46

Use System Err or #2 P a .   Ba tie Clic k on atie or  In vaCanc lid pa ?OK y to or m P aHe tie Re yC System and user­oriented error messages

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 47

Help system design ● ● ●



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 2000 

Software Engineering, 6th edition. Chapter 15

Slide 48

Help information  ● ●





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 2000 

Software Engineering, 6th edition. Chapter 15

Slide 49

Help system use ●





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 2000 

Software Engineering, 6th edition. Chapter 15

Slide 50

T enotpr­ylevl taprlyic fartom E n n tm E n resya fgreom  syetrm o H elp fram e ntw ork

Entry points to a help system

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 51

H elp fram e m apM M a i l   r e d i r e c t i o n  n lrp in a m a y   b e d   a o t h e r e t w o r k u s r y   p r e s i n g t h e d c t t o n i t h c o r l a l .   T h e   s e m a k   f m e o f u r   o u s e t o w h t m a i l h b n s e n Y o u   a r e   h r e m o r e n e x t t o p i c s  2 l1 H e p h i s t o r y  4. M .3 a eR S nidr em actioln

Help system windows

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 52

User documentation ●





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 2000 

Software Engineering, 6th edition. Chapter 15

Slide 53

teF S y s e m S y s t e m N o v i c e E x p e r i n c e d S y s t e m adeuslnucrtpio v ronsaladIm idnson rtcaulm ateioonrsIntm sroadnurcto u u s a d m i n r a o r s r y R e f r e n c A d m i n s t r a o r Õ s l m a u a l g u d e D escrivptco  esfH n  thestoyinesm o w talG esatrindgdeF ascrilptyonO rm p e antion aced User document types

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 54

Document types ●

Functional description •



Introductory manual •



Describes all system facilities in detail

System installation manual •



Presents an informal introduction to the system

System reference manual •



Brief description of what the system can do

Describes how to install the system

System administrator’s manual •

©Ian Sommerville 2000 

Describes how to manage the system when it is in use Software Engineering, 6th edition. Chapter 15

Slide 55

User interface evaluation ●





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 2000 

Software Engineering, 6th edition. Chapter 15

Slide 56

Usability attributes Attribute Learnability   Speed of operation   Robustness   Recoverability   Adaptability  

©Ian Sommerville 2000 

Description How long does it take a new user  to become productive with the system? How well does the system  response match the userÕs 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?

Software Engineering, 6th edition. Chapter 15

Slide 57

Simple evaluation techniques ● ●





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 2000 

Software Engineering, 6th edition. Chapter 15

Slide 58

Key points ●







Interface design should be user­centred. An  interface should be logical and consistent and  help users recover from errors Interaction styles include direct manipulation,  menu systems form fill­in, command languages  and natural language Graphical displays should be used to present  trends and approximate values. Digital displays  when precision is required Colour should be used sparingly and consistently

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 59

Key points ●







Systems should provide on­line help. This should  include “help, I’m 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

©Ian Sommerville 2000 

Software Engineering, 6th edition. Chapter 15

Slide 60

Related Documents

Ch15
May 2020 7
Ch15
November 2019 21
Ch15
May 2020 7
Ch15
October 2019 21
Ch15
November 2019 15
Ch15
June 2020 7