HCI 4th Year
HCI 4th Year
HCI
(BCSP-701)
-Shalini Raturi
Uttarakhand Technical University,
Dehradun
New Scheme of Examination as per AICTE Flexible Curricula Computer
Science and Engineering, VII-Semester Dept Elective CS 703 (A) Human
Computer Interfacing
Unit 2: The Design Process; Interaction Design Basics, HCI in the Software
Process, Design Rules, Universal Design
Human-computer interaction (HCI) is the field of study that focuses on optimizing how users
and computers interact by designing interactive computer interfaces that satisfy users’ needs.
It is a multidisciplinary subject covering computer science, behavioral sciences, cognitive
science, ergonomics, psychology, and design principles.
The emergence of HCI dates back to the 1980s, when personal computing was on the rise. It
was when desktop computers started appearing in households and corporate offices. HCI’s
journey began with video games, word processors, and numerical units.
However, with the advent of the internet and the explosion of mobile and diversified
technologies such as voice-based and Internet of Things (IoT), computing became omnipresent
and omnipotent. Technological competence further led to the evolution of user interactions.
Consequently, the need for developing a tool that would make such man-machine interactions
more human-like grew significantly. This established HCI as a technology, bringing different
fields such as cognitive engineering, linguistics, neuroscience, and others under its realm.
Today, HCI focuses on designing, implementing, and evaluating interactive interfaces that
enhance user experience using computing devices. This includes user interface design, user-
centered design, and user experience design.
Key components of HCI
Fundamentally, HCI is made up of four key components:
1. The user
The user component refers to an individual or a group of individuals that participate in a
common task. HCI studies users’ needs, goals, and interaction patterns. It analyzes various
parameters such as users’ cognitive capabilities, emotions, and experiences to provide them
with a seamless experience while interacting with computing systems.
2. The goal-oriented task
A user operates a computer system with an objective or goal in mind. The computer provides
a digital representation of objects to accomplish this goal. For example, booking an airline for
a destination could be a task for an aviation website. In such goal-oriented scenarios, one should
consider the following aspects for a better user experience:
• The complexity of the task that the user intends to accomplish
• Knowledge and skills necessary to interact with the digital object
• Time required to carry out the task
3. The interface
The interface is a crucial HCI component that can enhance the overall user interaction
experience. Various interface-related aspects must be considered, such as interaction type
(touch, click, gesture, or voice), screen resolution, display size, or even color contrast. Users
can adjust these depending on the user’s needs and requirements.
For example, consider a user visiting a website on a smartphone. In such a case, the mobile
version of the website should only display important information that allows the user to
navigate through the site easily. Moreover, the text size should be appropriately adjusted so
that the user is in a position to read it on the mobile device. Such design optimization boosts
user experience as it makes them feel comfortable while accessing the site on a mobile phone.
4. The context
HCI is not only about providing better communication between users and computers but also
about factoring in the context and environment in which the system is accessed. For example,
while designing a smartphone app, designers need to evaluate how the app will visually appear
in different lighting conditions (during day or night) or how it will perform when there is a
poor network connection. Such aspects can have a significant impact on the end-user
experience.
Thus, HCI is a result of continuous testing and refinement of interface designs that can affect
the context of use for the users. Importance of HCI
HCI is crucial in designing intuitive interfaces that people with different abilities and expertise
usually access. Most importantly, human-computer interaction is helpful for communities
lacking knowledge and formal training on interacting with specific computing systems.
With efficient HCI designs, users need not consider the intricacies and complexities of using
the computing system. User-friendly interfaces ensure that user interactions are clear, precise,
and natural.
2. Industry
Industries that use computing technology for day-to-day activities tend to consider HCI a
necessary business-driving force. Efficiently designed systems ensure that employees are
comfortable using the systems for their everyday work. With HCI, systems are easy to handle,
even for untrained staff.
HCI is critical for designing safety systems such as those used in air traffic control (ATC) or
power plants. The aim of HCI, in such cases, is to make sure that the system is accessible to
any non-expert individual who can handle safety-critical situations if the need arises.
3. Accessible to disabled
The primary objective of HCI is to design systems that make them accessible, usable, efficient,
and safe for anyone and everyone. This implies that people with a wide range of capabilities,
expertise, and knowledge can easily use HCI-designed systems. It also encompasses people
with disabilities. HCI tends to rely on user-centered techniques and methods to make systems
usable for people with disabilities.
Examples of HCI
Technological development has brought to light several tools, gadgets, and devices such as
wearable systems, voice assistants, health trackers, and smart TVs that have advanced human-
computer interaction technology.
Let’s look at some prominent examples of HCI that have accelerated its evolution.
1. IoT technology
IoT devices and applications have significantly impacted our daily lives. According to a May
2022 report by IoT Analytics, global IoT endpoints are expected to reach 14.4 billion in 2022
and grow to 27 billion (approx.) by 2025. As users interact with such devices, they tend to
collect their data, which helps understand different user interaction patterns. IoT companies
can make critical business decisions that can eventually drive their future revenues and profits.
A recent development in the field of HCI introduced the concept of ‘pre-touch sensing’ through
pre-touch phones. This means the phone can detect how the user holds the phone or which
finger approaches the screen first for operation. Upon detecting the user’s hand movements,
the device immediately predicts the user’s intentions and performs the task before the user
gives any instructions.
Another HCI-related development is that of ‘Paper ID’. The paper acts as a touchscreen, senses
the environment, detects gestures, and connects to other IoT devices. Fundamentally, it
digitizes the paper and executes tasks based on gestures by focusing on man-machine
interaction variables.
2. Eye-tracking technology
Eye-tracking is about detecting where a person is looking based on the gaze point. Eye-tracking
devices use cameras to capture the user’s gaze along with some embedded light sources for
clarity. Moreover, these devices use machine learning algorithms and image processing
capabilities for accurate gaze detection.
Businesses can use such eye-tracking systems to monitor their personnel’s visual attention. It
can help companies manage distractions that tend to trouble their employees, enhancing their
focus on the task. In this manner, eye-tracking technology, along with HCI-enabled
interactions, can help industries monitor the daily operations of their employees or workers.
Other applications include driver monitoring systems that ensure road security. Moreover, in
the future, HCI-enabled eye-tracking systems may allow users to scroll through a computer
screen just by rolling their eyeballs.
5. Cloud computing
Today, companies across different fields are embracing remote task forces. According to a
‘Breaking Barriers 2020’ survey by Fuze (An 8×8 Company), around 83% of employees feel
more productive working remotely. Considering the current trend, conventional workplaces
will witness a massive rejig and transform entirely in a couple of decades. Thanks to cloud
computing and human-computer interaction, such flexible offices have become a reality.
Moreover, an employee can access data on the cloud from any physical location by
using cloud-based SaaS services. Such virtual settings streamline workflows and support
seamless collaboration with remote teams across industry verticals without impacting
productivity. Thus, with time, the idea of traditional offices may cease to exist, mainly because
of SaaS and HCI.
Goals of HCI
The principal objective of HCI is to develop functional systems that are usable, safe, and
efficient for end-users. The developer community can achieve this goal by fulfilling the
following criteria:
• Have sound knowledge of how users use computing systems
• Design methods, techniques, and tools that allow users to access systems based on their
needs
• Adjust, test, refine, validate, and ensure that users achieve effective communication or
interaction with the systems
• Always give priority to end-users and lay the robust foundation of HCI
To realize the above points, developers must focus on two relevant areas: usability and user
experience. Let’s look at each category in detail:
1. Usability
Usability is key to HCI as it ensures that users of all types can quickly learn and use computing
systems. A practical and usable HCI system has the following characteristics:
• How to use it: This should be easy to learn and remember for new and infrequent users
to learn and remember. For example, operating systems with a user-friendly interface
are easier to understand than DOS operating systems that use a command-line interface.
• Safe: A safe system safeguards users from undesirable and dangerous situations. This
may refer to users making mistakes and errors while using the system that may lead to
severe consequences. Users can resolve this through HCI practices. For example,
systems can be designed to prevent users from activating specific keys or buttons
accidentally. Another example could be to provide recovery plans once the user
commits mistakes. This may give users the confidence to explore the system or
interface further.
• Efficient: An efficient system defines how good the system is and whether it
accomplishes the tasks that it is supposed to. Moreover, it illustrates how the system
provides the necessary support to users to complete their tasks.
• Effective: A practical system provides high-quality performance. It describes whether
the system can achieve the desired goals.
• Utility: Utility refers to the various functionalities and tools provided by the system to
complete the intended task. For example, a sound utility system offers an integrated
development environment (IDE) that provides intermittent help to programmers or
users through suggestions.
• Enjoyable: Users find the computing system enjoyable to use when the interface is less
complex to interpret and understand.
2. User experience
User experience is a subjective trait that focuses on how users feel about the computing system
when interacting with it. Here, user feelings are studied individually so that developers and
support teams can target particular users to evoke positive feelings while using the system.
HCI systems classify user interaction patterns into the following categories and further refine
the system based on the detected pattern:
• Desirable traits – satisfying, enjoyable, motivating, or surprising
• Undesirable traits – Frustrating, unpleasant, or annoyin
Foundations of Human-Computer
Interaction:
Introduction
The body of knowledge of Human-Computer Interaction can be perceived as resulting from
the following five interrelated aspects, depicted in the diagram bellow:
▪ (N) the nature of human-computer interaction;
▪ (U) the use and context of computers;
▪ (H) human characteristics;
▪ (C) computer system and interface architecture; and
▪ (D) the development process.
The diagram you've provided outlines the core elements and structure of Human-Computer
Interaction (HCI). Here’s a breakdown based on the five interrelated aspects mentioned:
1. Nature of Human-Computer Interaction (N)
• HCI focuses on the interaction between humans and computers, emphasizing how
these interactions can be made more efficient, effective, and satisfying. This includes
understanding how humans process information, communicate, and interact with
computers.
2. Use and Context of Computers (U)
• U1 Social Organization and Work: This considers how computers are integrated into
the workplace and social environments. It focuses on how these tools support
organizational functions and human activities.
• U2 Application Areas: This refers to the specific fields or tasks where computers are
applied, which can influence the design and functionality of computer systems.
• U3 Human-Machine Fit and Adaptation: This focuses on ensuring that the design of
computer systems aligns well with human needs, abilities, and limitations, allowing
for a better fit between the user and the machine.
3. Human Characteristics (H)
• H1 Human Information Processing: Understanding how humans process information
is crucial for designing user interfaces that align with human cognitive capabilities.
• H2 Language, Communication, and Interaction: This involves the study of how people
communicate and interact, which informs the design of intuitive and user-friendly
interfaces.
• H3 Ergonomics: This is the study of how to design systems that are physically
comfortable and efficient for users, taking into account factors like posture,
movement, and environment.
4. Computer System and Interface Architecture (C)
• C1 Input and Output Devices: This focuses on the hardware and tools users interact
with, such as keyboards, mice, and screens, and how these can be designed for
optimal use.
• C2 Dialogue Techniques: This refers to the methods used to facilitate communication
between the user and the computer, such as through commands, queries, and
feedback.
• C3 Dialogue Genre: This involves different types of interactions that can occur
between a user and a system, each requiring different interface designs.
• C4 Computer Graphics: Visual representation and design elements that make
interaction visually intuitive and aesthetically pleasing.
• C5 Dialogue Architecture: This refers to the underlying structure that supports
interaction between the user and the system, ensuring smooth and effective
communication.
5. Development Process (D)
• D1 Design Approaches: These are methodologies and strategies used in designing HCI
systems, ensuring they meet user needs and context.
• D2 Implementation Techniques and Tools: This refers to the practical tools and
techniques used to develop and implement the designed interfaces.
• D3 Evaluation Techniques: Evaluating the effectiveness and usability of HCI systems
is crucial to refining and improving the interaction.
• D4 Example Systems and Case Studies: Learning from existing systems and case
studies provides practical insights into what works and what doesn’t in HCI design.
These components together form the foundation of HCI, focusing on creating computer
systems that are not only functional but also user-friendly, taking into account the various
human and technical factors involved.
Human Capabilities:
Human capabilities are a crucial consideration in Human-Computer Interaction (HCI) because
they directly influence how effectively users can interact with computer systems. Here’s how
human capabilities are typically considered in HCI:
1. Cognitive Capabilities
• Perception: Understanding how users perceive information through their senses
(mainly sight, sound, and touch) is vital. Designers must consider factors like visual
acuity, color perception, and auditory thresholds to create interfaces that are easily
perceivable.
• Attention: Human attention is limited and selective. Effective HCI design minimizes
the cognitive load by reducing unnecessary distractions and highlighting essential
information.
• Memory: Interfaces should account for the limitations of human memory. For
example, short-term memory can only hold a small amount of information at a time,
so systems should avoid requiring users to remember too much information across
different screens or stages of interaction.
• Problem-Solving and Decision-Making: Interfaces should be designed to support
human decision-making processes, providing clear, intuitive pathways for users to
follow, and avoiding overwhelming them with too many options or complex tasks.
2. Physical Capabilities
• Motor Skills: Users interact with devices through physical actions, such as typing,
clicking, and tapping. Designers must consider the range of motor abilities, including
precision, speed, and strength, to create interfaces that are accessible to all users.
• Ergonomics: Physical comfort is essential for long-term use. HCI designs should
account for the physical setup (e.g., the placement of input devices, the angle of
screens) to prevent strain or injury.
• Reaction Time: The speed at which users can respond to stimuli influences the design
of interactive elements. For example, interfaces that require quick responses must
ensure that controls are easily reachable and responsive.
3. Linguistic Capabilities
• Language Processing: Users’ ability to understand and produce language is crucial in
interacting with text-based interfaces or voice-activated systems. Designers must use
clear, concise language and consider language localization for global users.
• Communication Skills: Interfaces must support effective two-way communication.
This includes providing clear feedback to user actions and allowing users to express
their intentions effectively through various input methods (e.g., typing, speaking, or
gestures).
4. Emotional and Social Capabilities
• Emotional Responses: Users’ emotional states can significantly impact their
interaction with a system. HCI design should aim to create positive emotional
experiences, such as through user-friendly error messages, aesthetically pleasing
design, and responsive, supportive interactions.
• Social Interaction: Many HCI systems support or require social interaction, such as
collaborative software or social media platforms. Designers must consider how these
systems facilitate communication, collaboration, and social networking among users.
5. Adaptive Capabilities
• Learning and Adaptation: Users learn how to use systems over time. HCI designs
should be intuitive for beginners but also offer depth for advanced users. Adaptive
interfaces that evolve based on user behavior can help create a more personalized
experience.
• Adaptability to Different Contexts: Users may interact with systems in various
environments and conditions (e.g., different lighting, noise levels, or device
constraints). Interfaces must be adaptable to these varying contexts to maintain
usability.
6. Individual Differences
• Age-Related Capabilities: Design must account for the wide range of age-related
differences in cognition, motor skills, and sensory abilities. For example, older users
may need larger text sizes, while younger users might prefer faster, more dynamic
interactions.
• Cultural and Educational Background: Users’ backgrounds can influence how they
understand and interact with systems. HCI design should consider these differences
to ensure accessibility and usability across diverse user groups.
Integrating Human Capabilities in HCI Design
To create effective and user-centered interfaces, HCI professionals must carefully consider
these human capabilities. This involves:
• Conducting user research to understand the specific capabilities and needs of the
target audience.
• Applying design principles that align with human cognitive, physical, and emotional
capacities.
• Testing and iterating on designs to ensure they accommodate a wide range of human
capabilities.
By understanding and integrating these human capabilities into the design process, HCI aims
to create systems that are not only functional but also intuitive, accessible, and enjoyable for
users.
1. The Computer
• Role in HCI: The computer in HCI refers to any digital system or device that users
interact with, including desktops, laptops, tablets, smartphones, and even embedded
systems in devices like smartwatches, cars, or home appliances.
• Components:
o Hardware: This includes input devices (like keyboards, mice, touchscreens),
output devices (such as monitors, printers, speakers), and internal components
(processors, memory) that power the device.
o Software: The operating systems, applications, and user interfaces that run on
the hardware. Software determines how the computer processes input and
generates output, ultimately shaping the user experience.
• Interface Design: The computer’s interface is crucial in HCI, as it is the point of
interaction between the user and the machine. Effective interface design requires
careful consideration of usability, accessibility, and aesthetic factors to ensure that the
system meets the user’s needs
.
2. The Interaction
• Definition: Interaction in HCI refers to the communication between the user and the
computer system. It involves the processes by which users input commands into the
system, the system processes these commands, and the output is presented back to the
user.
• Types of Interaction:
o Direct Manipulation: This involves interacting with objects on the screen
directly, such as dragging files, resizing windows, or rotating objects. It is
intuitive and often preferred by users for its immediacy and transparency.
o Command Line Interaction: Users input text commands into a command-line
interface (CLI), which the system then interprets and executes. This type of
interaction is powerful and flexible but requires more technical knowledge.
o Menu-Driven Interaction: Users select commands or options from a series of
menus. This is common in graphical user interfaces (GUIs) and is user-friendly,
especially for beginners.
o Natural Language Interaction: Users interact with the system using spoken
or written natural language, as seen in voice assistants like Siri or Alexa. This
type of interaction aims to be intuitive by allowing users to communicate in a
way that resembles human conversation.
o Gesture-Based Interaction: Users interact with the system using physical
gestures, such as swiping, pinching, or moving hands in front of a sensor (e.g.,
touchscreens or motion sensors like those used in gaming).
• Feedback: A critical aspect of interaction is feedback, where the system responds to
user input. Effective feedback is timely, clear, and helps the user understand the result
of their actions, whether successful or requiring correction.
3. Paradigms in HCI
• Definition: A paradigm in HCI is a model or pattern that represents a particular
approach to designing and understanding interactions between humans and computers.
Paradigms reflect the evolution of technology, user needs, and our understanding of
human capabilities.
• Major Paradigms in HCI:
o Batch Processing (1950s-1960s): Early computing involved batch processing,
where users submitted jobs (tasks) to be processed without direct interaction
during the process. This paradigm was more about computing than interaction.
o Time-Sharing Systems (1960s-1970s): This allowed multiple users to interact
with a computer simultaneously, marking the beginning of interactive
computing. It led to the development of command-line interfaces and early
graphical interfaces.
o Personal Computing (1980s): With the advent of personal computers, the
focus shifted to individual users. GUIs became popular, making computers
more accessible to the general public. This era saw the rise of direct
manipulation interfaces.
o WIMP Paradigm (Windows, Icons, Menus, Pointer): This became the
standard in personal computing, popularized by operating systems like
Windows and macOS. It provided a consistent and intuitive way for users to
interact with computers using visual elements.
o Mobile Computing (2000s-Present): The rise of smartphones and tablets
introduced new interaction paradigms, such as touch interfaces and gesture-
based controls. Mobile computing emphasizes portability and connectivity.
o Ubiquitous Computing: Also known as pervasive computing, this paradigm
involves embedding computing into everyday objects and environments,
making interactions seamless and often invisible (e.g., smart homes, wearables).
o Virtual and Augmented Reality: These paradigms focus on immersive
experiences where users interact with 3D environments or overlays on the real
world, requiring new input methods like motion tracking and spatial
recognition.
o Natural User Interfaces (NUIs): This paradigm emphasizes interfaces that feel
natural to the user, such as voice-controlled systems, gesture-based interactions,
and touchscreens, aiming to minimize the learning curve.
o Artificial Intelligence and Machine Learning: Modern systems increasingly
rely on AI to anticipate user needs, personalize interactions, and enable natural
language processing, making interactions more intuitive and context-aware.
Integrating These Elements in HCI Design
• Holistic Design Approach: Effective HCI design integrates these three elements—
understanding the capabilities and limitations of the computer, optimizing the
interaction process, and leveraging appropriate paradigms to create user-friendly
systems.
• User-Centered Design: The focus should always be on the user, ensuring that the
chosen paradigms and interaction methods align with users' needs, preferences, and
contexts.
By understanding and applying these concepts, HCI professionals can create systems that are
not only functional but also engaging and accessible to a wide range of users.
Unit 2: The Design Process
THE PROCESS OF DESIGN:
A simplified view of four main phases plus an iteration loop, focused on the design of
interaction:
1. Requirements
What is wanted? The first stage is establishing what exactly is needed. As a precursor
to this it is usually necessary to find out what is currently happening. For example,
how do people currently watch movies? What sort of personal appliances do they
currently use? There are a number of techniques used for this in HCI: interviewing
people, videotaping them, looking at the documents and objects that they work with,
observing them directly.
2. Analysis
The results of observation and interview need to be ordered in some way to bring out
key issues and communicate with later stages of design.
3. Design
Well, this is all about design, but there is a central stage when you move from what
you want, to how to do it. There are numerous rules, guidelines and design principles
that can be used to help with this.
The image you provided depicts a classic Waterfall Model of the software development
process. This model consists of sequential phases, each depending on the output of the previous
one. Here's how Human-Computer Interaction (HCI) fits into each phase of the software
process as defined by this model:
1. Requirements Specification
• HCI Role: In this phase, HCI principles are used to gather and document user
requirements. This involves understanding the target users, their tasks, and the context
in which they will use the system. Techniques like user interviews, surveys, and
contextual inquiry are used to ensure that the system meets user needs.
2. Architectural Design
• HCI Role: HCI influences the overall structure of the system by determining how the
user interface (UI) components will be integrated with the underlying system
architecture. Decisions regarding the organization of the interface, data flow, and the
interaction between different modules are made with the user's experience in mind.
3. Detailed Design
• HCI Role: During this phase, detailed user interface designs are created. This includes
designing the layout of screens, specifying user interactions, and ensuring that usability
principles like consistency, feedback, and error prevention are applied. Wireframes and
prototypes are often developed to visualize the design.
4. Coding and Unit Testing
• HCI Role: As the system is being developed, HCI plays a role in ensuring that the
implemented design aligns with the user requirements and design specifications. Early
usability testing might also be conducted on individual components to ensure that they
are user-friendly before full integration.
5. Integration and Testing
• HCI Role: At this stage, the entire system is tested, including the user interface.
Usability testing is crucial to evaluate how well the system meets user expectations.
HCI professionals may conduct tests with real users to identify any usability issues,
which can then be corrected before the system is fully deployed.
6. Operation and Maintenance
• HCI Role: After deployment, HCI is involved in monitoring user feedback and system
performance. This phase includes ongoing usability testing, updates to improve the user
interface, and maintenance to address any issues that users encounter during operation.
In summary, HCI is integrated into each phase of the software process to ensure that the final
product is not only functional but also user-centered, providing a positive and efficient user
experience.
Design Rules
Design rules in Human-Computer Interaction (HCI) are guidelines and principles that help
designers create user interfaces that are effective, efficient, and satisfying to use. These rules
are based on years of research in psychology, ergonomics, and usability studies, and they aim
to enhance the overall user experience. Here are some key design rules in HCI:
1. Consistency
• Visual Consistency: Ensure that the appearance of elements like buttons, icons, and
text is uniform across the interface. This helps users quickly learn and navigate the
system.
• Functional Consistency: Similar actions should always produce similar results. For
instance, a "Save" button should always save data in every part of the application.
• Terminology Consistency: Use consistent language and labels throughout the
interface to avoid confusion.
2. Feedback
• Immediate Response: The system should provide immediate feedback for user
actions. For example, when a button is clicked, it should change state or display a
loading indicator.
• Clear Messaging: Error messages, success notifications, and other system messages
should be clear, concise, and informative, helping users understand what happened and
what they can do next.
3. Affordance
• Perceived Action Possibility: Design elements should visually suggest how they can
be interacted with. For instance, buttons should look like they can be clicked, and sliders
should look like they can be dragged.
4. Visibility
• Important Information First: Key information and controls should be easily
accessible and visible without the need for excessive searching or navigation.
• Minimal Clutter: Avoid overloading the interface with too many elements. Focus on
what is most important to the user and remove unnecessary distractions.
5. Error Prevention and Recovery
• Prevent Errors: Design the interface in a way that minimizes the chances of user
errors. For example, disable the "Submit" button until all required fields are filled.
• Graceful Recovery: When errors do occur, provide users with clear instructions on
how to correct them. Allow undo options where possible.
6. User Control and Freedom
• Flexibility: Allow users to tailor the interface to their preferences and needs, such as
changing the layout, themes, or keyboard shortcuts.
• Undo and Redo: Users should be able to reverse their actions easily. This reduces
anxiety and allows for exploration without fear of making irreversible mistakes.
7. Recognition over Recall
• Minimize Memory Load: Design interfaces so that users do not need to remember
information from one part of the interface to another. For example, use dropdown
menus or autocomplete functions to help users complete tasks.
• Familiar Elements: Use standard icons and layouts that users are likely to recognize
from other systems they have used, reducing the learning curve.
8. Flexibility and Efficiency of Use
• Shortcuts for Experts: Provide advanced users with shortcuts and ways to speed up
their interaction without forcing novice users to use these features.
• Customizable Interfaces: Allow users to customize their interface according to their
preferences, making it more efficient for frequent tasks.
9. Aesthetic and Minimalist Design
• Simplicity: Keep the interface as simple as possible while still providing all necessary
functionality. Avoid unnecessary elements that do not serve a clear purpose.
• Aesthetic Appeal: A visually pleasing design can make the interface more enjoyable
to use, but it should not compromise usability.
10. Help and Documentation
• Accessible Help: Provide easy-to-find help and documentation for users who need it.
This could include tooltips, a help section, or an FAQ.
• Context-Sensitive Help: Where appropriate, offer help directly within the context of
the user's task, such as inline tips or a guided tutorial.
11. Error Messages
• Clarity: Error messages should clearly explain the problem and provide actionable
steps to correct it.
• Non-Blaming: Messages should be phrased in a way that does not blame the user, such
as "Please enter a valid email address" instead of "You entered an invalid email
address."
12. Learnability
• Ease of Learning: Design interfaces that are easy for new users to learn, possibly
through progressive disclosure (showing only essential elements to start with and
revealing more options as users become more familiar).
• Transfer of Knowledge: Allow users to apply what they've learned in one part of the
system to another, supporting the learning process.
13. Task Efficiency
• Streamlined Processes: Design the interface to minimize the number of steps required
to complete common tasks, enhancing overall efficiency.
• Batch Processing: Where applicable, allow users to perform actions on multiple items
at once, such as selecting and deleting multiple files in a file manager.
By following these design rules, HCI practitioners can create user interfaces that are not only
functional but also provide a positive user experience, leading to greater satisfaction and
productivity.
Universal Design
Universal Design process in Human-Computer Interaction (HCI). The triangle is divided into
three sections, each representing a key aspect of Universal Design: Usable, Accessible, and
Inclusive. At the center, these aspects converge into Universal Design, indicating that an ideal
design integrates all three elements.
Usable
• Definition: Usability focuses on creating interfaces that are easy to use, efficient, and
satisfying for the user. A usable design ensures that users can achieve their goals
effectively with minimal effort.
• Relation to Universal Design: For a design to be universally applicable, it must be
inherently usable by a broad spectrum of users. This involves simplifying tasks,
reducing the cognitive load, and ensuring that interactions are intuitive.
2. Accessible
• Definition: Accessibility is about ensuring that people with disabilities can access and
use the system. This includes considerations for visual, auditory, physical, speech,
cognitive, and neurological disabilities.
• Relation to Universal Design: Accessibility is a critical component of Universal
Design. It involves creating features like screen reader support, keyboard navigation,
color contrast adjustments, and alternative text for images to ensure that everyone,
regardless of ability, can interact with the system.
3. Inclusive
• Definition: Inclusivity involves designing for diversity, ensuring that products are
usable by people of different ages, cultures, languages, and abilities. It seeks to
accommodate the widest possible range of users.
• Relation to Universal Design: Inclusivity in design means considering the needs of all
potential users, including those who may be marginalized or overlooked. Universal
Design aims to create products that do not exclude anyone, making inclusivity a core
principle.
Central Concept: Universal Design
• Integration of Usability, Accessibility, and Inclusivity: Universal Design represents
the intersection of usability, accessibility, and inclusivity. When these three elements
are fully integrated, the result is a design that is usable by the widest range of people,
regardless of their abilities or circumstances.
• Holistic Approach: The diagram emphasizes that Universal Design is not just about
making a product usable, accessible, or inclusive in isolation. It is about combining all
these aspects to create a holistic, user-centered design that works for everyone.
Process Implications:
• Designing for All: The Universal Design process begins with the consideration of
usability, accessibility, and inclusivity from the very start. This means involving diverse
user groups in research, prototyping, and testing phases.
• Iterative Improvement: Achieving Universal Design is often an iterative process,
where feedback from users with different needs is continually used to refine and
enhance the design.
• No Trade-offs: The diagram suggests that Universal Design does not compromise on
usability, accessibility, or inclusivity. Instead, it harmonizes these elements to achieve
a design that is robust, flexible, and adaptable.
In summary, the diagram shows that Universal Design in HCI is the integration of usability,
accessibility, and inclusivity, creating systems that can be effectively and enjoyably used by
everyone.
• Design for All: The interface should be useful and marketable to people with diverse
abilities. This means ensuring that everyone, including those with disabilities, can
access and use the system without discrimination.
• Same Means of Use: Whenever possible, all users should be able to access the same
features and functions without requiring separate interfaces. For example, a website
should be navigable both by mouse and keyboard.
2. Flexibility in Use
4. Perceptible Information
• Error Mitigation: The design should minimize the risk of errors and provide
safeguards against potential mistakes. For instance, providing clear confirmation
dialogs before performing irreversible actions.
• Error Recovery: When errors do occur, the system should offer simple ways for users
to recover, such as undo options, clear error messages, and easy access to help
resources.
• Efficiency: The design should allow for efficient and comfortable use with minimal
physical effort. This includes designing interfaces that require fewer clicks or
keystrokes to complete tasks.
• Accessible Controls: Ensure that all controls are easily reachable and operable,
including by people with limited dexterity or mobility.
• Accommodating All Users: Provide appropriate size and space for approach, reach,
manipulation, and use, regardless of the user's body size, posture, or mobility. For
example, ensuring that all controls are accessible for users who are seated or standing,
and for those using assistive devices like wheelchairs.
• Comfortable Layout: Design interfaces and workspaces so that they are comfortable
to use, avoiding overly cramped layouts or controls that are difficult to reach.
8. Inclusivity in Design
• Support for Assistive Devices: The design should be compatible with common
assistive technologies such as screen readers, magnifiers, and voice recognition
systems. This ensures that users with disabilities can fully interact with the system.
• Built-in Accessibility Features: Include built-in features that support accessibility,
such as adjustable font sizes, color contrast settings, and keyboard shortcuts.
• Broader User Base: By designing for universal access, products and systems become
usable by a larger, more diverse group of people, including those with disabilities.
• Legal and Ethical Compliance: Implementing Universal Design helps organizations
meet legal requirements related to accessibility, such as the Americans with Disabilities
Act (ADA) or the European Accessibility Act.
• Enhanced User Satisfaction: When products are designed to be accessible to all, user
satisfaction increases, as more people can use the product easily and effectively.
• Innovation: Designing for universal access often leads to innovative solutions that can
benefit all users, not just those with disabilities.
Universal Design in HCI is about creating inclusive systems that respect the diversity of users
and aim to provide a seamless, enjoyable experience for everyone, regardless of their abilities
or circumstances.
Unit 3: Implementation Support
Implementation Support in Human-Computer Interaction (HCI) refers to the
strategies, tools, and processes that help ensure the successful integration of HCI principles into the
development and deployment of a system or product. This involves providing resources and
frameworks that support designers, developers, and other stakeholders in applying user-centered
design (UCD) methodologies throughout the lifecycle of a project.
Implementation Tools
Evaluation in HCI
Definition: Evaluation in HCI involves assessing the effectiveness, usability, and overall user
experience of a system or interface. The goal is to identify issues and areas for improvement to
enhance user satisfaction and performance.
Key Methods:
1. Usability Testing:
o Description: Involves observing real users as they interact with a system to
identify usability issues.
o Approach: Users are given specific tasks to complete, and their interactions are
monitored.
o Outcome: Provides insights into user difficulties and areas where the interface
can be improved.
2. Heuristic Evaluation:
o Description: Experts evaluate a system based on established usability
principles or heuristics.
o Approach: Reviewers identify usability issues and suggest improvements
based on heuristics like Nielsen’s principles.
o Outcome: Highlights common usability problems and offers recommendations
for design improvements.
3. A/B Testing:
o Description: Compares two versions of a system to determine which performs
better.
o Approach: Users are randomly assigned to different versions, and metrics such
as conversion rates or task completion times are compared.
o Outcome: Provides data-driven insights into which design version is more
effective.
4. User Experience Research:
o Description: Focuses on understanding users' overall satisfaction and
emotional responses.
o Approach: Utilizes methods like surveys, interviews, and ethnographic studies.
o Outcome: Gathers qualitative and quantitative data on user experiences,
preferences, and pain points.
User Support in HCI
Definition: User support in HCI refers to the various methods and tools used to assist users in
effectively using a system, solving problems, and enhancing their overall experience.
Key Methods:
1. Help Systems:
o Description: Provides users with assistance and guidance while using a system.
o Approach: Includes in-app help, tutorials, FAQs, and context-sensitive help.
o Outcome: Helps users find solutions to common problems and understand how
to use the system more effectively.
2. User Onboarding:
o Description: Aims to familiarize new users with a system or application.
o Approach: Utilizes onboarding tutorials, step-by-step walkthroughs, and
introductory screens.
o Outcome: Smooths the transition for new users and helps them become
proficient with the system more quickly.
3. Customer Support:
o Description: Offers assistance for user inquiries and problems.
o Approach: Includes support tickets, live chat, email support, and user forums.
o Outcome: Provides direct help to users, resolves issues, and answers questions.
4. Feedback Mechanisms:
o Description: Collects user feedback to inform system improvements.
o Approach: Uses surveys, feedback forms, and user forums to gather input.
o Outcome: Helps identify areas for enhancement and ensures that user voices
are heard in the design process.
5. Accessibility Support:
o Description: Ensures systems are usable by people with diverse abilities.
o Approach: Incorporates features like screen readers, voice commands, and
customizable interfaces.
o Outcome: Makes systems more inclusive and usable for individuals with
disabilities.
Each of these areas plays a crucial role in creating effective and user-friendly systems,
contributing to both the design process and ongoing support for users.
Unit 4: Users Models
In Human-Computer Interaction (HCI), the user model is a representation of the user's
characteristics, needs, preferences, and behaviors. It's used to tailor interactions and interfaces
to better suit individual users. Here are some key aspects of user models in HCI:
These models can be used in various HCI applications, such as adaptive interfaces,
recommendation systems, and usability evaluations, to create more effective and user-friendly
designs.
A standard HCI model
Basic model of HCI
Cognitive Models
Cognitive models play a significant role in improving human-computer interaction (HCI) by
providing insights into how users perceive, process, and interact with digital interfaces.
These models help designers create interfaces that align with users' cognitive processes,
making them more intuitive and user-friendly.
The cognitive model breaks down the process into distinct stages—events, thoughts,
emotions, and behaviors—which can be directly applied to Human-Computer Interaction
(HCI). Here’s how each topic in the image relates to HCI, using the cognitive model:
- *Designing for Positive Events:* Ensure that common user actions result in positive
feedback, making the system feel rewarding and intuitive.
- *Cognitive Load Management:* Minimize unnecessary complexity that could lead to
negative thoughts. Clear instructions and user-friendly interfaces help in maintaining positive
cognitive processes.
- *Emotional Design:* Focus on creating a design that not only meets functional needs but
also considers the emotional impact of the user experience. This might include aesthetic
appeal, helpful prompts, or encouraging messages.
- *Behavioral Influence:* Design systems that guide users toward desired behaviors by
influencing their thoughts and emotions positively. For example, offering helpful tips after
errors or providing rewards for task completion can promote continued engagement.
By understanding how each of these steps in the cognitive model influences user interaction,
HCI practitioners can create more effective, user-centered designs that cater to the cognitive
and emotional needs of their users.
Socio-organizational Issues and Stakeholder
Requirements
Socio-organizational issues and stakeholder requirements are related to the design of systems,
and are important to consider when designing new computer systems.
Socio-organizational issues can include: Power relationships, Who benefits from systems, and
Ensuring all stakeholders can use systems.
Stakeholder requirements are the specific needs and wants of individuals or groups within an
organization. They define decisions about business needs, goals, and objectives from the
perspective of the stakeholders and their role in the business.
Some methods for capturing stakeholder requirements include:
• Socio-technical models: Capture both human and technical requirements
• Soft systems methodology: Takes a broader view of human and organizational issues
• Participatory design: Includes the user directly in the design process
• Ethnographic methods: Study users in context, attempting to take an unbiased
perspective
Task Models and Dialog
Task Model
A task model in Human-Computer Interaction (HCI) is a representation that outlines how users
perform tasks and interact with a system to achieve their goals. It helps designers understand
user behaviors, identify needs, and create more effective interfaces and systems.
• Definition: Organizing tasks into a hierarchical structure where higher-level tasks are
broken down into lower-level tasks and sub-tasks.
• Purpose: Clarifies the relationships and dependencies between tasks.
• Example: A task hierarchy for email management might include high-level tasks like
"Organize Inbox" and "Compose and Send Emails," with sub-tasks like "Create
Folders" and "Write Subject Line."
• Definition: Visual representations showing the sequence and flow of tasks and
interactions.
• Purpose: Illustrates how users move from one task to another and how tasks are
interconnected.
• Example: A flowchart depicting the steps involved in filing a tax return, from gathering
documents to submitting the return online.
• Design Guidance: Helps designers create interfaces that align with user workflows and
reduce cognitive load.
• Usability Testing: Provides a basis for evaluating how well a system supports task
performance and identifying usability issues.
• Communication: Facilitates communication between designers, developers, and
stakeholders by providing a clear representation of user tasks and interactions.
• Training and Support: Assists in creating training materials and support
documentation by outlining task steps and procedures.
1. Identify User Goals: Determine what users want to achieve with the system.
2. Break Down Tasks: Decompose goals into specific tasks and sub-tasks.
3. Model Task Flows: Create diagrams or charts to represent the sequence and
relationships between tasks.
4. Analyze Cognitive Processes: Use CTA to understand the mental activities involved
in completing tasks.
5. Validate with Users: Test the task model with real users to ensure it accurately reflects
their interactions and needs.
By developing a detailed and accurate task model, HCI practitioners can design systems that
better support users' needs, streamline their interactions, and improve overall user satisfaction.
Analyzing Tasks
Analyzing tasks in Human-Computer Interaction (HCI) involves understanding and breaking
down the activities users need to perform to achieve their goals using a system. This process
helps in designing systems that are efficient, user-friendly, and aligned with users' needs and
workflows.
1. Task Identification:
• Objective: Determine the key tasks that users need to perform with the system.
• Approach: Conduct user research, including interviews, surveys, and observations, to
identify the main tasks users want to accomplish.
• Outcome: A list of primary and secondary tasks that the system should support.
2. Task Decomposition:
3. Task Modeling:
• Objective: Create visual or formal models of tasks to represent their structure and flow.
• Approach: Use diagrams such as flowcharts, task flow diagrams, or state diagrams to
model task sequences and interactions.
• Outcome: Visual representations that illustrate how tasks are performed and how users
interact with the system.
4. Task Analysis:
• Objective: Understand the goals users are trying to achieve and the context in which
tasks are performed.
• Approach: Consider factors such as user needs, environmental conditions, and
constraints that may impact task performance.
• Outcome: A comprehensive understanding of user goals and context that informs
system design.
7. Iterative Refinement:
By thoroughly analyzing tasks, designers can create systems that are more intuitive, efficient,
and aligned with users' needs, ultimately enhancing the overall user experience.
Dialog Notations: Dialog notations are a set of symbols and conventions used to represent
and analyze the structure of dialogue in human-computer interaction (HCI) or other
communication systems. These notations help in documenting and understanding how users
and systems interact, particularly in the context of user interfaces and conversational systems.
Ubiquitous Computing
Ubiquitous Computing, also known as pervasive computing, refers to the concept of integrating
computation into everyday objects and environments, making technology seamlessly
integrated into our daily lives. The goal is for computing to become so embedded and pervasive
that it is nearly invisible, and users interact with it naturally as part of their routine activities.
Key aspects of ubiquitous computing include:
1. Embedded Systems: Integrating computing devices into various physical objects and
environments. These can range from household appliances to vehicles, allowing them
to collect, process, and share data.
2. Context Awareness: Systems that can sense and respond to the context in which they
are used, such as adjusting settings based on user location, activity, or environmental
conditions.
3. Interoperability: Ensuring that diverse devices and systems can work together
seamlessly. This often involves standardizing communication protocols and data
formats.
4. Wireless Connectivity: Leveraging wireless technologies (e.g., Wi-Fi, Bluetooth) to
enable devices to communicate and share information without the need for physical
connections.
5. User Interfaces: Designing interfaces that are intuitive and unobtrusive, often through
sensors, gestures, or voice commands, so users can interact with technology naturally
and effortlessly.
6. Privacy and Security: Addressing the challenges related to data security and user
privacy in environments where many devices are constantly collecting and transmitting
data.
Ubiquitous computing aims to make technology more accessible and useful by integrating it
into the background of our lives, enhancing convenience and efficiency without requiring users
to actively manage it.
Virtual and Augmented Reality
Virtual Reality (VR) and Augmented Reality (AR) are both immersive technologies that blend
digital content with the physical world, but they do so in different ways:
Virtual Reality (VR)
• Definition: VR creates a fully immersive, computer-generated environment that users
can interact with, often through a headset. It simulates a completely virtual space that
users perceive as real.
• Hardware: Typically involves VR headsets like the Oculus Rift, HTC Vive, or
PlayStation VR, which may include motion controllers and sensors to track user
movements.
• Applications: Used in gaming, training simulations (e.g., for pilots, surgeons), virtual
tourism, and more. VR can also be applied in design and architecture for virtual
walkthroughs.
• Experience: Users are entirely immersed in a virtual world, with no direct interaction
with the real world during their experience.
Augmented Reality (AR)
• Definition: AR overlays digital information and objects onto the real world, enhancing
or augmenting the user's perception of their environment.
• Hardware: Can be experienced using smartphones, tablets, or AR glasses like
Microsoft HoloLens or Google Glass.
• Applications: Widely used in applications like Pokémon GO, interactive educational
tools, navigation systems, and maintenance support. AR is also used in marketing and
retail to enhance customer experiences.
• Experience: Users remain aware of their physical surroundings while interacting with
digital elements that are superimposed on the real world.
Comparing VR and AR
• Immersion: VR offers complete immersion in a virtual environment, while AR
enhances the real world with digital elements.
• Interaction: VR users interact exclusively with the virtual environment, whereas AR
users interact with both the real world and digital overlays.
• Equipment: VR typically requires specialized hardware like headsets, while AR can
be accessed via more common devices like smartphones.
Both VR and AR have transformative potential across various fields, including education,
healthcare, entertainment, and industry, by providing new ways to visualize, interact with, and
experience information.
02. Hypertext involves only text. It involves graphics, image, video, audio etc.