CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science...

29
CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta

Transcript of CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science...

Page 1: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

CMPUT 301: Lecture 27Help and Documentation

Martin Jagersand

Department of Computing ScienceUniversity of Alberta

Page 2: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

2

User SupportCommon Fallacies

• “It’s so easy to use, you don’t need help.”– But GUI systems can also be complex

• Read the manual, it’s all in the manual– used by gurus to brush off questions they

consider trivial

• Read the source!– used when the manual doesn’t help

Page 3: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

3

User SupportOther fallacies and problems

• Dumb warnings:– air conditioner

– Avoid dropping air conditioners out of windows.

– blow dryer– Do not use while sleeping.

– iron– Never iron clothes on the body.

– vacuum cleaner– Do not pick up anything that is burning.

Page 4: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

4

User Support

• Dumb warnings:– Batman costume

– Cape does not enable user to fly.

Page 5: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

5

User Support

• Main types of assistance:– quick reference

– mostly used as a reminder

– task-specific help– for achieving a task

– full explanation– for better understanding of the system

– tutorial– step-by-step example for new users

Page 6: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

6

User Support

• Help– problem-oriented and specific– e.g., task-based instructions

• Documentation– system-oriented and generic– e.g., user interface snapshot

Page 7: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

7

User Support

• Online support:– get help from the computer, assuming it is

running …– Command line text based: unix man, info,

matlab help.– Interrupt current command line interaction, (unless

starts in separate window)

– GUI based – Displayed concurrently with task.

Page 8: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

8

Online Support

• Requirements:– availability

– access help at any time, at the same time

– accuracy and completeness– help should correctly cover the whole system

– consistency– different parts and types of help should be consistent with

each other on content, terminology, and style

Page 9: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

9

Online Support

• Requirements:– robustness

– the help system should itself be reliable

– flexibility– present multiple levels of help

– unobtrusiveness– avoid intruding on the user

– MS paperclip?!?

Page 10: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

10

Online Support

• Command assistance:– provide help at the command level– sometimes terse and obscure– assumes user knows what to look for– e.g., Unix man

Page 11: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

11

Online Support

• Command prompts:– provide guidance on correct usage

Page 12: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

12

Online Support

• Context-sensitive help:– present help that depends on the context instead

of only one entry point(e.g., specific user, system state, step in a task, object being pointed at, etc.)

Page 13: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

13

Online Support

• Online tutorials:– allow the user to learn the basics of a system

within a special environment– e.g., system with some blocked functionality to

ease risk-free exploration

Page 14: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

14

Online Support

• Online documentation:– put existing paper

documentation available on the computer

– could use hypertext techniques

Page 15: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

15

Online Support

• Movies:

QuickTime™ and aVideo decompressor

are needed to see this picture.

Page 16: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

16

Online Support

• Office assistants:

Page 17: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

17

Adaptive Help Systems

• What:– adapt the help system to the user

– similar to general adaptive user interfaces

– monitor user activity– e.g., preferences, mistakes, etc.

– build model of user

Page 18: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

18

Adaptive Help Systems

• Issues:– easier said than done– should the system actively initiate help?– will adaptivity confuse the user?– what are the knowledge requirements?

Page 19: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

19

Adaptive Help Systems

• User modeling:– every interactive system incorporates some

model of the intended user implicitly within its design

Page 20: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

20

Adaptive Help Systems

• User modeling:– in some systems, the user can provide a model

around which the system will be configured– requires experience to customize the system

appropriately– e.g., Unix .profile and .cshrc

Page 21: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

21

Adaptive Help Systems

• User modeling:– or automatically update a model of the user,

starting from a default model– Typically: Prompt for choices once (e.g. which

printer) then remember it.– Advanced: Associative content retrieval (MIT

project, EMACS demo available)

Page 22: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

22

Adaptive Help Systems

• Quantification:– define a number of levels of user expertise– place user on a level and continuously measure

expertise– expertise is scored based on the weights of

various actions– move user between levels at a certain threshold– adapt the help system accordingly

Page 23: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

23

Adaptive Help Systems

• Issues:– initiative

– mix of user and system control

– system suggests hints about unused functionality

– user requests help as usual

Page 24: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

24

Adaptive Help Systems

• Issues:– effect

– how will the user model be used?

– to offer different help for novices and experts, may not need to record detailed sequences of user interaction

Page 25: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

25

Adaptive Help Systems

• Issues:– scope

– application wide or system wide

Page 26: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

26

User Support Systems

• Guidelines:– help should be designed as an integral part of the

system, not “bolted on”– usability principles also apply to help systems– help systems also need to be evaluated

Page 27: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

27

User Support Systems

• Presentation issues:– how is help requested?

– e.g., command, button, toggle, separate program

– how is help displayed?– e.g., new window, integrated frame, balloons

Page 28: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

28

User Support Systems

• Effective presentation:– clear, instructional language– consistent terminology– describe how to use the system

Page 29: CMPUT 301: Lecture 27 Help and Documentation Martin Jagersand Department of Computing Science University of Alberta.

29

End

• What did I learn today?

• What questions do I still have?