Please enable JavaScript.
Coggle requires JavaScript to display documents.
INTERACTIVE SYSTEM DESIGN & EVALUATION
Basic Usability (DESIGNING…
INTERACTIVE SYSTEM DESIGN & EVALUATION
- Basic Usability
DESIGNING USABLE SYSTEMS
- Considerations
- Users, Tasks, Environments
- Prioritize different usability goals
- Evaluate, eliminate inevitable mistakes
- Basic principles of good design
-
- Principles v Guidlines
- Principles: General, relatively abstract 'out' rules
- Guidelines: More concrete, situation-specific advice on what to do to follow principles
The first principles… from Ben Shneiderman’s very influential 1987 book Designing The User Interface
- Ben Shneiderman's 8 Golden Rules
- strive for consistency
- enable frequent users to use shortcuts
- offer informative feedback
- design dialogues to yeild closure
- offer simple error handling
- permit easy reversal of actions
- support internal locus of control
- reduce short term memory load
-
CONSISTENCY
- Internal Consistency
- Different parts of the same system work in the same way
- External Consistency
*System works in the same way as other systems, e.g. one car drives like another
- Avoids confusion and minimizes learning effort
- Enable user to build a reliable mental model of how the interface works
- Makes the interface familiar and predictable by providing a sense of stability
- Allows users to transfer existing knowledge to new tasks and focus on tasks because they need not spend time trying to remember the differences in interaction
- Allows users to learn and strengthen procedural skills
- Always important: names of commands, layout of information, and operational behaviour.
REDESIGNING
- CONTINUITY
- You can redesign and modify, but users experiences should help them, not confuse them...
- Make difference visible: As important as making sure that controls with the same behaviour look the same , is making sure that controls that do different things look different
-
FEEDBACK
- Every action the user makes should produce a perceptible response
- The intention is to reduce user uncertainty that the system has:
- recieved the last input
- is currently doing something about it
- or is waiting for the next input
- ommands should result in visible change to the interface
- e.g. 'mail has been sent' in response to a 'Send' command
- Presentation of objects on screen updated to reflect their current state
- Task analysis should enable appropriate information to be identified as feedback for a specific task
- System should show its status
- What mode its in (what you can see or do)
- What state its in (where in process you are)
- What it expects ot enables the user to do
RESPONSE TIMES
- Response time for feedback should be appropriate to the type of action
- Provide 'system busy' feedback if time will exceed a few seconds or is unpredictable
- Provide indication fo how many transactions remain for example as a bar chart or percentage
- This largely disappeared as a problem with fast PCs and has re-appeared with distributed web based applications
MATCHING HOW USERS THINK
- Interface should let the users work with
- Users’ concepts
- Users terminology
- Operations that fit users conception of actions
- Dialogues should
- Use simple familiar language
- Present information in clear logical order
- Yield closure: natural begining , middle , end
USER CONTROL
- User initiates actions, not PCor software
- User controls pace of activities
- Use techniques to automate tasks, but implement them in a way that allows the user to choose aor control the automation
- User should be able to personalize aspects of the interface, such as colour , fonts or other options
MINIMAL USER INPUT
- User input should be as little work as possible
- balance between keystrokes, mose movements, clicks and memory load
- Reducing keying errors increases speed of data entry
- Edit error rather than retyping
- Allow selection froma a list rather than typing (recognition rather than recall)
- Do not request input of information which can be derived automatically or which has been entered previously
- Use default values
-
FORGIVENESS
- UNDO
- Where possible, allow easy reversal of actions
- Mistakes have low cost
- Allow exploration
ERROR PREVENTION
- Design Out Errors
- Make errors less likely
- Perceptual confusion
- Similar actions
- Make users check likely mistakes or irreversible actions
- If possible, make errors impossible
MURPHY'S LAW
- If thers a wrong way to do something, someone will do it that way
- design so ther isnt a wrong way to do it
APPROPRIATE USER SUPPORT
- ERROR messages
- should explain what is wrong and what corrective action is required
- should use ‘jargon’ familiar to the user
- HELP messages
- important to recognise different types of help
- should be available when required and context-specific
- can the user get help about what responses are possible at a given point in a dialogue?
- Often this support is poorly designed in terms of what information is given to the user
FLEXIBILITY
- Measure of how well a dialogue can cater for different levels of user skill
- Provide alternative means of achieving the same goal which match different models of how the interface works
- e.g. word selection: cursor to start of word and double click, click and drag, click and shift-click
- e.g. word deletion: word highlighted and Control +X key, select ‘Cut’ menu option, backspace
- Adapt to the skill level of the user by providing accelerators
- allow user to answer ahead
- provide key bindings for menu options
- providing macro facility
- accepting abbreviations for command words
- accepting synonyms (alternative names)
- allowing user to choose level of instructions or help
AESTHETIC ISSUES
- Good-looking interfaces = attractive!
- Elegance tends to go with good usability
- Careful use of colour, graphics and formatting can make the design more aesthetically pleasing
BUT
- Danger that you can hide or obscure controls or key information
- Need to get the right balance
- Nielsen advocates Simplicity – particularly for Website design
ILLUSION OF SIMPLICITY
- PRINCIPLE: any attempt to hide complexity will serve to increase it
- Simple looking screens with hidden controls (think MAC)
- PRINCIPLE: if the user can't find it, it doesnt exist
DISCOVERY
- Design interfaces so that users can discover all the functionality
- Q: How do you know if features are discoverable? A: Need to do user testing
- MS Office 2007 redesign: the ribbon was introduced to improve discoverability (as users kept demanding functionality they already had but couldn’t find) – largely successful
- FINDABILITY
How easily users can locate features they know exist
-
-
PRINCIPLES
- The Principle of Visibility
- It should be obvious what a control is used for
- The Principle of Affordance
- It should be obvious how a control is used. Objects afford certain actions and not others
- How their appearance suggests they are used
- How they can be physically manipulated
- Affordances are partly learned conventions
- How to be a vandal
- Plywood boards afford writing (but easy to smash)
- Glass affords smashing (but easy to write on)
- Physical Affordances
- Virtual Affordances
- The Principle of Feedback
- It should be obvious when a control has been used
- Basic principles of design usability
- Visibility of system status
- Match between system and real world
- User control and freedom
- Consistency and standards
- Error prevention
- Recognition rather than recall
- Flexibility and efficiency of use
- Aesthetic and minimalist design
- Help users recognize, diagnose and recover from errors
- Help and documentation
- Consistency & Standards
- Users should not have to wonder whether different words, situations, or actions mean the same thing.
(Follow platform conventions)
- Visibility of system status
- The system should always keep users infromed about what is going on, through appropriate feedback within reasonable time
- Match between system and the real world
- The system should speak the users' language, with words, phrases and concepts familiar to the user, rather than system-oriented terms. Follow real-world conventions, making information appear in a natural and logical order.
- User control and freedom
- User often choose system functions by mistake and will need a clearly marked emergency exit to leave the unwanted state without having to go through an extended dialogue. Support undo and redo.
- Recognition rather than recall
- Minimize the users memory load by tmaking objects, actions and options visible. The user should not have to remember information from one part of the dialogue to another. Instructions for use of the system should be visible or easily retrievable whenever appropriate.
- Error Prevention
- Even better than good error messages is a careful design which prevents a problem from occuring in the first place. Either eliminate error-prone conditions or check for them and present users with a confirmation option before they commit to the action
- Help Users Recover from Errors
- Error messages should be expressed in plain language (no codes), preceisely indicate the problem, and constructively suggest a solution.
- Help and documentation
- Even though it is better if the system can be used without documentation. Any such information should be easy to search, focused on the user's task, list concrete steps to be carried out and not be too large
- Flexibility and efficiency of use
- Accelerators -- unseen by the novice user -- may often speed up the interaction for the expert user such that the system can cater to both inexperienced and experienced users. Allow users to tailor frequent actions.
- Aesthetic and minimalist design
- Dialogues should not contain information which is irrelevant or rarely needed. Every extra unit of information in a dialogue competes with the relevant units of information and diminishes their relative visibility.