CS 5150 Software Engineering - PowerPoint PPT Presentation

1 / 43
About This Presentation
Title:

CS 5150 Software Engineering

Description:

The Information Science program and Communication Department offer a series of ... conventions: Familiar aspects that do not need extra training. ... – PowerPoint PPT presentation

Number of Views:58
Avg rating:3.0/5.0
Slides: 44
Provided by: wya1
Category:

less

Transcript and Presenter's Notes

Title: CS 5150 Software Engineering


1
CS 5150 Software Engineering
Lecture 11 Usability 1
2
Course Administration
Quiz 2 on Thursday Same format as the first
quiz
3
Planning for the Presentation
How will you use the time? This is a presentation
to the client, with the instructor and teaching
assistant as a secondary audience. Possible
topics Overview of project and progress
against plan. Presentation of assumptions,
decisions. Summary of requirements in moderate
detail. What has been learned since feasibility
study? Changes in plans. Allow 15 minutes for
questions. Expect interruptions. "This is our
understanding of your requirements."
4
Planning for the Presentation
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?
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 -gt If the
presenter knows the answer, answer it. -gt Or the
presenter may ask another team member to
answer. -gt 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.
6
Usability The Analyze/Design/Evaluate Loop
Design
Analyze requirements
?
Build
Evaluate
The Information Science program and Communication
Department offer a series of courses in Human
Computer Interaction.
7
Requirements for User Interfaces
  • It is very difficult to specify an interactive
    interface in a
  • textual document
  • Requirement documents benefit from sketches,
    comparison with existing systems, etc.
  • Design documents should definitely include
    graphical elements and often benefit from a
    mock-up or other form of prototype.
  • Implementation plans should include evaluation of
    user factors and time to make changes.
  • User interfaces must be tested with users.
    Expect to change
  • the requirements as the result of testing.

8
Tools for Usability Requirements and Evaluation
Initial Mock-up Prototype Production Client's
opinions ? ? ? Competitive
analysis ? Expert opinion ? ?
Focus groups ? ? Observing users
? ? ? Measurements ? ?
9
Tools for Usability Requirements Mock-up
10
Tools for Usability Requirements Focus Group
A focus group is a group interview Interviewer
Potential users Typically 5 to 12 Similar
characteristics (e.g., same viewpoint) Structure
d set of questions May show mock-ups Group
discussions Repeated with contrasting user
groups
11
Usability Requirements Device-aware User
Interfaces
Examples desk-top computer, fast network
connection laptop computer, intermittent
connectivity PalmPilot, synchronization smart
telephone digital camera, camcorder Device-aware
user interfaces gt performance of device gt
limited form factor (display, keyboard) gt
connectivity
12
UsabilityAccessibility Requirements
Requirements about accessibility (e.g., support
for users with disabilities) are most likely to
arise in the user interface. You may have a legal
requirement to support people with disabilities.
Example of requirements specification The
system must comply with Section 508 of the US
Rehabilitation Act. See http//www.section508.go
v/
13
Usability Non-Functional Requirements
Performance, Reliability, Scalability,
Security Example Response time0.1 sec the
user feels that the system is reacting
instantaneously1 sec the user will notice the
delay, but his/her flow of thought stays
uninterrupted10 sec the limit for keeping the
user's attention focused on the dialogue
14
The Importance of User Interface Design
Good support for users is more than a cosmetic
flourish Elegant design, appropriate
functionality, responsive system
gt a measurable difference to their effectiveness
A system that is hard to use gt users
may fail to find important results, or
mis-interpret what they do find gt user may give
up in disgust A computer system is only as good
as the interface it provides to its users
15
Design from a System Viewpoint
16
Mental Model
  • What a person thinks is true about a system, not
    necessarily
  • what is actually true
  • Similar in structure to the system that is
    represented
  • Allows a person to predict the results of his
    actions
  • Simpler than the represented system. A mental
    model includes only enough information to allow
    accurate predictions (i.e. no data structures)
  • Also called conceptual model

17
Examples of Mental Model
The mental (conceptual) model is the user's
internal model of what the system provides
The desk top metaphor -- files and folders
The Web model -- one vast collection of pages
with hyperlinks
18
Interface Design
The interface design is the appearance on the
screen and the actual manipulation by the user
Fonts, colors, logos, key board controls,
menus, buttons Mouse control or keyboard
control Conventions (e.g., "back",
"help") Examples Screen space
utilization in Acrobat. Number of snippets
per page in Web search.
19
Principles of Interface Design
Interface design is partly an art, but there are
general principles 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
20
Functional Design
The functional design, determines the functions
that are offered to the user Selection of
parts of an object Searching a list or
sorting the results Help information
Manipulation of objects on a screen Pan or
zoom There may be many user interface choices for
the same function, e.g., Macintosh v. Windows
desktop
21
Data and Metadata
Structural data and metadata stored by the
computer system enable the functions and the
interface Effectiveness of searching
depends on the type and quality of data that is
indexed (free-text, controlled vocabulary,
etc.) The desktop metaphor has the concept
of associating a file with an application. This
requires a file type to be stored with each
file -- extension to filename (Windows and
Unix) -- resource fork (Macintosh)
22
Computer Systems and Networks
The performance, reliability and predictability
of computer systems and networks is crucial to
usability Examples Instantaneous response time
for mouse tracking and echo of key
stroke Pipelined algorithm for the Mercury
page turner Quality of Service for real time
information
23
Design Command Line Interfaces
User interacts with computer by typing commands
Allows complex instructions to be given to
computer Facilitates formal methods of
specification implementation Skilled users
can input commands quickly Unless very
simple, requires learning or training Can be
adapted for people with disabilities Can be
multi-lingual Suitable for scripting /
non-human clients
24
Command Line Interfaces andText-only Menus
Command line interfaces and text-only menus had
become almost entirely replaced by graphical
interfaces, but are returning Devices with
small form factor or other special features, e.g.
cell phone, PDA, etc. Interfaces for simple
tasks with general users, e.g. automated bank
teller (ATM)
25
Design Command Line Interfaces
26
DesignGraphical Interfaces and Direct
Interaction
User interacts with computer by manipulating
objects on screen 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
27
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. gt scroll bars,
buttons, help systems, sliders gt good for
users, good for designers look characteristics
of the appearance that convey information feel
interaction techniques that provide an appealing
experience
28
Design for Direct Manipulation 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
29
Help System Design
Help system design is difficult Must
prototype with mixed users Categories of
help gt Overview and general information gt
Specific or context information gt Tutorials
(general) gt Cook books and wizards gt
Emergency ("I am in trouble ...") Must have
many routes to same information Never blame the
user!
30
Information Presentation
Simple is often better than fancy Text
precise, unambiguous fast to compute and
transmit Graphical interface simple to
comprehend / learn uses of color variations
show different cases
31
Separation of Presentation from Content
Acrobat
Presentation software
PDF
Display
Information to be displayed
html
Presentation software
Display
Firefox
32
Refining the Design based on Evaluation
Designers and evaluators need to work as a
team 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) Do not
allow evaluators to become designers
33
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 Measurements on operational
systems Empirical evaluation with users
34
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 themMeasures task completion time,
    learning time, clicks number
  • Satisfaction the users' comfort with and
    positive attitudes towards the use of the
    systemMeasures attitude rating scales
  • From ISO 9241-11

35
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.
36
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

37
Evaluation with Users
  • Testing the system, not the users!
  • Stages of evaluation with users

User testing is time-consuming, expensive, and
essential.
38
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

39
Usability Laboratory
Concept monitor users while they use system
Evaluators User
one-way mirror
40
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

41
Evaluation with usersResults 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.

42
Usability Design Tensions in Networked Systems
Client computers and network connections vary
greatly in capacity Client software may run
on various operating systems. It may be current
or an earlier version. What assumptions do you
make about the user's computer and Web browser?
Designers wish to control client software,
e.g., Web browsers, but users wish to configure
their own environments. This can be a factor in
accessibility, e.g., which part of the system
determines the font size.
43
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
Write a Comment
User Comments (0)
About PowerShow.com