This chapter discusses human factors that should be considered when designing interactive software systems. It outlines goals for user interface engineering which include task analysis, comparison of alternatives, and usability testing. Key human factors that impact system design are the diversity of human abilities including physical, cognitive, cultural and those with disabilities. The goals of human factors professionals are to influence researchers and provide knowledge to help implement systems that accommodate human variability.
Scaling API-first – The story of a global engineering organization
Hci chapt1
1. Chapter 1: Human Factors of Interactive Software
• 1.1 Introduction
• 1.2 Goals of System Engineering
– Steps For User-interface Engineering
• 1.3 System - User Interface Design Goals
• 1.4 Motivations for Human Factors in Design
• 1.5 Accommodation of Human Diversity
– Physical abilities and physical workplaces
– Cognitive and perceptual abilities
• 1.6 Goals for Our Profession
4. User Interface Engineering
• Success requires commitment from
designers and managers
• Task analysis to ensure proper
functionality
• Generally alternatives must be compared
• Reliability, Availability, Security, and
Data Integrity
5. … User Interface Engineering
• Standardization, Integration,
Consistency, and Portability
• Schedules and Budgets
6. System - User Interface Design Goals
• Define the target user community associated
with the interface
• Communities evolve and change
7. …System - User Interface Design Goals
• 5 human factors central to community
evaluation:
1. Time to learn
2. Speed of performance
3. Rate of errors by users
4. Retention over time
5. Subjective satisfaction
• Trade-offs sometimes necessary
• Test all design alternatives using mock-ups
8. Motivations for Human Factors in Design
1.Life-critical systems
2.Industrial and commercial uses
9. … Motivations for Human Factors in Design
3. Office, home, and entertainment
applications
4. Exploratory, creative, and cooperative
systems
10. Accommodation of Human Diversity
• Physical abilities and physical workplaces
• Cognitive and perceptual abilities
• Personality differences
• Cultural and international diversity
• Users with disabilities
• Elderly Users
11. Physical Abilities and Physical
Workplaces
• There is no average user
• Take into account dynamic measures such as reach,
strength or speed
• Account for variances in sense perception
– Vision
– Touch
– Hearing
• Workplace design can both help and hinder work
performance
12. Cognitive and Perceptual Abilities
• Cognitive processes
• factors affecting perceptual and motor
performance
14. Cultural and International Diversity
• special characters
• Left-to-right versus right-to-left
• Date and time formats
• Numeric and currency formats
• Weights and measures
• Telephone numbers and addresses
• Names and titles (Mr., Ms., Mme.)
• ID numbers
• Capitalization and punctuation
• Sorting sequences
• Icons, buttons, colors
• Pluralization, grammar, spelling
• Etiquette, policies, tone, formality, metaphors
15. Users With Disabilities
• Sight, hearing, mobility
• Plan early to accommodate
• Americans With Disabilities Act
16. Elderly Users
• Forgotten by largely young technologists
• Fast growing segment in US
• Provide variability
17. 1.6 Goals for Our Profession
• Influencing academic and industrial
researchers
– Potential research topics
– Providing tools, techniques, and knowledge for
system implementers
– Raising the computer consciousness of the general
public
“ Designing an object to be simple and clear takes at least twice as long as the usual way. It requires concentration at the outset on how a clear and simple system would work, followed by the steps required to make it come out that way – steps that are often much harder and more complex than the ordinary ones. …” These are words that are not very welcome in today’s “compressed development cycles”, but words that should be heard, especially by people such as yourself who plan to manage these development cycles. Fortunately, some technological things that have happened since the quote (1977) help to speed parts of the process (e.g. rapid prototyping)
User Interfaces Are Products of Interdisciplinary Work - Who is Involved? Psychologists – knowledge of human capabilities + experimental methodology Graphic Designers – visual layout, color selection, animation Technical Writers – online help and tutorials Software designers Hardware designers – e.g. large flat screen monitors, palm pilots affect usability; more advanced interfaces as well Human Ergonomical Engineers Anthropologists and Sociologists – knowledge of human capabilities, societal differences, distributed teamwork What are the Business Ramifications? Overnight Success Stories - Netscape, America Online, Lycos the browser was a UI idea – before it, search using gopher etc was tedious. Likewise, the search engine AOL was successful because it was more user friendly than early leader CompuServe. In WWW era, was an alternative philosophy, instead of making search easy, produce content to avoid search Intense Competition - Everyone vs. Microsoft Copyright Infringement Suits - Apple vs. Microsoft (Windows ) Mergers - Bell Atlantic and NYNEX Corporate Takeovers - IBM's seizure of Lotus International Liaisons - working relationship between MCI and British Telecom Games – interface is everything
Individual User Level Children can learn more efficiently – with good interface Pilots can learn to fly airplanes more effectively Poor interface can harm performance, and confidence Reach of computer systems is ever expanding International Influences Association for Computing Machinery - Computer Human Interaction special interest group has 6000+ members as of 1997 ESPRIT Project in Europe devotes 150 person-years per year to research of user interfaces Japan - Ministry of International Trade and Industry promotes commercial efforts among companies
High Level Goal – make user’s quality of life better Interface should “disappear” – users can focus on their task , not the interface “ Managers can promote attention to user-interface issues by selection of personnel, preparation of schedules and milestones, construction and application of guidelines documents, and commitment to testing” p9 Designers must be committed in order to persevere when the going gets rough (budgets, schedules) Task analysis to ensure proper functionality Define what tasks and subtasks must be carried out Pay special attention to those tasks which are only performed occasionally, common tasks are easy to define. Functionality must complete, or else users will reject or underutilize the product. (over-functionality can also be a problem since it can make the program hard to learn and/or hard to use (clutter) and hard to develop w/in time frame/budget) 2. Generally alternatives must be compared and best one chosen 3. Reliability, Availability, Security, and Data Integrity Commands must function as specified. Appease the user's sense of mistrust, Data displayed must reflect the actual database, System must be error free System must be “up”, not crash Ensure the user's privacy by protecting against unwarranted access, destruction of data, and malicious tampering (see reliability)
4. Standardization, Integration, Consistency, and Portability Standardization : use pre-existing industry standards. Apple required developers to follow a set of standards for look and feel (e.g. menu choices on top of screen File Edit). Microsoft has guidelines for interface design for Windows Integration : product should be able to run across different software tools and packages Consistency : compatibility across different product versions compatibility with related, non-computer based systems use common action sequences, terms, units, colors, fonts, etc. within the program Portability : allow for the user to convert data across multiple software and hardware environments (e.g. different display sizes) 5. Schedules and Budgets Late products can make a company ineffective or uncompetitive. Too expensive products are uncompetitive
Define the target user community associated with the interface – interface good for one community may not be good for another (e.g. airline reservation system designed for frequent users (travel agents) with many function keys and special codes to remember, will not serve well for infrequent users (travelers booking themselves)) Communities evolve and change (e.g. in early 1990’s systems for lay people couldn’t assume knowledge of Microsoft Windows, a bulletproof application would hide Windows menus and buttons and provide their own; now, even lay users know a lot about Windows (closing windows etc)) (another e.g. now hardly anybody needs to be told “Click here” to know how to follow a hyperlink on the WWW)
5 human factors central to community evaluation: Time to learn How long does it take for typical members of the community to learn relevant task? Speed of performance How long does it take to perform relevant benchmarks? (distinct from #1 and sometimes forgotten) Rate of errors by users How many and what kinds of errors are commonly made during typical applications? Retention over time How well do users retain their knowledge of how to use the product over short or long periods of time? Frequency of use and ease of learning help make for better user retention Subjective satisfaction How did users like using the system? (subjective) Allow for user feedback via interviews, free-form comments and satisfaction scales. Trade-offs sometimes necessary e.g. learning time vs performance time, complex several-key shortcuts can be slow to learn but can speed performance over going through several menus. Managers and developers should be aware of trade-offs being made and make them explicitly and document them Test all design alternatives using a wide range of mock-ups – paper (can do many), interactive (can do a few)
Most of today's systems are poorly designed from a human-interaction standpoint. Human factors are important in a range of applications Life-critical systems – human factors is critical because lives are at stake Air traffic control, nuclear reactors, power utilities, police & fire dispatch systems, medical instruments High costs, reliability and effectiveness are expected Length training periods are acceptable provide error-free performance Subjective satisfaction is less an issue due to well motivated users Retention via frequent use and practice 2. Industrial and commercial uses - human factors is critical because profits are at stake Banking, insurance, order entry, inventory management, reservation, billing, and point-of-sales systems Lower cost may sacrifice reliability Training is expensive, (and turnover may be high) so learning must be easy Speed and error rates are relative to cost, however speed is the supreme concern Subjective satisfaction is fairly important to limit operator burnout
3. Office, home, and entertainment applications Word processing, electronic mail, computer conferencing, and video game systems Choosing functionality is difficult because the population has a wide range of both novice and expert users – layered or level-structured design can aid graceful evolution from novice to expert (“transitionality”) Use can be an individual choice (in many cases), so ease of learning, low error rates, subjective satisfaction are important to use of software Competition cause the need for low cost – but large volume can pay for development costs 4. Exploratory, creative, and cooperative systems artist toolkits, computer-aided design, statistical packages, and scientific modeling systems, decision support, groupware Motivation is high Expectations are high Benchmarks are hard to describe due to the wide array of tasks With these applications, the computer should "vanish" so that the user can be absorbed in their task domain – need good metaphor - translation of real world tasks to computer (may use direct manipulation)
To be discussed in turn …
Physical abilities and physical workplaces There is no average user, either compromises must be made or adjustable controls or multiple versions of a system must be created (e.g. keyboards now adjustable (didn’t use to be)) Physical measurement of human dimensions are not enough, take into account dynamic measures such as reach, strength or speed. (If using standard computers (PCs) for physical human factors, rely a fair amount on the human factors of the computer – you can’t change the capabilities of the computer) Account for variances of the user population's sense perception Vision: depth, contrast, color blindness (important for color selection – don’t put red and green together – red/ green color blindness is the most common), and motion sensitivity (important for games) Touch: keyboard and touchscreen sensitivity Hearing: audio clues must be distinct Workplace design can both help and hinder work performance (if developing systems for internal use, may be concerned with work area design – desk, chair, working space, etc – a lot of this comes under ergonomics – more physical working environment)
Cognitive and perceptual abilities cognitive processes short-term memory long-term memory and learning problem solving decision making attention and set (scope of concern) search and scanning time perception factors affecting perceptual and motor performance arousal and vigilance fatigue perceptual (mental) load – how many things does the system expect the user to attend to? knowledge of results monotony and boredom sensory deprivation sleep deprivation anxiety and fear isolation aging drugs and alcohol circadian rhythms
Personality differences There is no set taxonomy for identifying user personality types Designers must be aware that populations are subdivided and that these subdivisions have various responses to different stimuli Myers-Briggs Type Indicator (MBTI) - 4 different dichotomies extroversion versus introversion sensing versus intuition (good at precision vs good at solving new problems) perceptive versus judging (delay decisions to take in new data vs quick to make decisions) feeling versus thinking <personally, I’ve found this hard to apply to anything>
Cultural and international diversity - #1 – allow for customization (local versions) (e.g. put all text in files rather than program, so that changes in language involves change of file not change in program) characters, numerals, special characters, and diacriticals Left-to-right vs. right-to-left vs. vertical input and reading Date and time formats – e.g. 12/24/01 vs 24.12.2001 Numeric and currency formats Weights and measures Telephone numbers and addresses - country codes, zip/postal codes Names and titles (Mr., Ms., Mme.) Social-security, national identification, and passport numbers Capitalization and punctuation Sorting sequences Icons, buttons, colors Pluralization, grammar, spelling Etiquette, policies, tone, formality, metaphors Users in different countries represent different user communities (ditto for different languages). “ interface good for one community may not be good for another “
Users with disabilities Low vision – many things can be done – enlarging parts of display, large fonts, zoom; voice output. Low mobility – voice input, head-mounted optical mouse (goes where look) Designers must plan early to accommodate users with disabilities Early planning is more cost efficient than adding on later Businesses must comply with the &quot;Americans With Disabilities&quot; Act for some applications Microsoft has www pages on this http://www.microsoft.com/enable/ ACM SIGCAPH – Special Interest Group on Computers and the Physically Handicapped
Elderly Users Including the elderly is fairly easy, designers should allow for variability within their applications via settings for sound, color, brightness, font sizes, etc. Easier pointing devices (e.g. touchscreen instead of mouse)
Influencing academic and industrial researchers <skip this – “our profession” is CHI researchers> Encourage scientific methods in interface design Understand practical problem and related theory State clearly a testable hypothesis Choose and manipulate a small number of independent variables Careful selection and assignment of subjects Control for bias in subjects, procedures, and materials, Measure results of dependent variable(s) Apply statistical tests Interpretation of results Refinement of theory / guidance for experimenters But don’t miss qualitative and individual feedback as well as numeric and statistical results Potential research topics Reducing anxiety and fear of computer usage Graceful Evolution Specification and implementation of interaction Direct manipulation (including more recent telepresence and virtual reality) Input devices Online assistance Information exploration Providing tools, techniques, and knowledge for system implementers Rapid prototyping is easy when using contemporary tools Use general or self-determined guideline documents written for specific audiences To refine systems, use feedback from individual or groups of users Raising the computer consciousness of the general public Many novice users are fearful due to experience with poor product design, Good designs help novices through these fears by being clear, competent, and nonthreatening