CS 5150 Software Engineering Usability 2 Lecture 12

advertisement
CS 5150
Software Engineering
Lecture 12
Usability 2
CS 5150
1
Course Administration
Mid-semester break
Next lecture is Wednesday, October 13
First presentations October 13 to 15
CS 5150
2
Planning for the First Presentation
How will you use the time?
This is a presentation to both the client and the instructor,
with the teaching assistant as a secondary audience.
• Allow 15 minutes for questions. Expect interruptions.
If you have a mock-up, demonstration, prototype, etc., it is
usually better to show it first before talking about it.
CS 5150
3
Planning for the First Presentation: Content
Client and Team Agreement on Scope and Goals
• Presentation of assumptions, decisions.
"The project will be a success if..."
Progress to date
• Summary of requirements.
"This is our understanding of your requirements..."
• Mock-ups, prototypes, designs, etc.
Schedule and plan
• What has been learned since feasibility study? Changes
in plans? Problems?
"The main risks are..."
CS 5150
4
Planning for the First Presentation: Presenters
Not everybody is a great presenter, but everybody can be
well-prepared.
Have a rehearsal, check visual aids and demonstrations.
Then change nothing.
Check out the equipment in the meeting room. What
network will you use (if any). How will you connect a
computer (if you do)? What about firewalls?
Will one person act as chair and call on other members of
the team?
CS 5150
5
During the Presentation
• The presenter should stand. Other people should sit.
• Appoint a team member to take notes.
• The first presenter should introduce everybody.
• When asked a question:
-> If the presenter knows the answer, answer it.
-> Or the presenter may ask another team member to answer.
-> Otherwise make a note and reply later.
• Never interrupt your colleagues. If you have information
to add, raise you hand and the presenter can decide whether
to call on you.
CS 5150
6
Interface Design:
Graphical Interfaces and Direct Interaction
User interacts with computer by manipulating objects on screen
(e.g., Windows desktop)
• Can be intuitive and easy to learn
• Users get immediate feedback
• Not suitable for some complex interactions
• Does not require typing skills
• Straightforward for casual users, may be slow for skilled users
• Icons can be language-independent
• Difficult to build scripts
• Only suitable for human users
CS 5150
7
Design for Direct Manipulation
metaphors and mental models: Conceptual models,
metaphors, icons, but there may not be an intuitive model
navigation rules: How to move among data functions, activities
and roles in a large space
conventions: Familiar aspects that do not need extra training.
=> scroll bars, buttons, help systems, sliders
=> good for users, good for designers
look: characteristics of the appearance that convey information
feel: interaction techniques that provide an appealing experience
CS 5150
8
Interface Design: Menus
• Easy for users to learn and use
• Certain categories of error are avoided
• Enables context-sensitive help
Major difficulty is structure of large choices
•
•
•
•
Scrolling menus (e.g., states of USA)
Hierarchical
Associated control panels
Menus plus command line
Users prefer broad and shallow to deep menu systems
CS 5150
9
Help System Design
Help system design is difficult
• Must prototype with mixed users
• Categories of help:
=> Overview and general information
=> Specific or context information
=> Tutorials (general)
=> Cook books and wizards
=> Emergency ("I am in trouble ...")
• Must have many routes to same information
Never blame the user
CS 5150
10
Information Presentation
Simple is often better than fancy
CS 5150
•
Text
precise, unambiguous
fast to compute and transmit
•
Graphical interface
simple to comprehend / learn
uses of color
variations show different cases
11
Separation of Presentation from Content
Adobe Reader
PDF
Presentation
software
Display
Information to
be displayed
html
Presentation
software
Display
Firefox
CS 5150
12
Usability:
The Analyze/Design/Evaluate Loop
Design
Analyze
requirements
User testing
?
Build
Evaluate
CS 5150
13
Evaluation
• Iterative improvements during development.
• Making sure that a system is usable before launching it.
• Iterative improvements after launch.
• Categories of evaluation methods:
Analytical evaluation: without users (not in CS 5150)
Measurements on operational systems
Empirical evaluation: with users
CS 5150
14
Evaluation
How do you measure usability?
Usability comprises the following aspects:
• Effectiveness – the accuracy and completeness with which
users achieve certain goals
Measures: quality of solution, error rates
• Efficiency – the relation between the effectiveness and the
resources expended in achieving them
Measures: task completion time, learning time, clicks number
• Satisfaction – the users' comfort with and positive attitudes
towards the use of the system
Measures: attitude rating scales
From ISO 9241-11
CS 5150
15
Evaluation based on Measurement
Basic concept: log events in the users'
interactions with a system
Examples from a Web system
• Clicks (when, where on screen, etc.)
• Navigation (from page to page)
• Keystrokes (e.g., input typed on keyboard)
• Use of help system
• Errors
May be used for statistical analysis or for detailed
tracking of individual user.
CS 5150
16
Evaluation based on Measurements
Analysis of system logs
•
•
•
•
Which user interface options were used?
When was was the help system used?
What errors occurred and how often?
Which hyperlinks were followed (click through data)?
Human feedback
• Complaints and praise
• Bug reports
• Requests made to customer service
CS 5150
17
The Search Explorer Application:
Reconstruct a User Sessions
CS 5150
18
Evaluation with Users
Test the system, not the users
Stages of evaluation with users:
Prepare
Conduct sessions
Analyze results
User testing is time-consuming, expensive, and essential.
CS 5150
19
Evaluation with Users: Preparation
• Determine goals of the usability testing
“Can a user find the required information in no more than
2 minutes?”
• Write the user tasks
“Answer the question: how hot is the sun?”
• Recruit participants
Use the descriptions of users from the requirements phase
to determine categories of potential users
CS 5150
20
Usability Laboratory
Concept: monitor users while they use system
Evaluators
User
one-way
mirror
CS 5150
21
Evaluation with Users: Sessions
• Conduct the session
– Usability Lab
– Simulated working
environment
• Observe the user
– Human observer(s)
– Video camera
– Audio recording
• Inquire satisfaction data
CS 5150
22
Evaluation with users:
Results analysis
• If possible, use statistical summaries.
• Pay close attention to areas where users
– were frustrated
– took a long time
– could not complete tasks
• Respect the data and users' responses. Do not make
excuses for designs that failed.
• Note designs that worked and make sure they are
incorporated in the final product.
CS 5150
23
Evaluation Example: Eye Tracking
CS 5150
24
Evaluation Example: Eye Tracking
CS 5150
25
Refining the Design based on Evaluation
Do not allow evaluators to become designers
Designers are poor evaluators of their own work, but know the
requirements, constraints, and context of the design:
• Some user problems can be addressed with small changes
• Some user problems require major changes
• Some user requests (e.g., lots of options) are incompatible
with other requests (e.g., simplicity)
Designers and evaluators need to work as a team
CS 5150
26
Usability:
Design Tensions in Networked Systems
Designers wish to control what the user sees, but users wish to
configure their own environments.
• Accessibility requires that designers do not control parameters
such as font size.
• Client computers and network connections vary greatly in
capacity
• Client software may run on various operating systems, which
may not be the current version.
Be explicit about the assumptions you make about the user's
computer, Web browser, etc.
CS 5150
27
Usability and Cost
• Good usability may be expensive in hardware or special
software development
• User interface development may be a major part of a
software development project
Programming environments provide powerful user interface
toolkits
• Costs are multiplied if a user interface has to be used on
different computers or migrate to different versions of
systems
Web browsers provide a general purpose user interface where
others maintain the user interface software
CS 5150
28
Changes in user interface design
Examples of change: 1995 to 2010
CS 5150
29
1990
SEARCH
I NSPEC Da t a b a s e
--------------------------------------Ty p e k e y wo r d s a n d p r e s s RETURN - - o r
e n t e r a c o mma n d
De f a u l t i s ADJ : a c i d f r e e
--------------------------------------Se t # 3 :
0 r e c or ds
a c i d a dj f r e
I NSPEC Da t a b a s e
Se t # 4 :
5 r e c or ds
a c i d a dj f r e e
I NSPEC Da t a b a s e
Se t # 5 :
448 r e c or ds
a c i d a nd pa pe r
I NSPEC Da t a b a s e
Se t # 6 :
de a c i di f i c a t i on
4 r e c or ds
I NSPEC Da t a b a s e
---------------------------------------
CS 5150
30
1995
CS 5150
31
2003
CS 5150
32
2009
CS 5150
33
2001
CS 5150
34
2003
CS 5150
35
2009
CS 5150
36
1995
CS 5150
37
2006
CS 5150
38
1995
CS 5150
39
2003
CS 5150
40
2009
CS 5150
41
1995
CS 5150
42
2006
CS 5150
43
Download