Choosing Appropriate Interface Features

Now that I've established the different types of users, you might be asking, "Does this really make a difference in user interface design? Should I really design an interface differently for beginning users than for advanced users?" The answer to both questions is yes, and in this section as I further compare the types of users and the user interface features suitable for each, I think you'll see why this is true. You'll find that users with different skill levels have different needs, and that many Windows user interface features are appropriate for some skill levels and not others.

Beginning Users

Because a beginning user is unfamiliar with the more sophisticated interface elements, the key to success in designing for beginning users is to make the user interface visible. A user interface is visible when a user can figure out how to use it just by looking at it. With a typical visible user interface, a user is able to perform tasks by making selections in menus and dialog boxes. Visible tasks don't require knowledge of special keyboard sequences or mouse selections or any other mechanism that isn't apparent on the screen.

The point is that obvious visual clues indicating how to perform a task give the beginning user a good chance at getting his work done. If there are no obvious visual clues, it's highly unlikely the beginning user will figure out how to do his job. Note that interface mechanisms such as context menus, dragging and dropping, and keyboard commands are clearly not visible. For example, there is no way to determine that a window has a context menu simply by looking at it. In Chapter 10, "Good User Interfaces Are Visible" I discuss in detail making user interfaces visible.

Let's look at some specific user interface elements that are good for beginning users.

Menu bars

Menu bars are the best way of showing beginning users how to use your program. Menu bars make an excellent teaching tool. A program's menu bar is effectively a hierarchically organized catalog of all the program's features. If you want to get a quick overview of what a program does, scanning its menu bar gives you a concise summary. A menu item's state (enabled vs. disabled) indicates when the user can perform a task. The menu item text itself indicates the shortcut key and access key (for example, the Ctrl+S shortcut and the underlined letter "S" access key in the Save command).

TIP
Menu bars are an excellent teaching tool.

It is important to keep the menu bar stable. You should indicate that a command is available only by changing the menu item's state. You should not indicate that a command is unavailable by dynamically removing it from the menu. Changing the menu structure can be confusing for all users but especially for beginning users. For example, note that Microsoft Word 95 removed all menus except the File and Help menu when all the documents were closed. Word 97 fixed this mistake.

TIP
Keep menus stable. Disable, don't remove, invalid menu choices.

Dialog boxes

While simple tasks are best performed directly from the menu bar, dialog boxes are the best way of showing beginning users how to perform more complex tasks that require additional input. Dialog boxes are also an excellent teaching tool. A good dialog box conveys what the task is, what the options are, and what input is needed to perform the task.

Wizards

Wizards are a good mechanism for performing highly complex tasks, regardless of the user's ability. However, an interesting difference between wizards and dialog boxes is that wizards make poor teaching tools. In fact, wizards don't teach anything. They effectively say "give me all the information and I will do all the work." This approach is effective for rarely performed tasks that the user probably doesn't really need to understand, such as connecting to a network. However, wizards are a poor choice as a sole mechanism for performing important tasks that are central to a program, since they do not help users understand how to accomplish such tasks on their own.

Redundant menus

While context menus are excellent for advanced users, using only context menus to perform certain tasks virtually guarantees that beginning users won't be able to perform them. To satisfy all types of users, make sure that all commands in context menus are also available in the menu bar. For example, Windows Explorer allows the user to perform many useful file commands from the file context menu, but all these commands are duplicated in the menu bar and the toolbar.

Now let's look at some specific user interfaces that are inappropriate for beginning users.

Cascading dialog boxes

While presenting a single modal dialog box to a beginning user isn't a problem, presenting a complex cascade of dialog boxes can be very confusing. The problem is that beginning users don't really understand the modality of modal dialog boxes, especially when they are in a big pile. There is no strong visual clue—aside from the disabled caption bar, which is rather weak—that the dialog boxes underneath are really disabled when they appear enabled. Disabling the controls of a disabled dialog box would provide a stronger visual clue, but this technique is currently not standard in Windows programs.

Double-clicking

Beginning users have trouble understanding when double-clicking is necessary. While advanced users understand that single-clicking means selection and double-clicking means selection plus performing the default action, beginning users do not. Consequently, they either don't double-click at all or they double-click everything until they eventually figure out the difference. Note that the general Web page user interface, which does not use double-clicking at all, is very popular with beginning users because they find it easy to understand.

Status bars

While knowing the status is certainly a good thing and status bars are visible, beginning users are not yet in the habit of checking the status bar for information. If you use the status bar as the sole method of providing important information, chances are beginning users will not see it.

Edit boxes

Edit boxes are good for beginning users when just about any input is acceptable. However, when specific input is required, it is better to give beginning users controls that are constrained to valid choices. When possible, use radio buttons, lists, or combo boxes instead.

Nonstandard controls

Nonstandard controls are easier to understand when you already have a frame of reference. For example, it is easier to conclude "Oh, that's just a funky combo box" when you already know what a combo box is. While beginning users probably don't know what controls are standard and what controls are not, they have probably seen and used all of the standard controls and therefore have some basis for understanding how to use nonstandard controls.

Intermediate/Advanced Users

The key to success in designing for advanced users is to make the user interface convenient and efficient. Advanced users want to get their work done as quickly as possible. They don't want to fool around. Intermediate users aren't quite at the same level as advanced users, but they have essentially the same goals—to work quickly and efficiently. While all users benefit from having a visible user interface, more advanced users want the option of employing more efficient user interface mechanisms, which are commonly not visible. If you do not provide these mechanisms in your interface, you run the risk of frustrating these users or, worse, preventing them from working at the speed that will let them meet their goals.

Let's look at some specific user interface elements that are good for intermediate and advanced users and consider why they are not good for beginning users.

Toolbars

Toolbars are something of a cross between menus and modeless dialog boxes. Either way, advanced users prefer using toolbars to using the menu bar because the interaction is so much easier—just move the mouse over the toolbar button and click. While toolbars can also benefit beginning users, they are not quite as effective as the menu bar because the menu bar is more comfortable if you are inexperienced.

Why? Because the menu bar provides context. When you browse the menu bar, you know the menu category. Is the command in the Edit menu? If so, it is for editing. Is the command in Tools menu? If so, the command is a tool. When you drop down a menu, you also see all the other possible selections. If you are not sure you've selected the right command, you can review all the other commands in the same menu until you are sure. Typically, some help text appears on the status bar that explains what the menu item does. Lastly, by using an ellipsis, a menu item gives you a clue as to what is going to happen when you select it. If there is no ellipsis, no further input is required, so there is no chance to bail out if you change your mind. While more convenient because they require less effort to use, toolbar buttons provide the user with none of this information and, as a result, are less comfortable to the beginning user.

Keyboard shortcuts

If you have your hands on the keyboard and you want to work quickly, you want to continue to keep your hands on the keyboard. Constantly moving your hand from the keyboard to the mouse and back again requires additional effort and time. Keyboard shortcuts allow you to perform commands directly from the keyboard, and they are by far the most efficient technique for giving commands if you already know the shortcut.

The problem with keyboard shortcuts for the beginner is that they are not visible. The easiest way to learn about a keyboard shortcut is from the menu bar itself, since keyboard shortcuts are shown on the right-hand side of menu items that support them. You can also learn about keyboard shortcuts in a program's documentation and by knowing the standard Windows keyboard shortcuts. However, all these techniques require time, experience, and memorization (usually achieved through repetition), and to place such expectations on a beginner is not realistic.

Context menus

Advanced users enjoy using context menus because they are extremely convenient. You don't have to move the mouse much to call them up, and all the commands relevant to an object are consolidated in a single location rather than spread across several menus as they are in the menu bar.

As noted earlier for keyboard shortcuts, the problem with context menus for beginners is that they are not visible. You have to know that you can click an object with the right mouse button to see its context menu. You also have to get in the habit of doing this to see whether objects have context menus.

Direct manipulation

Advanced users like direct manipulation because it allows them to interact with an object directly with the mouse instead of having to use dialog boxes. For example, to change the name of a file using Windows Explorer, you just have to select the filename, click it to put it in edit mode, and type in the new name. Compare this process to having to use a dialog box—a dialog box is not nearly as convenient.

As with all the other advanced user interface techniques, direct manipulation isn't visible, although some types of direct manipulation are suggested by cursor hinting. For example, you can tell whether a dialog box is resizeable because the cursor changes to a shape that suggests resizing when you move it to the edge of the dialog box.



Developing User Interfaces for Microsoft Windows
Developing User Interfaces for Microsoft Windows
ISBN: 0735605866
EAN: 2147483647
Year: 2005
Pages: 334

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net