Preamble
Welcome to User Experience! For many of you, this is your first exposure to the wider discipline of Human Computer Interaction (HCI) and Human Factors. Some of you may have already experienced some basic HCI work as part of the software engineering lifecycle. However, this text takes a far more in-depth look at the tools, techniques, and knowledge you need to understand the user experience within software engineering.
It is worth noting that this text may be more in depth than those to which you may already have been exposed. But remember, it is by no means intended to teach you everything you need to know about human facing software engineering. Indeed, entire undergraduate degrees are built around the subject of human factors and ergonomics, and you should not confuse this high-level overview of the domain with the knowledge you would acquire in a full three-year degree programme. That said, the aim of this text is to give you, the reader, the tools, techniques, and the mindset necessary to competently approach your first user testing and user experience job. The text is designed from a practical perspective and will enable you to take a junior role in a user experience department or usability company. And will provide you with the overall knowledge to communicate with others and make sensible suggestions regarding UX work. Further, it will provide you with a basis for future self-study within the UX domain or the wider human factors world. In this case, I’ve decided to call the text, more fully, ‘User Experience from 30,000 feet’1.
As we’ll see later, the UX domain is still very young and in the process of formation. But, it does bring together many already established areas within the human-computer interaction field. As a placeholder, you may wish to think of UX as the practical application of research knowledge repurposed from other domains into the user-facing software engineering process. In this case, suggesting a particular UX text would only serve to skew your education to a particular view of the UX domain (although you may wish to check out some UX books as well: [Unger and Chandler, 2009; Bowles and Box, 2011; Lund, 2011]). I feel it is better for you to understand my view while realising there may be different ones out there. In the end, you will need to decide, after reading this text, the sort of UX you wish to do and how you think about the area. Therefore, this text has been written from scratch and represents an overview of UX as seen by the human factors and web science researchers I work with.
You don’t need to panic! The text is intended to provide you with an overview of the UX field as well as an understanding of the key concepts within this field. Plus a method of assessing your understanding of the topics covered, and finally, a reference to reading material which will enable your deeper study, both now and in your future work.
Finally, I’ve tried to keep the jargon (and explain any I introduce2) to a minimum. And I hope you’ll see that the writing style is ‘formally academic’ but clear and easy to read.
Text Structure
UX is an empirical discipline, whereby established principles and guidelines are applied to software development and the correctness of that software is established via experimentation in the form of user feedback. In this case, the UX specialist is mainly interested in questioning the development to ascertain its correctness.
This correctness normally exists along many dimensions. But briefly, can be thought of as the primary utility of the development; its effectiveness; its efficiency; and its emotional impact (both tangibly and intangibly, represented by the concept of engagement). In this case, the text structure is intended to give you the principles, tools, and techniques needed for UX work along with a critical and questioning mindset to enable you to apply these techniques effectively.
Therefore, you will learn the tools and techniques needed for effective interaction with each dimension. These include the scientific and empirical techniques to join and apply these principles and tools to a new bespoke development. And the mindset to be critical of, and to question the outcomes of, this development to establish the user experience.
Secondary ‘Text’
“Zen and the Art of Motorcycle Maintenance (ZAMM) [Pirsig, 1974]” may seem like a strange text to use for a Computer Science based UX course… and it probably is. In reality, I am not interested in you remembering anything in ZAMM – however the critical and questioning skills developed from its analysis will be of use to you. ZAMM is not really about Zen or indeed motorcycle maintenance, it’s about science, quality, and rhetoric; the USA’s Library of Congress describes it as:
While Wikipedia says:
ZAMM is useful to us because it serves as a framework for criticism while enabling us to apply UX principles, rational thought, and scientific argument to a well understood and well-respected text. As for my thoughts on ZAMM; well I might not agree with everything the book has to say, but I do think it is an important and interesting topic and discussion which needs to be had. At this point, you need not worry too much about the book itself – other than the fact that you should read it. All will become obvious as the text progresses. But you may like to read a longer discussion of “Zen and the Art of Motorcycle Maintenance” and its usefulness for UX Teaching in the Appendix.
AI Assistance
As I began updating these notes at the beginning of 2023, ChatGPT and a slew of other AI ‘Assistants’ were released, to general uproar from thought workers, academics, and people in the digital space alike. What will this mean for learning, what will this mean for thought? Well, it is difficult to tell without trying to integrate them into your workflow and using them properly; not just as tests (no matter how extended). It is difficult to know how to think about AI assistants and so I thought I ask an AI.
And highlighting the most relevant parts of this response ‘it is capable of providing useful insights and pointing you in the right direction’ and ‘it may not be able to provide nuanced or context-specific responses in the way that a human expert might’ is the most useful and telling after my experiences here.
After using assistance for the update to this text, which in reality only represents around 15 pages of the work, 5 pages could be used for the most part as generated, 5 pages needed extensive modifications, and 5 pages need very extensive correction because concepts and elabotations where just plain incorrect; I found it to be useful for starting text to be modified, or for straightforward work which was just about connecting concepts. In general, it produces adequate but surface-level detail of concepts, does not provide context or nuanced discussion based on an understanding of the real world and so needs human oversight. However, it was very useful as a naive collaborator that provided initial writing waiting for the domain expert (me) to make subsequent ‘passes’ and edits. So if you are looking for text which is not expert but is a starting point then it is a very useful tool akin to spellcheckers or more recently intelligent grammar checkers. The most useful skill a human needs to learn when collaborating with an AI assistant is how to formulate the questions presented to it to generate the best answer.
Now, let’s get on with understanding and shaping the User Experience!