HCI - Accommodating human diversity
From Computing and Software Wiki
As graphical and general processing capabilities improve, the growing need for research into human computer interfaces becomes more evident. Designers are expected to provide a transparent interface to the core of their software that can facilitate work for all levels of users. When designing a user interface many aspects of human diversity must be taken into account. Depending on the purpose of the software, designer must take into account factors such as but not limited to:
- Age
- Race
- Physical Attributes/Disabilities
- Mental Disabilities
- Educational Background
- Computer Expertise
- Geographical Location
- Cultural Background
Contents |
Universal Design
In general, universal design is a cross discipline approach to design that helps create products that are usable and effective for everyone. The design principles for Universal Design are as follows.R1
- Equitable use
- Use of the object or software must be as "fair" as possible. This means that regardless of user type, they can all perform the same actions and receive the same benefits form the product. This however seems to be a fairly lofty goal with regards to complicated software. Instead this can be interpreted in the sense that regardless of the type of users, given a reasonable amount of time, they will gain the same benefits from the product. Software and it's interface should provide all the necessary tools to aid beginners in reaching an adequate level competency within a reasonable amount of time.
- Flexibility in use
- The design should be able to accommodate a wide range of users based on factors such as preference and ability. For example, expert users should not be held up by an interface designed for beginners, likewise, a beginner should not be expected to use expert style interactions.
- Simple and intuitive
- Use of the product is easy to understand, regardless of the user's experience level or background. Keep the interface simple by reducing unnecessary complexity, and be consistent with user's expectations. Offering prompt informative feedback will eliminate frustration as well as reduce learning times.
- Perceptible Information
- Necessary information should be effectively communicated to the user regardless of any disabilities the user may have. Any feedback given to the user should have adequate contrast against the surrounding information. In general elements should be distinguishably different to clearly convey the message of difference or importance to the user.
- Tolerance for Error
- When designing an interface, or functionality of software, designers should always strive to minimize faults or error that may be caused through inadvertent actions by the user. There are many techniques to help with this issue. Grouping objects based on functionality or confirmation of action are useful tools. It would be unwise to say, place the "load" and "delete" buttons side by side.
- Low Physical Effort
- Although this principle is stated for real world objects, it carries over quite well. Users should not have to dig through multiple menus or perform an excessive amount of actions to obtain a given functionality. The number of actions required to perform a task should be fairly proportional to how often that action is used. Very common functionality should be readily available to the user at all times, or be made readily accessible with ease.
- Size and space for approach and use
- Once again, although this principle is stated for the real world, it applies very well to HCI. A simple interface is an efficient interface. Important elements should be easily visible regardless of the user's physical abilities. Positioning of the elements should also be intuitive. Grouping of elements and clear separation of the interface based on functionality can help with this.
8 Golden Rules
The 8 Golden Rules proposed by Ben Shneiderman also provide a very good basis when thinking about interaction design.R2
- Strive for consistency Consistent sequences of actions should be required in similar situations; identical terminology should be used in prompts, menus, and help screens; and consistent commands should be employed throughout.
- Enable frequent users to use shortcuts As the frequency of use increases, so do the user's desires to reduce the number of interactions and to increase the pace of interaction. Abbreviations, function keys, hidden commands, and macro facilities are very helpful to an expert user.
- Offer informative feedback For every operator action, there should be some system feedback. For frequent and minor actions, the response can be modest, while for infrequent and major actions, the response should be more substantial.
- Design dialog to yield closure Sequences of actions should be organized into groups with a beginning, middle, and end. The informative feedback at the completion of a group of actions gives the operators the satisfaction of accomplishment, a sense of relief, the signal to drop contingency plans and options from their minds, and an indication that the way is clear to prepare for the next group of actions.
- Offer simple error handling As much as possible, design the system so the user cannot make a serious error. If an error is made, the system should be able to detect the error and offer simple, comprehensible mechanisms for handling the error.
- Permit easy reversal of actions This feature relieves anxiety, since the user knows that errors can be undone; it thus encourages exploration of unfamiliar options. The units of reversibility may be a single action, a data entry, or a complete group of actions.
- Support internal locus of control Experienced operators strongly desire the sense that they are in charge of the system and that the system responds to their actions. Design the system to make users the initiators of actions rather than the responders.
- Reduce short-term memory load The limitation of human information processing in short-term memory requires that displays be kept simple, multiple page displays be consolidated, window-motion frequency be reduced, and sufficient training time be allotted for codes, mnemonics, and sequences of actions.
Although some of these principles cross over, they lend themselves to universal design with regards to software.
Interaction Styles
There are a set of at least five primary interaction styles:
- Visual Representation A visual representation of the world of actions which the user can manipulate, such as desktop icons. Allows easy learning and avoids errors, but is difficult to program and may require additional graphics displays and devices.
- Menus Menus can help the user to navigate through all available options, most likely progressing in a nested fashion. Shortens learning and allows easy support of error handling through structured decision making, but may deter frequent users and presents a danger of many layered menus leading to confusion.
- Fill in the blanks Suitable for data input where a menu may be inadequate or too complex. Provides simple data entry and requires only modest training, however this method can consume a large amount of screen space.
- Command prompt Using a command line prompt provides easy and fast access to functions for advanced users. Novice users, however, will find this interaction style to be quite hostile. Very flexible but has poor error handling.
- Natural Language Natural language can be used easily by typing commands. If clarification is needed it can be done in that language. Relieves burden of learning correct syntax or command language, but requires clarification dialog and is unpredictable.
A combination of any of the above may also be useful.
Accessibility
Concerns
Age: Font size , Macular Degeneration
Physical Disabilities: Color Blindness Optical Seizures
Education: Mental Model of the user, What we can assume the user will understand - Time to learn
The End User Types
As stated in Principle #1 of Human Factor Considerations in Human Computer Interface, it is necessary to recognize the diversity in the abilities of the user. The ability of the user can be categorized into three levels of skill types:
- Expert
- User that uses the computer and applications as part of regular job duties
- Occasional
- User that is not a frequent user and may need prompting from time to time to accomplish computer based tasks
- Novice
- User is new, requires as much feedback, help files, and hints as possible
By knowing who your end users may be for your interface, you may have to take into account all three users, or specifically make it for one of the three types of users.
Audio Considerations
Another factor that must be considered in the diversity of the end user is their hearing. Users will have varying ability to hear or recognize audio output from an interface.
- Frequency
- As both men and women grow older (to a greater extreme men) we lose the ability to discern different frequencies of sound, especially at higher frequencies. The interface must take into account that the end user may have a smaller range of identifiable sounds, and make any audio queues within the audio range of any user.
- Volume
- It is also necessary to have any of the audio output from the interface to be loud enough for the user to understand. It may be necessary to have the volume of any audio outputs to be variable to allow any user comfortable audio output.
Visual Considerations
It is also a necessary requirement that any user is able to visually understand what is displayed on the screen. Some factors that need to be considered are:
- Colour Contrast
- To make any text displayed to be as legible as possible, it is necessary to have sharp contrast between background and text. The best suited background colours are achromatic colours: black, white and grey, with the textual colours fall within the middle colours of the spectrum: yellow, green and orange. Red, blue and violet are on the extremes of the human visual spectrum so our eyes are not as sensitive to them, making them difficult colours to contrast with others.
- Animated Visuals
- Objects on a screen that are non static, being blinking, moving, updating etc. can cause the users that are screen read challenged difficult in reading or understanding the object. These objects must have the option to be frozen or paused for the user to understand its message.
- Resizing
- For users with limited visual ability, it is necessary to allow the user to change the size of the what is being displayed. This could include changing font sizes, resizing object sizes, or any other method to make an object understandable for a user with diminished visual ability.
- Visual Queues
- Timed pop up menus or hints that are not read and understood before they hide again also need to be considered. If the end user has a problem understanding the message before it disappears for any reason, be it age or visual impairment, then the queue needs to appear for a longer duration to the user.
Photo sensitivity
Epilepsy is a neurological disorder characterized by recurrent convulsions. Photosensitive epilepsy is a form of epilepsy in which seizures are triggered by visual stimuli such as flashing lights or moving patterns. Epilepsy occurs in approximately 1 in every 200 people and photo epilepsy occurs in approximately 1 in every 4000 people.
About 96% of people while photo epilepsy are sensitive to light flashes between 15-20 flashes per second. For this reason blinking or updating of a CRT screen should be avoided, as this can cause flickering between 4 and 59 Hz and will likely trigger a convulsion.
Designing for context
avoid cultural symbols, use universally understood metaphors. Ex: Don't use stop light. They aren't the same everywhere.
Cultural
- Keep in mind the equipment they have been using
- Symbols
- Terminology
- Traditions
- Colors
- Imagery
- Training Techniques - consider the mental strategies which will be adopted by operators and the resources required in terms of background knowledge.
Linguistic