What do you learn in a human-computer interaction (HCI) course? What are the most influential principles and methods of HCI? How do we know how to approach the design and evaluation of interactive systems?
If you have ever asked these questions, you are not alone. Many folks I’ve talked to, in UX roles and tech jobs in general, have never taken a formal course on human-computer interaction but are interested in learning more about its theory and foundations.
To that end, I dusted off my old HCI textbook and synthesized its 21 chapters into ten key lessons. These ten highlights will provide practical knowledge you can use immediately and serve as a diving-in point for further learning.
![Human Computer Interaction 3rd (third) Edition by Alan Dix, Janet Finlay, Gregory D. Abowd, Russell Beale published by Prentice Hall (2003): Amazon.com: Books Human Computer Interaction 3rd (third) Edition by Alan Dix, Janet Finlay, Gregory D. Abowd, Russell Beale published by Prentice Hall (2003): Amazon.com: Books](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0282e07a-56c6-49d2-85f6-3c806e5dbff0_752x1000.jpeg)
1. The human factor
Sensation, perception, attention, memory, and emotion all impact how we interact with the world around us, including computers. A base understanding of human psychology, and its shortcomings, is fundamental to designing effective interfaces.
“Humans are limited in their capacity to process information. This has important implications for design…”
For example:
You may have heard of Miller’s law, which says people can generally remember 7 +/-2 items of information. This is often misunderstood and misapplied. This law only applies to working memory, where we store the information we are actively using. If you hear someone suggest that a menu should have less than 7 items because of Miller’s law, you can kindly explain that a menu does not burden working memory since it can be readily seen on the screen.
2. The computer, in its various formats
Computer systems have a variety of input (e.g., keyboards, joysticks, mice, touchscreens) and output devices (e.g., screens, speakers). Each of these devices has its strengths and weaknesses which profoundly impact how efficient, effective, and enjoyable an experience is for a given task.
Interesting examples:
Did you know that the QWERTY keyboard layout, commonly used today, was originally designed for mechanical typewriters and may not be the most efficient for typing? Dvorak (see below) is debated to be more efficient but biased toward right-handers.
The touchscreen is a poor input mechanism because the finger is generally inaccurate and blunt. A stylus will always be better when accuracy and fine detail matter.
3. Models for understanding interaction
There are a variety of frameworks and models of interactions with computer systems. Through these models, we can better conceptualize and understand user experiences.
One model you should know:
The Interaction Framework -
This cyclic framework is a model representing how users interact with an interface.
The framework has four components and frames the interaction as “translations” between them.
The User, System, Input (actions the user performs), and Output (what the system presents back to the user) form the components.
The interaction takes place via a series of translations between the components; the user articulates their goal into system input (e.g., picking a button to press), which is processed and translated into output, which the user must observe to understand what to do next.
Articulation and observation are particularly important to designers; they distinguish if friction results from not understanding what to do or not understanding the state of the system.
4. Interaction design basics
Interaction design is how we design interfaces that help users achieve their goals. This process works best when it is user-focused, scenario-based, and iterative.
The authors’ interaction design process summary has five key steps (with an iterative loop in the middle):
Identify what users need and want. Semi-structured interviews, ethnography, and other exploratory methods are useful here.
Analyze findings and clearly define problems to be solved.
Design potential solutions using guiding principles.
Create and test prototypes of solutions.
Deploy what you have built.
5. The rules of usability design
There is a large body of rules we can follow in our interaction design process to ensure usability. These rules summarize cumulative knowledge about effective usability design in an easy-to-digest format.
Design rules come in many forms. For example…
Usability principles; a set of abstract principles like “learnability” that can be applied and measured to promote usability.
Specific standards (specifications for interfaces and processes set by international bodies, like the ISO) and more general guidelines (docs outlining recommendations and best practices).
Heuristics, like Nielsen’s ten, offer general rules of thumb a practitioner can use to evaluate a design.
Design patterns demonstrate specific design elements that help support a particular interaction (this is what a design system documents).
6. Design paradigms
Interaction paradigms refer to high-level models or patterns of interface design. Throughout history, there have been many popular paradigms, including batch processing, command line interfaces, graphical user interfaces, and visual metaphors.
A paradigm you’re likely familiar with:
WIMP Interfaces — The WIMP interface is a classic interaction paradigm. WIMP stands for Windows, Icons, Menus, and Pointers. It is widely used in most operating systems on personal computers.
7. Task analysis
Task analysis is the structured process of analyzing how a person accomplishes a goal. There are many ways to conduct task analyses (see Gillan), but each method involves breaking down tasks into sub-goals, steps, and sub-processes. This approach of deconstructing the task helps us to comprehend, explain, and evaluate user actions.
Task analyses can be used to define a user’s goals, describe their behaviors, evaluate how an interface supports the user in completing their task, and inform the design of new prototypes.
8. Usability evaluation techniques
Evaluation techniques are methods we use to assess the effectiveness, efficiency, and satisfaction of user interfaces. These techniques fall into two categories; expert evaluation methods and usability testing.
Expert evaluation involves a usability professional inspecting an interface and assessing it against established usability best practices. This can include methods like cognitive walkthroughs and heuristic evaluations.
Usability testing involves setting up a test where actual users try to use an interface while their interactions, behaviors, performance, preferences, and feedback are recorded. These tests can be moderated or unmoderated, remote or in-person, and may involve various methods depending on the stage of design.
Evaluating designs early and often helps support user needs and reduces costs associated with development re-work. Effective practitioners should know a range of these methods, understand their tradeoffs, and recognize when to apply them.
9. Principles of universal design
Universal design is the practice of designing products so that they can be used by as many people in as many situations as possible. This requires us to consider the range of abilities and backgrounds people have.
Many divide universal design into two sub-groups; accessibility and inclusive design. Accessibility focuses on creating experiences that are accessible to all users, especially those with disabilities who may require assistive technologies. Inclusive design considers a broad range of factors, such as age, gender, culture, and language, to ensure that a design works for everyone.
Through universal design practices, we can gain a deeper understanding of the unique needs and challenges of different user groups. In turn, we use that knowledge to inform the design of products and services tailored to their needs, resulting in more equitable and inclusive user experiences.
10. The need for help & support
We strive to design interfaces that enable users to accomplish their goals flawlessly. However, even with our best efforts, users will get stuck and need help from time-to-time. Providing well-designed documentation and support can help our users overcome challenges, enhance their first-time experience, and increase their confidence in using our designs.
“Even though it is better if the system can be used without documentation, it may be necessary to provide help and documentation. Any such information should be easy to search, focused on the user’s task, list concrete steps to be carried out, and not be too large.”
-Jakob Nielsen's Usability Heuristic #10
Practitioners must understand how to provide users with the help they need in a way that is easy to locate, timely, and accurate. Here are some key concepts:
Offer multiple help channels (e.g., in-context tooltips, video tutorials, online forums).
Make sure help is within reach of where the problem occurs (e.g., help resources should be found without having to leave the current task).
Use precise language, and test it with representative users.
Help & documentation should be improved and updated iteratively.
The bottom line
Understanding the theory and foundations of HCI is crucial for designing effective interfaces. In this article, we explored the ten key lessons from the field of HCI. Now that you have gained practical knowledge from these highlights, I hope you apply them to your work.
Remember, learning the foundation and theory of our craft is an ongoing process. To help deepen your understanding I encourage you to read the references throughout the article.
Drill deeper
Depth is produced by Drill Bit Labs, a consulting firm on a mission to advance the field of user research.
We partner with leaders in UX and digital product development to improve their team’s processes, user experiences, and business outcomes. How we help:
Research projects to inform confident design decisions and optimize digital experiences.
Training courses that teach team members advanced user research skills.
Advisory services to improve UX team processes & strategy; particularly around UX maturity, research process efficiency, structuring your people, hiring & interviewing, measuring UX, and demonstrating the business outcomes & ROI of UX initiatives.
We’d be happy to open a conversation to discuss your specific needs & goals for this year. These paid services help support our free articles and industry reports.
Bonus: How to dialogue like a pro to level up your UX
I attended UXPA last week, where I had the pleasure of meeting some of you and listening to fantastic talks. I wanted to highlight one of those talks here.
In his presentation, “Dialogue like a pro to level up your UX,” Nicholas Johnson synthesized the learnings from many books on communication into an original four-tier model for building a dialog toward a win-win solution. You can download the model & checklist from Nicholas’s website here.