USER INTERFACE
DESIGN
Design Principles, User System interaction, Information
    Presentation, User Guidance, Interface Evaluation.
                                  The user interface
•   User interfaces should be designed to match the
    skills, experience and expectations of its anticipated
    users.
•   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
                   Human factors in interface design
•   Limited short-term memory
      •   People can instantaneously remember about 7 items of
          information. If you present more than this, they are more liable
          to make mistakes.
•   People make mistakes
      •   When people make mistakes and systems go wrong,
          inappropriate alarms and messages can increase stress and
          hence the likelihood of more mistakes.
•   People are different
      •   People have a wide range of physical capabilities. Designers
          should not just design for their own capabilities.
•   People have different interaction preferences
      •   Some like pictures, some like text.
                      Importance of User Interface
•   “Most important part of any computer system”
     •   “Interface is the system for most users”
•   Increasingly important
     •   GUIs a big improvement over previous approaches
     •   Platforms (e.g. Mac/ Microsoft) have style guides
     •   50% of code devoted to interface
•   Interface should “disappear” – users can focus
    on their task, not the interface
•   Biggest enemy of good interface design is time
                          Benefits of Good Design
•   Small improvements can be worth big $$$
•   Interface problems are treated as bugs
•   Big Improvements can establish new products,
    companies, markets …
     •   the browser was a UI idea – before it, search using
         gopher etc was tedious.
     •   AOL was successful because it was more user
         friendly than early leader CompuServe.
                   GUI characteristics
Characteris ti c    Des cripti on
Win dows            Multiple windows allow different information t o be
                    displayed simult aneously on th e user’s screen.
Icon s              Icon s differen t ty pes of informationOn. some sy st ems,
                    icon s represent files; on ot hers, icon s          represen t
                    processes.
Men us              Co mmands are select ed fro m a menu rat her than t yped
                    in a command lan guage.
Po int ing          A point ing device such as a mo use is used for select ing
                    ch oices from a men u or indicat ing it ems o f in terestin a
                    window.
Graph ics           Graph ical elemen ts can be mix ed wit h text on t he same
                    display.
                                   GUI advantages
•   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
               GUI characteristics
•   Windows
•   Icons
•   Menus
•   Pointing
•   Graphics
                                                   Cont..
Advantages
•   They are easy to learn and use.
     •   Users without experience can learn to use the system quickly.
•   The user may switch attention between tasks and applications.
•   Fast, full-screen interaction is possible with immediate access
    to the entire screen
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
                             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.
                                  Design principles
•   User familiarity
     •   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.
•   Consistency
     •   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
     •   If a command operates in a known way, the user should be able to predict the operation of
         comparable commands
                                   Design principles
•   Recoverability
     •   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.
•   User guidance
     •   Some user guidance such as help systems, on-line manuals, etc. should be supplied
•   User diversity
     •   Interaction facilities for different types of user should be supported. For example, some users
         have seeing difficulties and so larger text should be available
                              Design issues in UIs
•   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.
                        Interaction styles
• Direct manipulation
• Menu selection
• Form fill-in
• Command language
                    Interaction styles
Interaction    Main advantages      Main disadvantages         Application
style                                                          examples
Direct         Fast and intuitive   May be hard to             Video games
manipulation   interaction          implement                  CAD systems
               Easy to learn        Only suitable where
                                    there is a visual
                                    metaphor for tasks and
                                    objects
Menu           Avoids user error    Slow for experienced       Most general-purpose
selection      Little typing        users                      systems
               required             Can become complex if
                                    many menu options
Form fill-in   Simple data entry    Takes up a lot of screen   Stock control,
               Easy to learn        space                      Personal loan
                                                               processing
Command        Powerful and         Hard to learn              Operating systems,
language       flexible             Poor error management      Library information
                                                               retrieval systems
                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
                  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
            Control panel interface
Title       JSD. example                   Grid          Busy
Method      JSD
                                                         OUIT
Type        Network               Units           cm
Selection   Process               Reduce          Full
                                                         PRINT
 NODE        LINKS         FONT   LABEL           EDIT
                                  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
                   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
                   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
             Form-based interface
                    NE W BOOK
Title                     ISBN
Author                    Price
                          Publication
Publisher                 date
                          Number of
Edition                   copies
Classification            Loan
                          status
Date of
                          Order
purchase
                          status
                           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
            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
                           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
                    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
      Multiple user interfaces
Graph ical u ser                                Un ix sh ell
   inter face                                   inter face
(Gno me/KD E)                                   (ks h/cs h)
X-wind ows GUI                                  Co mmand
   mana ger                                      lan gu age
                                                interpreter
                   Linu x o peratin g sy stem
                           Web-based interfaces
•   Many web-based systems have interfaces
    based on web forms.
•   Form field can be menus, free text input,
    radio buttons, etc.
                    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
             Information presentation
Information to     Presentation
 be displayed        software
                                    Display
                      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
   •   Changes during a session and the changes must be communicated to the system user
   •   May be either numeric or textual
                      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?
•   Does the user need to interact with the displayed info via a direct manipulation interface?
•   Is the information textual or numeric? Are relative values important?
Alternative information presentations
               Jan   Feb Mar     April   May    June
              2842   2851 3164   2789    1273   2835
       4000
       3000
       2000
       1000
          0
               Jan   Feb   Mar   April   May    June
              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
           Dynamic information display
     1
                                             0         10         20
4           2
Dial with needle   Pie chart   Thermometer       Horizontal bar
      Displaying relative values
          Pressure                        Temper atu re
0   100   200        300   400   0   25      50      75   100
Textual highlighting
                               Data visualisation
•   Concerned with techniques for displaying large amounts of information
•   Visualisation can reveal relationships between entities and trends in the data
                                 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 over-use of colour in the
    display
                            Colour use guidelines
•   Don't use too many colours
•   Use colour coding to support user 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
                                   User guidance
•   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
                                 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
         Design factors in message wording
• Context
• Experience
• Skill Level
• Style
• Culture
Design factors in message wording
Context       The user guidance system should be aware of what the user is
              doing and should adjust the out put message t o          t he current
              cont ext .
Experience    As users become familiar with a system t hey become irrit at ed
              by long, ‘meaningful’ messages. However, beginners find it
              difficult to understand short t erse statement s of t he problem.
              The user guidance system should provide bot ht ypes of message
              and allow the user t o control message conciseness.
Skill level   Messages should be tailored t o t he user’s skills as well as their
              experience. Messages for the different classes of user may be
              expressed in different ways depending ont he terminology which
              is familiar t o the reader.
St yle        Messages should be positive rat her than negative. They should
              use t he active rat her t han t he passive mode of address. They
              should never be insult ing or t ry t o be funny.
Cult ure      Wherever possible, thedesigner of messages should be familiar
              with t he culture of t he count ry where t he system is sold. There
              are distinct cult ural differences between Europe, Asia and
              America. A suit able message for one cult ure              might be
              unacceptable in another.
System and user-oriented error messages
                                            User -o rien ted er ror messag e
System-or iented err or messag e
               Er ror #27
?
                                        Patient J . Bates is n ot r egistered
        Invalid patient id entered    C k l     ai otc o ni r e      Pn a t    s l       i   f s   t       o
                                      Click on Retry to re-input a patient name
                                      Click on Help for more information
    O   K        Cancel
                                     Patients      Help         Retry           C    a       n     c   e   l
                             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
                               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 as good at reading screen as
    they are paper text.
•   Content should be prepared with help of application specialists
•   Content should not be too large – don’t overwhelm user
                                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.
•   Index, TOC, and Search should be provided
 Entry points to a help system
     Top-level
     entry
                                        Entry from
                                        application
Entry from error
message system
                   Help frame network
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.   Mail
2.   Send mail
3.   Read mail
4.   Redirection
                               Help on WWW
• Easy to implement
• Easy for users to use
• Difficult to link to applications themselves
   •   users may need to make extra effort to get to help
   •   Help doesn’t know context where you needed help – cannot provide context sensitive
       help
                          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
                  User document types
   System           System         Novice        Experienced      System
  evaluators     administrators     users           users      administrators
  Functional      Installation    Introductory   Reference     Administrator’s
  description      document          manual       manual          guide
Description of   How to install    Getting         Facility    Operation and
  services        the system       started       description    maintenance
                        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
                 Usability attributes
Attribute             Des cripti on
Learnability          How long does it t ake a new user           to
                      become product ive with t he system?
Speed of operat ion   How well does t he system response match
                      t he user’s work practice?
Robust ness           How t olerant is the syst em of user error?
Recoverability        How good is t he syst em at recovering from
                      user errors?
Adapt ability         How closely is t he system t ied t o a single
                      model of work?
                   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.
                                        Things to Test
•   Conformance with a requirement
•   Conformance with guidelines for good design
•   Identification of design problems
•   Ease of system learning
•   Retention of learning over time
•   Speed of task completion
•   Speed of need fulfillment
•   Error rates
•   Subjective user satisfaction
          …System - User Interface Design Goals
•   5 human factors central to community evaluation:
     •   Time to learn
     •   Speed of performance
     •   Rate of errors by users
     •   Retention over time
     •   Subjective satisfaction
•   Trade-offs sometimes necessary
•   Test all design alternatives using mock-ups
                    Objective Measures of Usability
•   Effectiveness
     •   Speed of performance, # errors (against some standard)
     •   Tasks completeable by required pct of target users
•   Learnable
     •   Time to learn, amount of training and tech support needed (against some standard)
     •   Relearning time for intermittent users
•   Flexible
•   Subjective satisfaction
     •   Tiredness, discomfort, frustration, effort required, willingness/eagerness to use system
                   Simple evaluation techniques
•   Questionnaires for user feedback
•   Video recording of system use and subsequent tape evaluation.
•   Observation of users at work with system and “thinking aloud” about how they are trying
    to use system
•   Instrumentation of code to collect information about facility use and user errors.
•   The provision of a gripe button for on-line user feedback.
                                   Kinds of Tests
•   Guidelines review
•   Heuristic evaluation (will be covered last due to extensive coverage)
•   Cognitive walkthrough
•   Think aloud evaluations
•   Usability test
•   Classic experiments
•   Focus groups