HCI Notes
HCI Notes
Human-computer interaction (HCI) is an interdisciplinary field combining insights from psychology, computer science, and
design. It seeks to enhance our understanding of the complex relationship between humans and the digital world by studying:
Usability testing
The roots of human-computer interaction (HCI) lie in the early days of computing. Researchers and practitioners began exploring
how people could interact with computers beyond punch cards and paper tape.
In the 1960s and 1970s, the emergence of graphical user interfaces (GUIs) revolutionized how people interacted with computers.
This enabled them to use a mouse and keyboard to navigate digital interfaces.
The creation of GUIs led to a growing interest in how people interacted with computers and the development of new tools and
methods for studying human-computer interactions.
One key HCI pioneer was Douglas Engelbart. He developed the first computer mouse in the 1960s before developing other key
innovations, such as hypertext and networked computing.
Engelbart believed humans could use computers to augment human intelligence, and he saw the study of human-computer
interaction as a critical component of this vision.
Another significant figure in the field was Ben Shneiderman. He introduced the concept of "direct manipulation" in user
interfaces and developed the widely used treemap.
With the rise of mobile computing, the Internet of Things, and virtual and augmented reality, studying HCI has become more
critical than ever.
Human-computer interaction is an essential aspect of modern technology, influencing the design and development of digital
systems and applications in almost every sector.
Industry
HCI helps companies create products and services that meet the needs of their customers. Companies can design more user-
friendly, intuitive, and efficient products by understanding how people interact with technology. This approach can
increase customer satisfaction, sales, and profits.
Accessibility
HCI makes technology accessible to people with disabilities. We can bridge the digital divide and provide equal access to
information and technology by designing interfaces that are easy to use for people with visual, auditory, or motor disabilities.
By prioritizing HCI, we can create technologies that are more user-friendly, accessible, and effective, improving people's
experiences and enhancing their quality of life.
Principles of HCI
Several principles of human-computer interaction (HCI) guide the design and development of user-friendly interfaces and
systems:
Mapping: Mapping refers to the connection between user input (controls) and system output (actions). It should be
easy to understand and intuitive for users.
Consistency: In design, consistency ensures similar actions and elements have homogenous representations throughout
the interface. This reduces the need for users to learn and memorize new interactions.
Simplify: The system should be simple and avoid unnecessary complexity that could compromise the user experience.
Feedback: Feedback is essential to communicate to the user whether or not their actions have been successful. It could
be in the form of visual, auditory, or haptic feedback.
Visibility: This refers to the ability of the user to see and understand the state of the system and its components, making
it easier for them to take appropriate actions.
Constraints: The design should use physical or logical limitations to prevent users from taking certain actions or
making mistakes.
Mental Models: The design should align with the user's mental model of how the system should work, facilitating ease
of use and understanding.
Affordance: The system should provide affordances, or clues, about possible actions and how to perform them.
Learnability: The system should be easy to learn and use, with minimal need for extensive training or documentation.
Error prevention and recovery: Interfaces should prevent errors and allow users to recover from errors easily and
quickly.
Designers can use these principles to create intuitive, efficient, and effective interfaces, improving user experience and
satisfaction.
Key components of HCI
Input devices
Input devices interact with the computer. This includes keyboards, mice, touchscreens, voice recognition systems, and gesture-
based systems. They enable users to provide input to the computer and control the system.
Output devices
These devices provide feedback to the user, including monitors, speakers, printers, and haptic devices. They enable the computer
to provide visual, auditory, or tactile feedback, allowing the user to understand the results of their actions.
User interface
The user interface (UI) is part of the system allowing users to interact with the computer. It includes graphical user interfaces
(GUIs), command-line interfaces (CLIs), and natural language interfaces. The UI should be intuitive, easy to use, and efficient,
enabling users to achieve their goals quickly and easily.
Interaction design
This design shows how users interact with the computer. It involves designing the user interface, selecting appropriate input and
output devices, and designing how the computer responds to user input.
Usability testing
Usability testing asks real users to evaluate a system. It involves tasks such as observing users interact with the system, collecting
feedback, and identifying areas for improvement.
Accessibility
Accessibility includes designing interfaces that everyone can use, regardless of their physical ability.
Human factors
This studies how humans interact with technology. It includes factors such as cognitive load, attention, perception, and memory,
and it seeks to understand how these factors influence HCI system design.
These components are critical to the design and development of HCI systems and ensure the systems are user-friendly and
effective.
Examples of HCI
HCI is a broad, multidisciplinary field, including various domains and technologies. We can find the application of HCI
principles in almost every aspect of our lives, including:
1. IoT technology
These systems integrate physical devices, such as sensors, actuators, and other smart devices, with digital systems, enabling them
to communicate with each other and users.
The design of IoT systems involves HCI principles, ensuring users can easily interact with, control, and monitor the devices
effectively.
For example, the design of a smart home system would involve considerations such as:
The placement and usability of sensors
2. Eye-tracking technology
This technology uses specialized cameras and software to monitor and analyze eye movements. Designers and researchers can
use the technology to understand how users interact with interfaces, including websites, software, and physical devices.
Market research: Analyzing consumer behavior and preferences by seeing how they interact with advertisements and
products
Usability testing: Evaluating the effectiveness of user interfaces by measuring how easily users can find information
and complete tasks
Medical research: Studying eye movements in people with neurological or developmental disorders for accurate
diagnosis
The technology must be comfortable and non-invasive for users, and the data must be simple for researchers to analyze and
interpret.
Speech recognition technology is applicable in different fields, like virtual assistance. It enables users to interact with devices
using voice commands, making accessing information and controlling functions easier.
Speech recognition in hands-free control in cars and home automation systems enables users to operate the devices without using
their hands, increasing safety and convenience.
For people with disabilities, speech recognition technology can provide an alternative input method. This enables them to use
computers and other devices even if they cannot use traditional input devices such as keyboards and mice.
Speech recognition technology should discern different accents and languages and understand natural language, including idioms
and colloquialisms.
4. AR/VR technology
AR/VR technology allows a human and a computer system to interact. The computer system creates an immersive virtual or
augmented reality environment that the user can experience through specialized devices. These include head-mounted displays or
handheld devices.
The technology uses sensors, cameras, and other input devices to track the user's movements. The computer responds
accordingly, creating a seamless interaction between the user and their virtual environment.
Interaction can be gestures, voice commands, or other input types, which the computer system interprets and uses to control
various AR or VR environment aspects.
5. Cloud computing
Cloud computing is the interaction between a human and computer system to access resources and services over the internet.
Processing power
Storage
The interaction between the user and cloud computing system can take many forms, such as:
The human-computer interaction (HCI) field is continuously evolving, and its future is promising.
Here are some areas where HCI is likely to make significant advancements in the coming years:
Augmented and virtual reality: As AR and VR technologies advance, HCI research will create more natural and
immersive interfaces to enhance the user experience.
Wearable computing: With the rise of wearable devices like smartwatches and health trackers, HCI will develop new
interaction techniques and optimize interfaces.
Internet of Things (IoT): As IoT devices become more prevalent, HCI research will focus on designing interfaces and
interaction techniques, enabling users to easily control and interact with connected devices.
Artificial intelligence (AI): With AI technology advances, HCI research will develop interaction techniques, ensuring
users can communicate effectively and collaborate with intelligent systems.
Accessibility: HCI research will continue to focus on developing more accessible interfaces and interaction techniques
for users with disabilities, enabling them to interact with technology more effectively.
1. Education
HCI is becoming an integral part of the education industry as it enables effective and engaging learning experiences for students
and teachers. It facilitates the design, evaluation, and implementation of interactive systems that enhance the learning experience
in both online and offline classrooms.
2. Healthcare
The healthcare industry is implementing human-computer interaction to enhance the usability, safety, and efficiency of digital
health systems. HCI improves the interaction between humans and computers in various healthcare settings, such as hospitals,
clinics, laboratories, and homes. For this, startups utilize techniques like user-centered design, predictive modeling, eye-tracking,
and actor-network theory to analyze and evaluate the user interfaces of healthcare devices and systems.
.3. Gaming
Human-computer interfaces influence the user experience, engagement, and satisfaction of gamers. HCI researchers in the
gaming industry explore game user interface design, game mechanics, feedback, immersion, and accessibility as key areas of
interest. Within the gaming industry, there is a rise in immersive reality experiences and interfaces. Game developers also use
HCI principles to ensure that their games are accessible to as many people as possible.
This includes designing the game’s interface and controls to accommodate players with disabilities, such as color blindness or
motor impairments. Startups are complementing these developments with solutions for haptic feedback-based gaming and brain-
computer interfaces (BCI). Such solutions also help create interactive gaming experiences for differently-abled gamers. These
newer HCI technologies create inclusive, immersive, and interactive gaming experiences for all gamers.
4. Fintech
In the fintech industry, human-computer interfaces enable users to interact with complex financial systems in a user-friendly and
efficient way. It enhances the usability, accessibility, and security of fintech applications, as well as improves customer
satisfaction and loyalty via easy banking applications.
5. Marketing
Human-computer interaction enables marketers to create engaging and personalized experiences for potential customers.
Marketing agencies use HCI principles to design user interfaces and advertising kiosks in public places to attract the attention of
consumers. Startups are integrating voice assistants and chatbots along with augmented reality and gesture recognition to create
immersive advertising experiences.
These innovative solutions improve customer loyalty and eyeball retention which are key to advertising success and brand
recognition.
6. Retail
The retail industry uses HCI to enhance customer experience, increase sales, and optimize commercial operations. Stores are
implementing self-checkout kiosks to allow customers to scan and pay for their purchases without the need for a cashier.
Interactive displays are also becoming more common in retail stores.
7. Manufacturing
Human-computer interaction systems enable efficient and safe production processes. Companies are using novel interfaces to
track the performance of machines on the factory floor. Operators use human-machine interfaces (HMIs) to adjust machine
settings and control production processes. This enhances the quality and productivity of human workers, as well as reduces
factory errors and risks.
HCI-based devices are now common in the food and beverage industry, especially in automated systems that control the
processing and packaging of food products. These systems use the internet of things (IoT) sensors, monitoring software, and user
interfaces to streamline production processes and reduce the risk of errors or contamination. Companies use HCI to help with
food sorting, quality control, production, and packaging, as well as overall supply chain management.
Many startups are providing monitors attached to sensors that track and control critical parameters such as temperature, humidity,
and pressure during food production, storage, and transportation. By providing real-time data and alerts, HCI systems help
operators identify and respond quickly to potential issues that compromise food quality or safety.
9. Automotive
Human-computer interaction allows drivers and passengers to interact with various features and functions of vehicles nowadays.
Many modern vehicles feature touchscreen displays that allow drivers to interact with and enhance comfort, convenience, and
entertainment in cars. The automotive industry also adopts voice recognition technology, allowing drivers to control certain
features of their vehicles using voice commands.
Hungarian startup Connecta Automotive develops an in-car infotainment interface. The interface, installable on any car
dashboard or display, enables navigation, voice control, and driver assistance in the vehicle. The interface supports both gesture
and voice recognition, enabling hands-free access for the driver and preventing road accidents. It also offers personalized
advanced driver assistance system (ADAS) experiences using the car’s location data.
10. Entertainment
The entertainment industry is implementing HCI-based systems to enable immersive and engaging experiences for users. It
allows for interactive experiences in theme parks, museums, and other entertainment venues. Visitors utilize touchscreen kiosks,
gesture recognition, and voice commands to interact with exhibits or ride simulators. Additionally, startups are developing VR
headsets that use sensors to track the user’s movements and display virtual environments in real-time.
User-centered design is a discipline that focuses not on the user’s needs, but on the user’s wants, environment, likes, tastes,
etc. Task-centered design is the sibling term who worries about the task the user is going to do, which prioritizes the physical
and mental work the user is going to put on and thinks one or ten steps ahead to avoid useless tasks, and make hard tasks
easy, for the user to have an easy and positive experience.
In UCD, design teams involve users throughout the design process via a variety of research and design techniques, to create
highly usable and accessible products for them.
Example: When a product team develops digital products, it takes into account the user’s requirements, objectives, and
feedback. Satisfying users’ needs and wants becomes a priority, and every design decision is evaluated in the context of
whether it delivers value to the users. The user-centered design gives you a way of adding an emotional impact to your
products.
User-Centered Design Principles:
User-centered design is based on a few fundamental principles that can be applied to the product design process:
Users are involved in the design process from the very beginning. Critical design decisions are evaluated based
on how they work for end-users.
Importance of requirement clarification. The product team always tries to align business requirements with
users’ needs.
Introducing user feedback loop in the product life cycle. The product team collects and analyzes feedback from
users regularly. This information helps the team to make more user-focused decisions.
Iterative design process. The product team constantly works on improving user experience; it introduces
changes gradually as it gains more understanding about its target audience.
The Essential Elements of User-Centered Design:
Visibility: Users should be able to see from the beginning what they can do with the product, what is it about,
and how they can use it.
Accessibility: Users should be able to find information easily and quickly. They should be offered various
ways to find information for example calls action buttons, search options, menu, etc.
Legibility: Text should be easy to read. As simple as that.
Language: Short sentences are preferred here. The easier the phrase and the words, the better.
Focus areas of UCD:
Identify the primary users of the product.
Why they will use the product?
What are their requirements?
Under what environment they will use it?
Collect information about their users’ needs.
Phases of UCD:
The following are the general phases of the UCD process:
Phases of UCD
Specify the context of use: Identify the people who will use the product, what they will use
it for, and under what conditions they will use it.
Specify requirements: Identify any business requirements or user goals that must be met for
the product to be successful.
Create design solutions: This part of the process may be done in stages, building from a rough concept to a
complete design.
Evaluate designs: Evaluation – ideally through usability testing with actual users – is as integral as quality
testing is to good software development.