The Gap between Users and Software

Download Report

Transcript The Gap between Users and Software

What is usability?
• Usability (1): effective, efficient and satisfactory
• Usability (2):
Ease of learning (faster the second time and so on)
Recall (remember how from one session to the next)
Productivity (perform tasks quickly and efficiently)
Minimal error rates (if they occur, good feedback so user can recover)
High user satisfaction (confident of success)
What is meant by the usability of software by describing
the characteristics of software that exhibits good usability.
• Usable software does what it is supposed to do
• Supports forgiveness or recovery so that users can correct
their mistakes
• Supports consistency so that what is learned in one part of
the system applies elsewhere
• Supports redundancy so that users can choose a method to
suit their own style
• Provides help so that users can learn
• Employs metaphors so that real world knowledge can be
employed
• Supports coherence, e.g. standards across a range of
software
• Provides feedback so that users know what the software is
doing
• Interface is intrusive so that users notice what the interface
is telling them
The Gap between users and the software
•
•
Software is not designed around tasks that users perform.
Users find themselves unable to comfortably or effectively use the software.
Why does the gap exist?
•
Slogan. “It should work” is often the only slogan. Today, reliability or
functionality alone is not enough. Usability needs to be high on the software
house’s priorities because it impacts users’ productivity and overall
satisfaction with the product.
•
Process. The software development process follows an engineering model with
little or no concern for the product’s users. Users are neither understood nor
involved in the design and evaluation of the software.
•
Approach. First, system internals are designed. Then, a user interface is
“slapped” on it. The resulting user interface reflects the underlying mechanism.
For the user who just wants to complete a task using the software, a user
interface based on the task is more appropriate than one based on system
internals. For this, the interface should be designed first—based on users’
tasks—and then the internals.
•
Skills. Good software design calls for interdisciplinary skills. Besides
programming skills, we need skills in user-centered design, technical writing,
and graphic design.
How do users react?
•
•
•
•
•
•
•
•
Confusion. The software is too complex. It is not structured as users
expect.
Frustration. The software is inflexible and unforgiving. Users cannot undo
incorrect actions.
Panic. The software’s response time is too slow—just when the user is
under tremendous pressure.
Boredom. The software’s response time is slow and tasks are overly
simplified.
Incomplete use. Only some of the software’s functions or tasks are used.
These tasks are often the easiest to perform.
Indirect use. Managers who find the software hard to use, for example, get
someone else to do it.
Misuse or modification. Those who know the software well may change it
to meet personal requirements that do not advance organizational
interests. In this case, system integrity may be adversely impacted.
Abandonment. The software is rejected by managers and other users who
have the discretion to reject it.
HCI vocabulary
•
•
•
•
•
•
•
•
Visiblity, refer to notes
Affordances, refer to notes
Mappings, relationship between actions and controls. Mappings are said
to be good if they appear natural and intuitive to the users.
Constraints, limits the number of possiblities of what can be done with
the objects.
Feedback, let users know what their actions have achieved, through
visual, auditory, haptic
Tasks, users are goal directed (specific problems to solve), it means task to
accomplish. Tasks are complex, decomposed into sub-tasks.
User’s model /mental models, the model people have of themselves,
others, the environment, and the things which they interact. People form
mental models through experience, training and instruction.
Interface metaphors combine a familiar domain with system structure to
make a concrete user interface
The design model, the user’s model and the system image
(Norman and Draper, 1986, p.46)
Feedback, let users know what their actions have
achieved, through visual, auditory, haptic
The affordance of objects
Do these icon suggest how you use them?
(a) Slider and (b) button icons
A Map of HCI
Norman’s model of interaction
(to help
understand the interaction between human user and computer)
Norman’s Seven Stages of Action / Norman’s ExecutionEvaluation cycle
Norman’s model of interaction
(to help
understand the interaction between human user and computer)
Norman’s Seven Stages of Action / Norman’s ExecutionEvaluation cycle
Gulfs of Execution and Gulfs of Evaluation
The relationship between the user and the system can be
conceptualized in terms of the gulf of execution and the gulf of
evaluation.
Gulf of Execution: Refers to the distance between the user’s goals and the
means of achieving them through the system. (What is needed to
transform intentions into an associated set of actions.)
The interface should therefore aim to reduce this gulf.
Gulf of Evaluation: Refers to the distance between the system’s behavior
and the user’s goals.
(What is needed to interpret physical state of the system and to
determine how well state matches up with intentions.)
The more effort that is required on the part of the user to interpret the
presentation, the less effective the interaction.
Cognitive issues in Direct
Manipulation(DM) Interaction Style
• DM is an interaction styles that uses:
a continuous representation of the objects of interest via a
meaningful metaphor.
rapid, incremental, reversible operations
simple, ‘physical’ actions (Shneiderman, chapter 6)
• E.g. Windows and Macintosh desktop user interfaces
• DM reduces the gulfs of execution & evaluation:
* rapid, incremental, reversible operations
encourages low-cost evaluation – good for learning &
error correction, builds an accurate user’s model.
* simple, ‘physical’ actions (interact directly with the
objects)
reduces gulf of execution
* a continuous representation of the objects of interest via
a meaningful metaphor.
creates a ‘user model’ of the user interface – users can
predict what will happen, reduces gulf of evaluation.
Cognitive issues in natural language
processing / command line interaction styles
• Reduces gulf of execution and evaluation?
•
User Objects and User Actions
User objects are the items users see (and interact with) on the software’s screen. Examples are
windows, menus, and scroll bars. Figure 1 gives a list of user objects.
User actions are the interactions users have with user
objects. An example is a mouse click a user performs
to select an icon. User actions include the following:
•Navigation;
•Selection;
•Keystrokes (entry, etc.);
•Direct manipulation (clicking, dragging, dropping, etc.).
Interaction & Support information
Interaction Information
Labels and messages are called interaction information, essential for
completing user-software interaction.
Labels are required to identify user objects, messages are required to give
feedback to users about a user action or a change in system status.
For example, the option “Edit” in your word processor is a label.
Here are some examples of user objects that need labels:
•windows;
•menu options;
•fields;
•commands.
A message can be provided in different ways. It can be textual, graphical,
audible, or a combination.
Support Information
For effective use of a software system, we also need to provide user documentation to “clarify” the following
three software usability components: user objects, user actions, and interaction information. user documentation,
is categorized as online support and printed support.
Online support information
appears on the user’s screen. Some online support information elements are as follows:
•README files;
•Online manual;
•Field Help;
•Message Help;
•Online tutorial;
•Cue cards;
•Demos;
•Examples;
•Web-based information elements.
Printed support information
printed in the form of manuals, cards, or foldouts. Some printed support information elements are as follows:
•Guide;
•Reference;
Table 1.2 Molich and Nielsen’s Usability Principles With the
Corresponding Information Components
How information contributes to software usability
Component 2. Speak the user’s language. The text should be expressed clearly in
words, phrases, and concepts familiar to the user, rather than in system-oriented
terms. Labels and messages
Component 5. Feedback. The system should always keep users informed about
what is going on, through appropriate feedback, within reasonable time.
Messages
Component 8. Good error messages. They should be expressed in plain language
(no codes), precisely indicate the problem and constructively suggest a solution.
Messages
Component 10. Help and documentation. Even though it is better if the system
can be used without documentation, it may be necessary to provide it along with
Help. Any such information should be easy to search, be focused on the user’s
task, list concrete steps to be carried out, and not be too large. Online and
printed support information
References
•
•
•
•
HCI by Jenny Preece
HCI information by Steve Brewster
Designing Web Interfaces by Michael Rees
User-centered information design for
improved usability by Pradeep Henry