Chapter 11: User Support
What is User Support?
User support is about helping people use software or systems effectively. It can include
quick tips, detailed explanations, or even tutorials.
Key Issues in User Support
1. Different Types of Support: Users need different kinds of help at different
times.
2. Implementation and Presentation: How help is provided (e.g., pop-ups,
manuals) is as important as what is provided.
3. Careful Design: Support systems need to be well-designed to be useful.
Types of User Support
1. Quick Reference: Short, easy-to-find answers (e.g., keyboard shortcuts).
2. Task-Specific Help: Help for a specific task (e.g., how to save a file).
3. Full Explanation: Detailed information about how something works.
4. Tutorials: Step-by-step guides to learn how to use the system.
Help vs. Documentation
Help: Problem-oriented and specific (e.g., "How do I print?").
Documentation: System-oriented and general (e.g., user manuals).
Both need to follow the same design principles.
Requirements for Good User Support
1. Availability: Help should be easy to access while using the system.
2. Accuracy and Completeness: Help should match how the system actually works.
3. Consistency: Help should be consistent across different parts of the system.
4. Robustness: Help should handle errors well and not crash.
5. Flexibility: Help should adapt to the user’s experience level.
6. Unobtrusiveness: Help shouldn’t interrupt the user’s work.
Approaches to User Support
1. Command Assistance:
User asks for help on a specific command (e.g., "How do I delete a file?").
o
o Example: man command in UNIX.
o Good for quick reference but assumes the user knows what to ask.
2. Command Prompts:
oSystem provides hints when the user makes a mistake.
o Example: "Invalid command. Did you mean...?"
o Good for simple errors but assumes the user knows the command.
3. Context-Sensitive Help:
o Help is based on what the user is doing (e.g., tooltips that appear when
you hover over a button).
o Example: Tooltips in Microsoft Word.
4. On-Line Tutorials:
o Users can learn the basics of the system in a test environment.
o Example: Interactive tutorials in Photoshop.
o Useful but can be inflexible.
5. On-Line Documentation:
oManuals and guides are available on the computer.
o Example: PDF user manuals.
o Can be hard to browse, but hypertext (clickable links) helps.
6. Wizards and Assistants:
o Wizards: Step-by-step guides for complex tasks (e.g., setting up a printer).
o Assistants: Monitor user behavior and offer advice (e.g., Microsoft’s
Clippy).
o Can be helpful but also annoying if not designed well.
Adaptive Help Systems
These systems adapt to the user’s needs based on their behavior, experience, and
the task they’re doing.
Problems:
o Requires a lot of knowledge about the user.
o Who controls the interaction? Should the system interrupt the user?
o What should be adapted? The help content, the way it’s presented, or
both?
Knowledge Representation in Help Systems
User Modeling: The system tries to understand the user’s knowledge level.
o Single, Generic User: Assumes all users are the same.
o User-Configured Model: User sets their own preferences.
o System-Configured Model: System adapts based on user behavior.
Domain and Task Modeling: The system understands common tasks and errors.
o Example: If the user keeps making the same mistake, the system offers
help.
Advisory Strategy: The system chooses the best way to give advice (e.g., a
reminder, a tutorial, or a quick tip).
Techniques for Knowledge Representation
1. Rule-Based: Knowledge is stored as rules (e.g., "If the user makes this mistake,
show this help").
2. Frame-Based: Knowledge is stored in structured formats (e.g., "This task involves
these steps").
3. Network-Based: Knowledge is represented as relationships between facts (e.g.,
"Saving a file is related to printing").
4. Example-Based: The system learns from examples rather than being
programmed with rules.
Problems with Knowledge Representation
Knowledge Acquisition: It’s hard to gather all the information needed to make
the system smart.
Resources: Adaptive systems require a lot of computing power.
Interpreting User Behavior: It’s hard to know what the user is really trying to do.
Designing User Support
Integrate Support with the System: Help shouldn’t be an afterthought; it
should be part of the system design.
Focus on Content and Context: What help is provided and when it’s provided
are more important than fancy technology.
Presentation Issues
How is Help Requested?
o By typing a command, clicking a button, or using a function key.
How is Help Displayed?
o In a new window, as a pop-up, or as a hint icon.
Effective Presentation:
o Use clear, simple language.
o Avoid long blocks of text.
o Provide summaries and examples.
Implementation Issues
Where is Help Located?
o As part of the operating system, as a separate application, or within the
software.
Structure of Help Data:
o Stored in a single file, a hierarchy of files, or a database.
Resources Needed:
o Screen space, memory, and processing speed.
Key Takeaways
User support is essential for helping people use systems effectively.
Good support is available, accurate, consistent, and flexible.
Adaptive help systems can be powerful but are complex to design.
Help should be integrated into the system and presented clearly.