It always helps to start somewhere, especially when the subject is as broad and unsettled as human interface design. While you prepare to design and build your first Help file or your next project, researchers and Help authors everywhere are collecting more data, testing current models, building new prototypes, and revising old theories. Out of this flurry of study and experimentation comes new insights and increased understanding of the problems we face in trying to create better information systems. The following list attempts to summarize the most important design principles to emerge from this collective experience.
Because these guidelines are general, they apply to the entire Help system:
nIf you have input into the development of the application, place most of your design emphasis on making the application’s interface clear and easy to understand.
If you can improve the application’s user interface, your task in Help will be much simpler, because it is easier to help users along as they encounter small problems than it is to explain a difficult interface. Help should never have to carry the burden of explaining the user interface, but it often does.
nIf possible, design the application so that it uses context-sensitive Help.
Most users don’t want to interrupt what they are doing just to get help. They go to Help as a last resort when they can’t figure out how to do something on their own. The more Help interrupts them and interferes with their getting work done, the more they will avoid Help. Context-sensitive Help provides a smoother bridge between the application and the Help information. Chapter 19, “The WinHelp API,” explains in detail how to program an application for context-sensitive Help.
nWhenever possible, simplify, simplify, simplify.
Computer applications are becoming increasingly complex and difficult to use. If the Help system also becomes as complex and difficult to use as the application, users may not use it. Because Windows Help is a very rich, full-featured application, try to lighten the user’s load by making the Help information simple and easy to understand.
nDesign your Help system for the online medium.
Although you can buy programs that convert printed books into electronic documents, the resulting online documents are no substitute for a well-designed Help system. Online information is fundamentally different from printed material and offers advantages not available in books. Hypertext linking allows for more associative patterns of user interaction with the information. Converting a book to electronic form and then allowing users to page through it has no advantage over a book and the disadvantage of being harder to read and use.
nProvide different kinds of information to accommodate different learning styles and different individuals.
Most users have two basic questions about software features: What is it? and What can I do with it? The first question can often be answered by providing introductory, conceptual information and help with terminology. The second question requires how-to, task-oriented information. Ideally, a Help system should address both these questions as well as provide information that falls into other information categories.
nProvide interactive screens of information that let users participate in learning.
When using an application, users have some control over what they do. The application offers features, but the user chooses which features to use and when. Help should not take away that freedom of choice by limiting the user’s participation. If users are not actively engaged in the learning process, they may lose interest. Help’s hypertext facility gives authors ample opportunity to create information that lets users browse and try things out on their own, without strict guidance.
nGroup information in meaningful structures.
One of the problems with online hypertext systems is that they have no physical concreteness. Users feel lost because they can’t see the size and shape of the information. Presenting the structure and organization of your Help system clearly relieves users from having to figure it out. Grouping information in small, meaningful chunks also provides more ways for users to sort out and identify the parts they want.
nAccommodate different strategies for finding information.
Users require more than one path to the same information because they have different needs and levels of experience. Intermediate and expert users often rely on Search to find information because they feel comfortable with computers and know more or less what they are looking for. Novice users, on the other hand, prefer to browse until they find the information they want. Limiting your Help system to one or the other strategy limits its overall usefulness.
nRely on the graphical user interface’s visual strength when creating your navigation screens.
From about the age of five or six, the visual world becomes a more powerful influence on our understanding of the world than all the other senses. Character-based interfaces and text-only presentations require users to operate in a highly symbolic world, relying heavily on their memories to execute and repeat actions. Graphical interfaces can use visual cues to their advantage by offering users choices that require only recognition and not memory. Also, because everything in a graphical interface is visual, the Help system seems more natural and less intimidating if it is visual.
nWhen using graphics in your Help system, apply metaphors from the real world and use them consistently.
The point of using metaphors is to make something abstract and difficult to grasp more concrete and comprehensible. Users already have a good understanding of average things from the real world. Build on that understanding by choosing metaphors that users can relate to easily. Once you establish a metaphor, don’t undercut it by applying it inconsistently or randomly throughout the Help system.