To be covered:- What is HCI? Goal of HCI HCI - An Interdisciplinary Area Concerns in HCI
description
Transcript of To be covered:- What is HCI? Goal of HCI HCI - An Interdisciplinary Area Concerns in HCI
To be covered:-To be covered:-
What is HCI?What is HCI?Goal of HCIGoal of HCIHCI - An Interdisciplinary AreaHCI - An Interdisciplinary AreaConcerns in HCIConcerns in HCIInterface and interaction designInterface and interaction designGoals of interaction designGoals of interaction designUtility, Usability, LikeabilityUtility, Usability, LikeabilityStructured Process for Creating Usable ProductsStructured Process for Creating Usable ProductsPrinciples to support usabilityPrinciples to support usabilityHow to Achieve UsabilityHow to Achieve Usability
Human–computer Interaction (HCI) involves the study, planning, and design of the interaction between people (users) and computers. Interaction between users and computers occurs at the user interface (or simply interface), which includes both software and hardware.
Human Computer Interaction (HCI)
Human-computer interaction is a discipline concerned with the design, evaluation and implementation of interactive computing systems for human use and with the study of major phenomena surrounding them”
Human Computer Interaction (HCI)
Because human–computer interaction studies a human and a machine in conjunction, it draws from supporting knowledge on both the machine and the human side.
On the machine side, techniques in computer graphics, operating systems, programming languages, and development environments are relevant.
On the human side, communication theory, graphic and industrial design disciplines, linguistics, social sciences, cognitive psychology, and human factors such as computer user satisfaction are relevant.
Goal of HCIA basic goal of HCI is to improve the interactions between users
and computers by making computers more usable and receptive to the user's needs. Specifically, HCI is concerned with:
Methodologies and processes for designing interfaces (i.e., given a task and a class of users, design the best possible interface within given constraints, optimizing for a desired property such as learnability or efficiency of use). Methods for implementing interfaces (e.g. software toolkits and libraries; efficient algorithms). Techniques for evaluating and comparing interfaces. Developing new interfaces and interaction techniques. Developing descriptive and predictive models and theories of interaction.
The Goals of HCI
5
To Produce
6
In order to produce computer system with good usability;In order to produce computer system with good usability;Developers must attempt to Developers must attempt to
The long term goal:The long term goal:To design systems that minimize the barrier between the To design systems that minimize the barrier between the
human’s cognitive model of what they want to accomplish and human’s cognitive model of what they want to accomplish and the computer’s understanding of the user’s taskthe computer’s understanding of the user’s task
HCI - An Interdisciplinary Area/Disciplines that Contribute to HCI
Computer ScienceApplication design and engineering of human-computerInterfaces PsychologyThe application of theories of cognitive processes andthe empirical analysis of user behavior Sociology and AnthropologyInteractions between technology, work, and organization Design and Industrial DesignCreating interactive products
Concerns in HCIScience, Engineering, and Design Aspects
The joint performance of tasks by humans and machines The structure of communication between human andmachine Human capabilities to use machines (including thelearn ability of interfaces) Algorithms and programming of the interface itself Engineering concerns that arise in designing andbuilding interfaces The process of specification, design, and implementationof interfaces
Interface and interaction design
Interface design (ID)• Primarily design of 2D/3D widgets
Designing interactive products to support people in their everyday and working lives
• Sharp, Rogers and Preece (2002) The design of spaces for human communication and interaction
• Winograd (1997)
Goals of interaction design
Develop usable productsUsability means:
• easy to learn• effective to use• enjoyable experience
Usable products = successful products?
Involve users in the design process
Utility, Usability, Likeability
Utilitya product can be used to reach a certain goal or toperform a certain task. This is essential! Usabilityrelates to the question of quality and efficiency. E.g. howwell does a product support the user to reach a certaingoal or to perform a certain task. Likeabilitythis may be related to utility and usability but notnecessarily. People may like a product for any otherreason…
What is Usability
“Usability is a quality attribute that assesses how easy user interfaces are to use. The word ‘usability’ also refers to methods for improving ease-of-use during the design process.”
Usability has five quality components: Learn ability: How easy is it for users to accomplish basic tasks
the first time they encounter the design?Efficiency: Once users have learned the design, how quickly
can they perform tasks? Memorability: When users return to the design after a period of
not using it, how easily can they reestablish proficiency? Errors: How many errors do users make, how severe are these
errors, and how easily can they recover from the errors? Satisfaction: How pleasant is it to use the design?
USABILITY
14
Why is Usability Important
15
Why Usability is Important?
16
How many systems are
easy, effortless, and enjoyable
to use?
Improving usability can• increase productivity of users• reduce costs (support, efficiency)• increase sales/revenue (web shop)• enhance customer loyalty• win new customers
Why is Usability Important?
Why is Usability Important in theContext of WWW and New Media?
Competition is very close (just another link…) User Interface is often the central discriminating factor Comparison is easily possible
Example – Online-ShopDirect correlation between usability and sales is reported in many cases.Users who can’t find the product in the shop can not buy it.Users who are not able to fill in correctly the order form are not going to buy.
HCI is Central to the Design and Development Process
… even if done unconsciously. Decisions madein the development process are likely to influence how a product can be used.
thinking about the user interface when a firstversion of a product is finished is to late!
good user interfaces – and often good products– are a joined effort of all participants in thedesign and development process
Structured Process for Creating Usable Products
Precondition• Understanding how people interact with their environment• Understanding the capabilities and limitations of users• Basic ergonomics
Analyze what interaction is required and what technicaloptions are available in a user centered way, evaluatethe results of the analysis
Design and prototype user interfaces with userinvolvement, evaluate prototypes Implement an interactive digital product Test and study the product created Usability Engineering is a part of the overall development The process is iterative (overall and at each step)
Evolution of the Software Development Process
How it does NOT work Usability tests at the end when the product isready and needs to be shipped.
Designing a new and pretty skin to a product.
Introducing HCI issues after the systemarchitecture and the foundations are completed.
Comparison: An interior designer can not makea great house if the architect and engineers forgot windows, set the doors at the wrong locations, and created an unsuitable room layout.
Principles to support usability
Learnabilitythe ease with which new users can begin effective interaction and achieve maximal performance
Flexibilitythe multiplicity of ways the user and system exchange information
Robustnessthe level of support provided the user in determining successful achievement and assessment of goal-directed behaviour
Principles of learnability
Predictability– determining effect of future actions based on
past interaction history– operation visibility
Synthesizability– assessing the effect of past actions– immediate vs. eventual honesty
Principles of learnability (ctd)Familiarity
– how prior knowledge applies to new system– guessability; affordance
Generalizability– extending specific interaction knowledge to new
situations
Consistency– likeness in input/output behaviour arising from similar
situations or task objectives
Principles of flexibility
Dialogue initiative– freedom from system imposed constraints on input
dialogue– system vs. user pre-emptiveness
Multithreading– ability of system to support user interaction for more
than one task at a time– concurrent vs. interleaving; multimodality
Task migratability– passing responsibility for task execution between user
and system
Principles of flexibility (ctd)
Substitutivity– allowing equivalent values of input and
output to be substituted for each other– representation multiplicity; equal opportunity
Customizability– modifiability of the user interface by user
(adaptability) or system (adaptivity)
Principles of robustness
Observability– ability of user to evaluate the internal state of the
system from its perceivable representation– browsability; defaults; reachability; persistence;
operation visibility
Recoverability– ability of user to take corrective action once an error
has been recognized– reachability; forward/backward recovery;
commensurate effort
Principles of robustness (ctd)
Responsiveness– how the user perceives the rate of
communication with the system– Stability
Task conformance– degree to which system services support all
of the user's tasks– task completeness; task adequacy
How to Achieve Usability
Identify what utility and usability for the product means• main purpose of the product• anticipated users, target audience• compare with similar/competing products (if applicable)
Common effort in the design and development process • trade-offs between design, engineering, and usability Iterative evaluation • usability testing with different methods at various stages of the development process Improvement after product release
• monitoring user behavior.• evaluation of changes to the product (e.g. adding a new featureto a web shop)
Design Principles ofHuman-Computer Interaction
Design process What is design? Traditional Waterfall Model vs. User-Centered Design
Design principles, guidelines, rules and standards
Know the users and their tasks Choose the right interaction model Psychological principles of design Norman’s Seven Principles of interface design Shneiderman’s Eight Golden Rules of interface design Nielsen’s Heuristics of interface design User interface guidelines
Outline
What is Design?In general...
“Finding the right physical components of a physical structure.” “A goal-directed problem-solving activity.” “A creative activity – it involves bringing into being something new and useful that has not existed previously.”
Design is a process... “Engineering design is the use of scientific principles, technical information and imagination in the definition of a mechanical structure, machine of system to perform pre-specified functions with the maximum economy and efficiency.”
Design Process: The Waterfall Model
Problems with the Waterfall Model
Unrealistic: requirements are often incomplete and ambiguous. In practice, the stages overlap and there is feedback from a stage to the previous stage(s). The software process is not a simple linear model but involves a sequence of iterations of the development activities. Maintenance is an important stage, up to 60% of the total effort.
Main problem: not user-centered It is impossible to completely understand and express user requirements until a large amount of design has already been done.
Designing HCI
HCI design model should: be user-centered and involve users as much as possible so that they can influence the design,
integrate knowledge and expertise from the different disciplines that contribute to HCI design,
be highly iterative so that testing can be done to check that the design does indeed meet users’ requirements.
The Star Life Cycle
User Centered Design
External analysis Know the users, Know their tasks.
Design and prototype
Design to fit the system to the users and their tasks. Evaluate and iterate
Evaluate the design, Iterate until a good design is achieved.
Know the Users and their Tasks
Know the users: Novice and first time users, Knowledgeable intermittent users, Expert frequent users.
Know their tasks:
Tasks: sequence of operations. Should be determined before the design proceeds. Design or implementation convenience should not dictate system functionality, features.
Choose the Interaction Style(s)
Interaction styles: Direct manipulation, Menu selection, Form fill-in, Command language, Natural language.
When users and tasks are diverse, blend several interaction styles.
Interaction Styles, Cont.
Design, Prototype, Evaluate
Create a design using: Principles of interaction, Graphics design principles, Following guidelines.
Implement prototypes to:
Test the design, Choose between alternatives, Minimize the cost of experimentation.
Evaluate the usability requirements: Learnability, Speed of performance, Rate of errors by users, Retention over time, Subjective satisfaction.
Design Principles
Sources of design principles: Cognitive psychology, Graphic design, Designer’s knowledge and experience.
Types of design support: Design principles “High level” recommendations based on well established knowledge about human behavior. Design standards Generally stated requirements, imposed in some formal way. Design guidelines Generally stated recommendations for user interface software, adopted by agreement among practitioners. Design rules Explicit design specifications that do not require interpretation by design practitioners.
Norman’s Seven Principles
“Seven principles for transforming difficult tasks into simple ones”:
1. Use both knowledge in the world and knowledge in the head.
2. Simplify the structure of tasks.
3. Make things visible.
4. Get the mappings right.
5. Exploit the power of constraints, both natural and artificial.
6. Design for error.
7. When all else fails, standardize.
Shneiderman’s Eight Golden Rules
“Shneiderman’s eight golden rules of interface design”:
1. Strive for consistency.
2. Enable frequent users to use shortcuts.
3. Offer informative feedback.
4. Design dialogs to yield closure.
5. Offer error prevention and simple error handling.
6. Permit easy reversal of actions.
7. Support internal locus of control.
8. Reduce short-term memory load.
Consistency
Many forms of consistency:
Consistent sequences of actions in similar situations.
Identical terminology across: prompts, menus, help screens.
Consistent color, layout, capitalization, fonts.
Shortcuts
Enable frequent users to use shortcuts:
Abbreviations,
Special keys,
Hidden commands,
Macros,
Short response times,
Fast display rates.
Feedback
Offer informative feedback:
For every user action, there should be system feedback.
For frequent and minor actions the response can be modest.
For infrequent and major actions the response should be more substantial.
Show changes on the visual representation of the objects of interest.
Design Dialogs to Yield Closure
Dialogs should have: beginning, select “File->Open” middle, complete the dialog end. press “Open”
Error Prevention and Handling Error preventionError prevention::
Design the system so that users cannot make a serious error.
Use menu selection instead of form fill-in.
When using forms, do not allow alphabetic characters in numeric
fields.
For command lines: correct matching pairs, complete sequences,
etc.
Error handling:Error handling:
What happened?
Why did it happened?
How serious is it?
How can it be fixed?
Easy Reversal of Actions
Undo/Redo:
a single action,
a data-entry task,
complete group of actions, etc.
Locus of Control
Support internal locus of control: Avoid a causality. Users: initiators rather than the responders to actions.
Even the relatively simple process of adding or removing a filebecomes an interrogation:
What do you want to do?What options do you want?What name do you want to use?
Nielsen’s Heuristics
Nielsen’s ten usability heuristics:
1. Visibility of system status.
2. Match between system and the real world.
3. User control and freedom.
4. Consistency and standards.
5. Error prevention.
6. Recognition rather than recall.
7. Flexibility and efficiency of use.
8. Aesthetic and minimalist design.
9. Help users recognize, diagnose, and recover from errors
10. Help and documentation.
Guidelines
Microsoft Windows User Experiencehttp://msdn.microsoft.com/library/books/winguide/welcome.htm
Java Look and Feel Design Guidelineshttp://java.sun.com/products/jlf/dg/higtitle.alt.htm
Macintosh Human Interface Guidelineshttp://www.devworld.apple.com/techpubs/mac/HIGuidelines/HIGuidelines-2.html
END
• End