Presentation on theme: "CS 275Tidwell Course NotesPage 110 Chapter 7: Getting Input From Users Designing interactive forms, in which the user is expected to supply information."— Presentation transcript:
CS 275Tidwell Course NotesPage 110 Chapter 7: Getting Input From Users Designing interactive forms, in which the user is expected to supply information required by the application, is particularly challenging. The meaning and purpose of queries must be clear. Unnecessary or redundant questions must be avoided. Reliance on user memory is a huge mistake. What’s easy for the designer may not be easy for the user.
CS 275Tidwell Course NotesPage 111 Binary Control Options When giving the user a choice between two alternatives, there are several control options.
CS 275Tidwell Course NotesPage 112 N-Choice Control Options (Small N) There are several control options for making a choice between several alternatives.
CS 275Tidwell Course NotesPage 113 N-Choice Control Options (Large N) The alternatives are more limited for controls presenting the user with a long list of items from which to choose.
CS 275Tidwell Course NotesPage 114 Multiple-Selection Control Options The interface becomes more confusing when the user is allowed to make multiple selections.
CS 275Tidwell Course NotesPage 115 Text Entry Control Options At times, the application must rely on the user’s memory, spelling, grammar, etc., and request text entry.
CS 275Tidwell Course NotesPage 116 Numerical Entry Control Options Special control mechanisms have been developed for numerical entry by the user.
CS 275Tidwell Course NotesPage 117 Pattern #68: Forgiving Format When there are multiple common input formats, accommodate user preferences by having the interface handle as many as possible. Example: In this Alarm Clock example, the user may use “military” time or traditional AM/PM time to set the alarm. Execute
CS 275Tidwell Course NotesPage 118 Pattern #69: Structured Format Structure the format of the input form to correspond to the format of the input data. Example: This on-line account form is typical for structured formats, with simple textboxes for most input and no error checking performed until the entire form is submitted. The only potential improvements would have been a more structured approach to the zip code and phone number entries.
CS 275Tidwell Course NotesPage 119 Pattern #70: Fill-In-The-Blanks When user input cannot easily be presented in the standard label/control format, it is sometimes possible to present it as a simple fill-in-the-blank. Example: Microsoft Excel allows the user to “goal seek”, i.e. to set one spreadsheet cell’s value to a specific goal by altering a related cell’s value to achieve that goal.
CS 275Tidwell Course NotesPage 120 Pattern #71: Input Hints Include an explanatory comment next to an input field that might not have clear functionality. Example: Microsoft Word’s “Find and Replace” form allows the user to jump forwards or backwards a specific number of units (pages, lines, tables, etc.), but the format for such jumps might require additional explanation. Note that the explanation is not included when the jump involves named units like bookmarks
CS 275Tidwell Course NotesPage 121 Pattern #72: Input Prompt Rather than leaving a text entry field blank, fill it with a prompt that indicates what the user is expected to enter. Example: When inserting headers and footers into Microsoft Word documents, input prompts are provided that temporarily detach the user from the WYSIWYG aspect of the interface (i.e., the header and footer entry controls will not appear when the actual document is printed).
CS 275Tidwell Course NotesPage 122 Pattern #73: Autocompletion When the user begins to input text that has a clear value, it is sometimes helpful to automatically complete that value’s entry. Example: Microsoft Excel helpfully auto- completes a field with a value corresponding to one it’s already seen in this column. Example: Microsoft Word cannot use context to determine that the word being attempted is “Febreze”, not “February”.
CS 275Tidwell Course NotesPage 123 Pattern #74: Dropdown Chooser Just as dropdown lists conserve screen space when employed for menus or combo boxes, the dropdown paradigm may be used for additional modes of user input. Example: Microsoft Word uses this approach for such activities as inserting tables, formatting columns, setting toolbar options, and selecting colors.
CS 275Tidwell Course NotesPage 124 Pattern #75: Illustrated Choices When presenting the user with a selection of choices, whenever possible, use images rather than simple text. Example: In Microsoft Word and PowerPoint, requests to insert more graphical objects results in a display of the graphical options.
CS 275Tidwell Course NotesPage 125 Pattern #76: List Builder When the user is being asked to create a list from another larger list, provide a mechanism for easily moving elements between the lists. Example: Two solutions to a Cafeteria application, one using add/remove buttons to create the day’s menu, and the other relying on a checked treeview.
CS 275Tidwell Course NotesPage 126 Pattern #77: Good Defaults Prefill entry fills with default values (if good ones exist) to reduce user labor or to provide examples of acceptable input values. Example: Microsoft PowerPoint doesn’t provide a mechanism for setting default values for print commands, relying on default values that might be quite different from a user’s regular choices.
CS 275Tidwell Course NotesPage 127 Pattern #78: Same-Page Error Messages Rather than generating a modal dialog box to notify the user of an error, indicate the error on the form currently in use, at a location on the page close to where the erroneous information resides. Example: When the user attempts an improper arithmetic command (like dividing by zero or taking the square root of a negative number), Microsoft Calculator displays the error in its output textbox rather than on a separate form.