lecture 16 user support. today’s outline users have different requirements for support at...
TRANSCRIPT
Lecture 16
user support
Today’s Outline Users have different requirements for
support at different times. User support should be:
available but unobtrusiveaccurate and robustconsistent and flexible.
Today’s Outline User support comes in a number of styles:
command-based methodscontext-sensitive help tutorial helponline documentationwizards and assistantsadaptive help.
Today’s Outline Design of user support must take account
of: presentation issues implementation issues.
Overview Users require different types of support at different
times. There are four main types of assistance that users
require:Quick referenceTask-specific help Full explanationTutorial.
Quick Reference Quick reference is used primarily as a
reminder to the user of the details of tools he is basically familiar with and has used before.
It may, for example, be used to find a particular command option, or to remind the user of the syntax of the command.
Quick Reference -- Telnet
Quick Reference –Word 2007 Screen
Task Specific Help Task-specific help is required when the
user has encountered a problem in performing a particular task or when he is uncertain how to apply the tool to his particular problem.
The help that is offered is directly related to what is being done.
Task Specific Help Example
Task Specific Help --PowerP
Full Explanation The more experienced or inquisitive user
may require a full explanation of a tool or command to enable him to understand it more fully.
This explanation will almost certainly include information that the user does not need at that time.
Full Explanation – Example In Unix, most programs, and many
protocols, functions, and file formats, have accompanying manuals.
With the man command, you can retrieve the information in the manual and display it as text output on your screen.
man --unix
Tutorial This is particularly aimed at new users of
a tool and provides step-by-step instruction (perhaps by working through examples) of how to use the tool.
Tutorial –Mail Merge
Types of support Four types are complementary Together they support range of points in
user’s experience with system Each type may be on-line and off-line
(documentation)should be consistent in contentpresentation medium may have impact on
designgeneral principles for both
Requirements of User Support Designing a good help system needs to
understand some features that help system should have.
Using all of these help features is not compulsory for a system.
Requirements Features Availability
continuous access concurrent to main application Accuracy and completeness
help matches and covers actual system behaviour Consistency
between different parts of the help system and paper documentation Robustness
correct error handling and predictable behaviour Flexibility
allows user to interact in a way appropriate to experience and task Unobtrusiveness
does not prevent the user continuing with work
Availability The user needs to be able to access help
at any time during his interaction with thesystem. He should not have to quit the application he
is working on in order to open the help application.
Availability This is a problem for non-windowed
systems if the help system is independent of the application that is running.
However, in windowed systems there is no reason why a help facility should not be available constantly, at the press of a button.
Accuracy and completeness It may seem obvious to state that the
assistance provided should be accurate and complete. if the assistance provided proves not to match
the actual behavior of the system the userwill, at best, become disillusioned with the help facilities, and, at worst, get intodifficulties.
The completeness also is very important.
Consistency Users require different types of help for
different purposes. This implies that a help system may incorporate a
number of parts. The help provided by each of these must be
consistent with all the others and within itself Online help should also be consistent with
paper documentation. It should be consistent in terms of content,
terminology and style of presentation.
Robustness Help systems are often used by people
who are in difficulty, perhaps because thesystem is behaving unexpectedly or has failed altogether.
It is important then that the help system itself should be robust, both by correct error handling and predictable behavior.
Flexibility Many help systems are rigid in that they
will produce the same help message regardless of the expertise of the person seeking help or the context in which they are working.
A flexible help system will allow each user to interact with it in a way appropriateto his needs.
Unobtrusiveness The help system should not prevent the
user from continuing with normal work, nor should it interfere with the user’s application.
Approaches to user support Command assistance
User requests help on particular commande.g., UNIX man, DOS help
Good for quick reference Assumes user know what to look for
This type of help is simple and efficient if the user knows what he wants to know about and is seeking either a reminder or more detailed information.
However, it assumes that the user does know what he is looking for, which is often not the case.
Approaches to user support.. Command prompts
Provide information about correct usage when an error occurs Good for simple syntactic errors Also assumes knowledge of the command
Another form of command prompting, which is not specifically intended to provide help but which supports the user to a limited degree, is the use of menus and selectable icons.
Approaches to user support (ctd)
Context sensitive help help request interpreted according to context in which it occurs.
e.g. tooltips
Approaches to user support On-line tutorials
user works through basics of application in a test environment. can be useful but are often inflexible.
On-line documentation paper documentation is made available on computer. continually available in common medium can be difficult to browse hypertext used to support browsing.
wizards and assistants wizards
task specific tool leads the user through task, step by step, using user’s answers to specific questions
example: resumé useful for safe completion of complex or infrequent tasks constrained task execution so limited flexibility must allow user to go back
Approaches to User Support Assistants
monitor user behavior and offer suggestions
unobtrusive and under user control
‘Clippy’ not unobtrusive, suggestions inappropriate
MS Office smart tags appear near object of interest
Adaptive Help In any large or complex computer system,
users will be familiar with a subset ofthe available functionality, demonstrating expertise in some applications andhaving no experience with others, even to the point of being unaware of theirexistence.
Adaptive Help In addition, different users will have different
needs and levels of understanding. Adaptive help systems attempt to address
these problems. Adapting the help that they provide to the
individual user who is making the request and by actively suggesting alternative courses of action of which the user may not beaware.
Intelligent Help: Adaptive Help Systems
Use knowledge of the context, individual user, task, domain and instruction to provide help adapted to user's needs.
Problems knowledge requirements considerable who has control of the interaction? what should be adapted? what is the scope of the adaptation?
Knowledge representation: User modeling
User modeling single, generic user (non-intelligent) user-configured model (adaptable) system-configured model (adaptive)
Static help systems can’t address all user differences.
Adaptive help systems model users, refining the model by monitoring a user’s activities, and present help tailored to the particular user.
Approaches to User modeling Quantification
user moves between levels of expertise based on quantitative measure of what he knows
Move from level 1 to level 2 if
system has been used more than twice
commands x and y used effectively
help has not been accessed in this session
system has been used in last 5 days
Approaches to User modeling Stereotypes
user is classified into a particular category
Overlayan idealized model of expert use is
constructed actual use compared to itcan determine how far user is from optimal
usecan suggest optimal use strategies
Knowledge representation: Domain and Task Modeling
Usually involves analysis of command sequences Assistants and agents
Coverscommon errors and taskscommand sequences for current task
Problems interleaved tasksuser intention
Knowledge representation
Advisory strategy
involves choosing the correct style of advice for a given situation.
e.g. reminder, tutorial, etc.
few intelligent help systems model advisory strategy, but choice of strategy is still important.
Techniques for Knowledge representation
Rule-based Frame-based Network-based Example-based
Techniques for Knowledge Representation
Rule-basedknowledge represented as rules facts interpreted using inference (logic)used in large domains
IF command is EDIT file 1 AND last command is COMPILE file 1THEN task is DEBUG action is describe automatic debugger
Techniques for Knowledge Representation
Frame-basedknowledge stored in structure that contains
labeled slots slot has default valueuseful in small domains
UserExpertise level: noviceCommand: EDIT file 1Last command: COMPILE file 1Errors this session: 6Action: describe automatic debugger
Techniques for Knowledge Representation
Network-basedknowledge represented as relationships
between factscan link frame-based representations
CC is and instance of COMPILECOMPILE is a commandCOMPILE is related to DEBUGCOMPILE is related to EDITAutomatic debugger facilitates DEBUG
Techniques for Knowledge Representation
Example-basedknowledge represented within decision
structure of classification system trained to classify rather than programmed
with rules (AI techniques)detects recurrent features
EDIT file 1COMPILE file 1
trains for task debug
Problems with knowledge representation and modeling
Knowledge difficult to elicit especially if domain expert not availablevariability of usersdifficult to ensure completeness and
correctness
Interpretation of informationduring interaction all we have are logsdo not have user’s intent or goal
Designing User Support User support is not an ‘add on’ - it should
be designed integrally with system. Should concentrate on content and
context of help rather than technological issues
There are presentation issues and implementation issues
Designing User Support : Presentation issues
How is help requested? Command button function (on/off) separate application
How is help displayed? New window whole screen or split screen pop-up box hint icons
Designing User Support : Presentation issues
Effective presentation requiresclear, familiar, consistent language instructional rather than descriptive
languageavoid of blocks of textsummary and example
Designing User Support Systems : Implementation Issues Is help
OS commandmeta commandapplication
What resources are availablescreen spacememory capacityspeed
Designing User Support Systems: Implementation Issues Structure of help data
single file file hierarchydatabase
Consider flexibility and extensibilityhard copybrowsing
Issues in adaptive help Initiative
does the user retain control or can the system direct the interaction? can the system interrupt the user to offer help?
Effect what is going to be adapted and what information is needed to do this? only model what is needed.
Scope is modelling at application or system level? latter more complex
e.g. expertise varies between applications.
Summary Users require different support at
different times User support should be:
available but unobtrusive accurate and robust consistent and flexible
User support comes in a number of styles: command-based, context sensitive help tutorial, online doc, wizards and assistants adaptive help
Summary Design of user support must take account
of: presentation and implementation issues