CS 5150 Software Engineering Lecture 9 Usability 1

advertisement
CS 5150
Software Engineering
Lecture 9
Usability 1
Administrivia
•
•
Surveys cancelled
Not all team members need to attend every
presentation
•
CS 5150
Every team member must present at least
once
2
A Couple of Interesting News Items
•
•
CS 5150
US Patent and Trademark Office attempting to
crowd-source patent review
Dual licensing fiasco
3
The Usability Corollary to Schneier’s
Law
•
•
CS 5150
Any person can invent a security system so
clever that he or she can’t imagine a way of
breaking it
Any person can design an interface so intuitive
that he or she can’t imagine a way of misusing
it
4
Software Must Be Usable to be Useful
•
•
•
CS 5150
Effective design, appropriate functionality,
responsive system
•
happy users, satisfied developers
Poor usability
•
•
•
•
Users fail to find functionality/data
Users misinterpret or misuse features
Users give up in disgust
(may apply to specific subsets of users)
Usability is more than esthetics!
5
The Core of Usability Design: Evaluation,
Iteration
CS 5150
6
•
User Interfaces in Software
Processes
Static textual documents are weak for specifying
interactive human interfaces
•
•
•
•
CS 5150
Requirement specifications benefit from
sketches, comparison with existing systems,
etc.
Design specifications should definitely include
graphical elements and benefit from a mock-up
or other form of prototype
Schedules should include user testing and time
to make changes
User interfaces must be tested with users.
Expect to change the requirements as the result
of testing.
7
Tools for User Interface
Design/Evaluation
CS 5150
8
Mock-ups: a Cheap and Flexible Tool
CS 5150
9
Focus Groups for New Interface Ideas
•
•
•
A focus group is a group interview
Interviewer
Potential users
•
•
•
CS 5150
Similar characteristics (e.g., same viewpoint)
Structured set of questions
•
•
•
Typically 5 to 12
May show mock-ups
Group discussions
Repeated with different (potential) user
populations
10
Accessibility
•
•
•
Support for users who cannot use standard interface
effectively
Your team may be subject to legal/contractual
requirements
Example of requirements specification:
•
•
•
•
CS 5150
The system must comply with Section 508 of the
US Rehabilitation Act
http://www.section508.gov/
Good first step: build your software with popular user
interface frameworks; adhere to standards
User testing may not be enough
11
Usability is More than Skin Deep
CS 5150
12
Examples of Mental Models
•
•
•
CS 5150
The desk top metaphor -- files and folders in
“physical” locations
The web search model -- A flat collection of
pages, searched upon request
Also called a conceptual model
13
Mental Models
•
A mental model is the user’s understanding of
what is going on under the hood
•
•
•
CS 5150
Allows user to predict results of actions
Usually quite a bit simpler than the actual
system implementation
Can be different from system
implementation, but such divergence
creates risk of user surprise
14
Interface Design is Skin Deep
•
Appearance of information on screen and
modes of control
•
•
CS 5150
•
•
Fonts, colors, logos, key board controls,
menus, buttons
Mouse control or keyboard control
Conventions (e.g., "back", "help")
Examples:
•
•
Screen space utilization in Adobe Reader
Number of snippets per page in Web search
15
Art and Science of Interface Design
• Interface design has a large dose of art, but there are some
general principles that can be applied
•
•
•
•
•
•
•
CS 5150
Consistency -- in appearance, controls, and function
Feedback -- what is the computer system doing? why
does the user see certain results?
Users should be able to interrupt or reverse actions
Error handling should be simple and easy to
comprehend
Skilled users should be offered shortcuts; beginners
should have simple, well-defined options
The user should feel in control
Fitt’s law
16
Interface Functions and Objects
•
•
CS 5150
Interface functions: actions available to the
user
•
•
•
•
•
Select part of an object
Search a list or sort results
View help information
Manipulate on-screen objects
Pan, zoom
In general there are many alternative interface
designs for an interface function
17
System Issues Affect Usability
•
•
The performance, reliability and predictability
of computer systems and networks is crucial to
usability
Examples
•
•
•
CS 5150
Instantaneous response time for mouse
tracking and echo of key stroke
Pipelined algorithm for a page turner
Quality of service for real time information,
e.g., audio
18
Relevant Response Time Limits
•
Example: Response time
•
•
•
CS 5150
0.1 sec – the user feels that the system is
reacting instantaneously
1 sec – the user will notice the delay, but
his/her flow of thought stays uninterrupted
10 sec – the limit for keeping the user's
attention focused on the dialogue
19
Device Aware Interfaces
•
Interfaces must take into account physical constraints of
computers and networks:
•
•
•
•
•
What is special about a smart phone?
How do you make use of a touch-sensitive screen?
What works well with a digital camera?
Constraints that the interfaces must allow for:
•
•
•
CS 5150
How does a desk-top computer differ from a laptop?
performance of device (e.g., fast or slow graphics)
limited form factor (e.g., small display, keyboard)
connectivity (e.g., intermittent)
20
Textual (Command Line) Interfaces
•
Largely displaced by graphical interfaces, but
still relevant in some contexts:
•
•
•
•
•
CS 5150
Scripting
Sometimes makes complex interactions
easier
Faster for certain tasks (and certain users)
Easier for people with some disabilities
Low bandwidth requirements
21
Download