HUMAN-COMPUTER INTERACTION OVERVIEW the importance of HCI how the various underlying disciplines of HCI contribute to design how HCI has evolved as a subarea of the computer and information sciences common HCI concepts and terms implications of HCI for design ================================== Human Factors research activity: initial research from WWII: - system performance - error detection and recognition - workspace arrangement - performance and safety - task analysis - time and motion studies HF has broadened in scope and activity to include also: - transportation - architecture - environmental design - consumer products - electronics/computers**** ****Has since broadened scope and activity to: Human-Computer Interaction -- represents scope and activity relating to technology. ===================== ASSOCIATION FOR COMPUTING MACHINERY (ACM) SPECIAL INTEREST GROUP IN COMPUTER-HUMAN INTERACTION (SIGCHI) GOALS OF HCI -- to produce usable and safe systems, as well as functional systems. In summary, "to develop or improve the safety, utility, effectiveness, efficiency, and usability of systems that include computers" (Interacting With Computers, 1989, p. 3.) TERMS (used interchangeably, but HCI most common) human factors -- optimizing the relationship between technology (computer) and the human. ergonomics - the emphasis is on the human and occupational, equipment, and environmental issues. human-computer interaction -- the emphasis is on system goals, system performance, user goals, user performance. HCI IS CONCERNED WITH: - behavioral and physical domains in the psychology and engineering sense - system design and development - the human as an information processor; the computer as an information processor - performance issues -- the total system - job-task certainty (industrial psych. here) - evaluation and standards =============================== HCI - A Multidisciplinary Approach: -- psychology -- behavioral and conceptual issues -- cognitive: perception, attention, memory, problem solving -- sociology: how does advanced technology impact the workplace (micro) or our society (macro)? -- the relationship between the structure and activities of different groups -- industrial engineering -- computers and organizations -- computer science -- develops algorithms for user interface design -- software development/system architecture -- computer information systems -- supporting the growing complexity of information systems and software products -- information science -- digital information retrieval, management, search techniques, multimedia -- education -- learning curves, help systems, learner control, computer-based instruction -- linguistics -- study of language delete 'fred' or 'fred' delete =============================== Challenges of Serving Users -- Design Issues -- input devices and strategies keyboards, pointing devices, voice - menus, forms, commands -- direct manipulation - GUIs -- output devices and formats --screens, windows, color, sound -- text, tables, graphics -- instructions, messages, online help -- manuals, tutorials, training ======================================================= User Adapting to Change in Technology -- more affordable technology -- dealing with unneeded complexity -- dealing with "feature-itis" -- tensions exist between increasing functionality and maintaining accessibility ============================================================= HCI - AN EMERGING FIELD -- in response to the use of PCs and software -- we need to determine how humans interact with technology and to establish design principles based on how humans process information and accomplish complex tasks ======================================= -- today -- 3 interesting areas -- user interface design, HCI and the Web, and tools for cooperative work. -- concepts to grapple with: user interface styles, intuitive interfaces, visibility, transparency, usability ================================================================== In Search of the Invisible Tools (Weiser, Interactions, January 1994). -- the tool should not intrude on our consciousness -- focus on the task, not the tool -- good tools enhance invisibility -- Are our current interfaces (GUIs) invisible? ====================================== COMMON HCI CONCEPTS & ISSUES Anthropomorphism Affordances Functionality Interactive Usability Tradeoffs Intuitiveness Attractiveness Awareness Transparency Virtuality Metaphors User-friendly User-centered Other: Human Information Processing Memory Attention Personality Learning Societal Factors Stress (technostress and general) Anxiety Dependence Addiction Ambivalence Privacy Obsession with power Equal representation from ethnic/gender groups Antisocial behavior New behaviors A better society? ====================================== The Permeating Theme of this Course is to: Understand users (people) of computing systems. That includes user experience levels, user behavior, user-centered design, and user- centered evaluation. Winograd: "The focus isn't on interacting with the computer, but interacting through the computer." ================================================== (Preece) To Produce Computer Systems With Good Usability, We need to: -- understand the factors that determine how people operate and make use of computer technology effectively, and to translate that understanding into -- the development of tools and techniques to help designers ensure that computer systems are suitable for the activities for which people will use them, in order to -- achieve efficient, effective, and safe interaction both in terms of individual human-computer interaction and group interactions. =============================================================== SOME THINGS TO CONSIDER: Society: - What is the impact of computer and telecommunications technologies on people and the workforce and society as a whole? Organizations: - Electronic communication may change the flow of information within organizations and may alter status relations and organizational hierarchy (Kiesler et al). Human-kind: - We understand the capabilities and limitations of machines far better than we do those of human beings (Nickerson, 1986). Learning: - Learning to use software is a major event for users. Diversity: - The range of knowledge and experience of different users is very broad. ====================== USER-CENTERED DESIGN GOAL Approach: Serving the Users (Beyond "User Friendly") User Friendly -- Why It Doesn't Belong - the term is ambiguous -- what does it mean? - the term is anthropomorphic -- "friendly" has a notion of human -- the computer is a tool -- it is NOT good or bad, friendly or unfriendly. =================================== USER CENTERED DESIGN GOAL (Shneiderman, 1992): Increase Capabilities - Full Functionality - Appropriate Functionality Decrease Hindrances - Inconsistencies - Unneeded Complexities - Hard to Access Commands - Overwhelming the User - Too much information - Is it really intuitive? - Program Errors - Hazards - Lost data =============================== CHALLENGES OF SERVING USERS (Shneiderman, 1992) Software Engineering issues* - Task suitable functionality -- correctness, robustness - Security, reliability, safety, availability, maintainability - Standardization, reusability, portability, integration - Productivity, timeliness - Speed: response time and display rate External qualities -- those things made visible to the user Internal qualities -- making the external things happen *Ghezzi, C., Jazayeri, Mehdi, and Mandrioli, D. Fundamentals Of Software Engineering, 1991, Prentice Hall. Design issues - Input devices and strategies Keyboards, pointing devices, voice - Menus, forms, commands - Direct manipulation -- GUIs - Output devices and formats Screens, windows, color, sound Text, tables, graphics Instructions, messages, online help - Manuals, tutorials, training =========================== Three Interface Paradigms (Cooper, 1995): About Face First, what is computer literacy? Three interface paradigms: technology paradigm -- based on understanding how things work -- a difficult proposition. (One has to know how the software works in order to use it). "Users would rather be successful than knowledgable." metaphor paradigm -- based on intuiting how things work -- a risky method idiomatic paradigm -- based on learning how to accomplish things -- a natural, human process. "We recognize them (check boxes, radio buttons, push buttons, pull-down menus, icons, pens, and mice) because we have looked at them (learned once) and automatically (and easily) memorized them." ============================================= USER INTERFACE DEVELOPMENT OBJECTIVES (Perlman) Gain Perspective - Importance of the user interface - Impact of good and bad user interfaces - Diversity of users and applications Learn Methods and Tools - Design tradeoffs of dialogue types/devices - Importance of training materials - Importance/difficulty of evaluating usability Appreciate Limitations =================== KEY USER INTERFACE CONCEPTS (Perlman) - Mental/Conceptual Models how users understand systems - Efficient Access to Resources what is available and how to learn it quickly and use it accurately - Need for Evaluation there are no clear answers, so we need to evaluate - Iterative Design Cycle design for redesign after evaluation feedback - Design Implementation Tradeoffs satisfying one design principle sometimes violates others - Levels of User Knowledge/Experience users have specialized expertise and differ on many dimensions ====================== What do we know about Help? (Preece, 1994) Typical users' questions focus on: -- goal exploration. What can I do with this program? -- definition and description: What is this? What is it for? -- task achievement: How do I do this? -- diagnostic: How did that happen? -- State identification: Where am I? ============================== Dorazio (Horton, 1990) on Help: "The goal of the HELP system should not be to teach users about a system's capabilities and functions, but rather to provide quick and immediate access to information about a specific task, command, or message. In other words, HELP should refresh or remind the memory of what it already knows." ============================================ SOURCES OF INFORMATION: JOURNALS - Communications of the ACM ACM SIGCHI Bulletin - ACM SIGGRAPH Computer Graphics - ACM Transactions on Computer-Human Interaction (ACM) - ACM Transactions on Information Systems - ACM Transactions on Graphics - Behaviour and Information Technology - Cognitive Science - Ergonomics - Human Computer Interaction (Lawrence Erlbaum Associates) - Human Factors - IEEE Trans. on Systems, Man & Cybernetics - Interactions... (ACM) - Interacting with Computers - International Journal of Human-Computer Interaction (Ablex) - International Journal of Man-Machine Studies - User Modeling and User-Adapted Interaction (Kluwer) SOURCES OF INFORMATION: CONFERENCES - Annual ACM CHI (83,85- ) SIGCHI: special interest group on computer-human interaction - Annual ACM UIST (88- ) User Interface Software and Technology - Biennial ACM Hypertext (87- ) SIGLINK: hypertext and hypermedia - Biennial ACM CSCW (86- ) SIGCSCW: computer supported cooperative work - Annual ACM SIGGRAPH special interest group on computer graphics - Annual Human Factors Society (60's- ) - Triennial IFIP Interact (84- ) International Federation of Information Processing - BCS HCI: Human-Computer Interaction British Computer Society SIGCHI VIDEOS - Presented at ACM SIGCHI Conference =================== FORMULATING USABILITY (Thimbleby, SIGCHI Bulletin, April 1994) Empirical usability Complexity Realism and Accessibility Emphasis on Human or Machine? A choice of theory base Various Complexity Measures What is the user trying to do? What does the user know? User knows nothing: how long will be taken? User learns by trial and error: how quickly can they learn? User knows everything: but how much is that? User knows everything is correct? User knows everything but system states may be indistinguishable: is what the user knows correct? System is in an indeterminate state: what does the user need to know? User reads manual: how long do they take? User is confused: how long will it take to recover? What if the system is too complex? ========================