User Support - Seneca - School of Information & Communications

advertisement
User Support
Contents




Types of user support
Requirements of user support systems
Types of help systems
Authoring issues
2
User Support



Some claim that a well designed interactive
system will require no additional user support
This is untrue of even the best systems
Systems require four types of support




Quick reference
Task-specific help
Full explanation
tutorial
3
Quick Reference



This is a short form of help to remind
the user of the syntax of a command
Often, it is automatic if the user pauses
for a certain period
It can take the form of



Tooltips
file name completion
Code assistants
4
Quick Reference
A Java Tool Tip
A Code Assistant
5
Task-Specific Help


This is used when the user encounters a
problem while performing a task and needs
help to complete the task
This is often implemented as contextsensitive help



A help button is provided on a dialog
When the button is clicked, help is provided on the
dialog being used
Often, this is implemented as simply links into the
existing online documentation
6
Full Explanation




This is the full explanation of how the
system or a specific feature works
This information is usually consulted by
experts
It is often not immediately available to
novices to avoid overwhelming them
It can be provided online or in paper
form or both
7
Tutorial



A tutorial serves to introduce the new user to
how to use a system
It demonstrates how to use the system to
accomplish practical goals
Often organized as




System concepts
Overview of the interface
Your first use of the system
A list of how-to do specific tasks
8
Contents




Types of user support
Requirements of user support systems
Types of help systems
Authoring issues
9
Requirements of User Support
Systems


What would the ideal help system be like?
This is a difficult question to answer since it
depends upon




The nature of the application
The anticipated users of the system
We will list desirable features of an idealized
help system
Real systems might differ from this, often for
good reasons
10
Availability

The user should be able to




Access the help system while running the program
Access help while the program is not running
Access help while running another program
These goals can be achieved if the help
system


Runs concurrently with the system
Is run in a windowed environment where it is not
dependent on the parent application for rendering
11
Accuracy & Completeness





Applications are updated regularly
Often, the documentation is forgotten and
allowed to become outdated
This can result in help actually being wrong
Obviously, this must be avoided
It is also important to ensure that all features
have been documented since a few can be
easily overlooked
12
Consistency

A program might have




On-line help
Paper manuals
Context-sensitive help
It is important that it be consistent in terms
of



Content – they all state the same things
Terminology – they all use the same terms
Style – they all look similar
13
Robustness


Help systems are often used by people who
are confused
This makes it important that




The help system
The help system
The help system
The help system
behaviour
is easy to use
should not crash
should have good error handling
should have predictable
14
Flexibility

The help system should be able to adapt to
the needs of the user



It should offer simple help to novices
Advanced help to experts
These goals can be achieved in various ways




Modularized help systems
Context-sensitive help
Adaptive help systems which infer the user’s
expertise and the task being performed
Hypertext systems which allow exploration to
various levels of depth
15
Unobtrusive


The help system should not interfere
with the user’s normal work
The help system should not interfere
with the operation of other programs



Do not grab focus from the user
Do not lock the system while help is active
Do not use system or global modality for
help systems
16
Contents




Types of user support
Requirements of user support systems
Types of help systems
Authoring issues
17
Types of Help Systems


There are different types of help
systems
They differ because of



The technology on which they are
implemented
The sophistication of the user
The needs and nature of the application
18
Command Assistance


This provides help when the user requests it
Examples include





UNIX man
DOS help
Windows help
These systems work well if the user knows
what they are looking for
They do not work well if the user wants to
explore new capabilities of the system
19
Command Prompts



These are used in command line
interfaces
When the user enters an incorrect
command, they display the correct
syntax of the command
They can also use menus to help the
user issue the command they want
20
Command Prompts

IBM’s Time
Sharing
Option (TSO)
is a command
line system
which uses a
menu (ISPF)
to help the
users issue
commands
21
Context-sensitive Help



These are systems which provide help
on the context in which the user is
working
They often take the form of a help
button on a dialog
They save the user from having to
locate the relevant parts of the help
system
22
Online Tutorials

These are systems which guide the user
through the system



through examples and
might let the user perform operations
under the systems guidance
Often have limited intelligence and can
recognize incorrect input as correct
23
Online Tutorials




Training Wheels is an interface proposed by
researchers at IBM
The user is presented with a full version of
the interface but with limited functionality
This lets them explore the system without
being able to do any real damage
If they access an area which has been
disabled, they are told it is unavailable
24
Online Documentation


At its simplest this is just the paper
documentation stored on the computer
Advantages



Don’t have to find manuals
Searchable
Disadvantages



more difficult to read text off a computer screen
Provides more information than the user wants
Can still be difficult to find what you are looking
for
25
Online Documentation

One approach to placing manuals online
is to use hypertext




Allows interrelated items to be linked
Allows tables of contents to be linked
Can make finding things easier
Suffers from the problem where the user’s
path is so complicated they get lost in the
document
26
Online Documentation



An alternative approach is minimal
documentation
This is a cut-down version of the full manual
with just the essentials retained
This makes it



Easy to read
Easy to navigate
Users can learn a task with minimal
documentation 40% faster than with the full
documentation
27
Wizards

A wizard is a program which helps a user perform a
complex task







It leads the user step by step
It asks the user a series of questions to determine what
should be done
It hides the complexity of the underlying interface
They often let the user back up to change previous decisions
Some provide progress indicators, especially for long,
involved tasks
They allow novices to perform complex tasks
Are great for infrequently performed tasks
28
Wizards

The drawbacks of wizards include



They can be overly rigid and constrain the
user
Many options are omitted
Since the user does not see the output or
commands issued, he or she does not learn
how to use the underlying commands
themselves
29
Assistants


Assistants are software tools which
monitor user behaviour and try to offer
hints or suggestions when they
recognize particular sequences
Eager was one of the early systems


When it sees the user repeating actions, a
cat appears suggesting the next step
The cat is unobtrusive and can be
controlled by the user
30
Assistants

Clippy is the Microsoft Office Assistant


Clippy was despised as irritating and unhelpful
Clippy failed to be unobtrusive





The user was presented with long lists to read
Distracting animations were performed for no reason
The user was unable to continue to work effectively
Many of the suggestions were wrong or inappropriate
Many found an animated paper clip to be more annoying
than cute
31
Assistants

Clippy has been retired to the big bit bucket
in the sky…


He can be reincarnated in the latest office by
turning him on or off, under user control
His main functions have been taken over by smart
tags



Small icons which appear near where the user is working
Clicking on them produces help
Ignore them or go on to another task and they disappear
32
Assistants
33
Agents

Microsoft agent is a generalization of
the assistant that supports




3-D animated characters
Text-to-speech
Speech recognition
This evolved from the earlier attempt to
produce an agent to aid the user, called
Microsoft Bob
34
Agents



Clippy was the first use of the Microsoft
Agent software
Clippy’s behaviour was controlled by a
sophisticated Bayesian probability
program
To date, all of the agents produced by
Microsoft have been deemed failures
35
Agents



The user’s displeasure was not limited to
Clippy
There were a variety of other characters
which could be substituted
Users found these to be equally annoying
Peedy
Merlin
Genie
Robby
36
Agents

The failure of agents is because they ignored
two main factors in human psychology




Human are immediately distracted by motion in
their peripheral vision. Thus, the animation
distracted the user
Faces or caricatures of faces are highly distracting
And finally, the interruptions were often at
comically inappropriate and annoying times
The result was that the agents were almost
universally despised
37
Aero Sidebar




Windows Vista is introducing the
sidebar
This can hold a variety of information,
including help
It will replace the use of agents
It looks to be far less intrusive and can
provide help across applications
38
Aero Sidebar
39
Adaptive Help Systems

Every user has a different level of skill




Familiar with a subset of the functionality
Expertise in some systems but none in
others
Different levels of understanding
Adaptive help systems adapt to the skill
level of the user and offer help and
suggestions appropriate to the user
40
User Modeling




Adaptive systems build a model of the
user and his or her skill level
This model takes time to be built
Most systems start with a generic user
model and refine this as it observes
how the user behaves
There are different ways to represent
the user model
41
Quantification




Categories are created based on the user’s
level of expertise
Real users are then placed into one of these
categories based on behaviour
Each category has pre-defined help that will
be provided to members of that category
Users will be moved between categories if the
expertise they demonstrate changes
42
Stereotypes



This creates categories of stereotypical users
rather than just categories based on expertise
Once again, users are assigned to
stereotypes by comparing user behaviour
with that for the stereotype
Stereotypes perform well is the stereotypes
are well chosen and represent actual user
types
43
Overlay Models



A model of an expert user is constructed
Each user is then represented by what they
have in common with the expert model and
by the differences
The advantage of this technique is that the
system knows what the ideal user is and can
measure progress in attaining it
44
Task Modeling




The system must be able to recognize the
task the user is performing before it can offer
help
Many systems do this by storing a series of
steps and then comparing user actions to
these steps
This fails when the user approaches the
problem in an unconventional manner
Task recognition is a problem for both
adaptive help systems and agents
45
Knowledge Representation

Adaptive systems must be able to store
information on




The user
User models
Tasks
Representation techniques are drawn from
artificial intelligence




Rule-based techniques
Frame-based techniques
Network-based techniques
Example-based techniques
46
Rule-based Techniques



This represents knowledge as a series
of rules and facts
This information is interpreted by a an
inference mechanism
These are the techniques used by
expert systems
47
Rule-based Techniques
IF
command is EDIT file
AND
lastCommand is COMPILE file
THEN
task is DEBUG
action is “describe debugger”
48
Frame-based Techniques


A frame is a data structure containing labeled
slots or attributes
Each attribute describes some aspect of the
user
User
expertise: novice
command: EDIT file
lastCommand: Compile file
sessionErrors: 6
action: describe debugger
49
Network-based Techniques


These represent knowledge as
relationships between facts
This is commonly implemented as a
semantic network
CC is an instance of COMPILE
COMPILE is a COMMAND
COMPILE is related to DEBUG
COMPILE is related to EDIT
Debugger facilitates DEBUG
50
Example-based Techniques



These represent command patters as linked
structures
They could be stored in a decision tree
For example



EDIT file
COMPILE file
This would be recognized as a task and
indicate that information on debugging is
appropriate
51
Problems with Knowledge
Representation




It takes a lot of time to gather the
information
It takes an expert to provide the
information
Gathering information on individual
users takes time
Interpreting user actions is difficult and
prone to error
52
Contents




Types of user support
Requirements of user support systems
Types of help systems
Authoring issues
53
Help Design Issues

Initiative




Should help intrude on the user or should the user
request help?
If it intrudes, it can disrupt the user
If it is invoked only when the user wants it, it will
not be able to bring new techniques to the
attention of the user
The solution is to allow the user to query help at
any time and for help to intrude on the user in the
least disruptive manner
54
Effect




Agents and adaptive help often store large
amounts of information on users and tasks
This information is expensive to create and
maintain
Often, it can be pruned to reduce it to the
essential information for the task
This minimizes the information to only that
required for the necessary effect
55
Scope



Should help be offered at the
application or system level?
Modeling users at the system level is far
more complex than at the application
level
Dealing with concurrent execution and
interleaved activities with many
applications makes it even more difficult
56
Presentation Issues

How is help requested?



Help button on screen
Help button on keyboard
How is help displayed?



Full-screen or windowed
Pop-up dialogs
The choice depends on the type of help
and the amount to be displayed
57
Presentation Issues

How much to display?



The amount displayed should not be too
large as it is harder to read
Hypertext allows text to be broken into
smaller units
Writing style


Clear, concise, to the point
Avoid use of unfamiliar terminology
58
Download