Reviewed by Gary Perlman, Ohio State University
ACM SIGCHI Bulletin, 26:4, 82-85, 1994.
Table of Contents
I have been teaching software engineers about user interface development for ten years, and during that time, I made the transition from using my own notes and readings, to assigning collections of readings, to wondering when there would be a textbook I could hand to students who knew nothing about HCI and related fields. Preece et al have done for HCI what Pressman and Sommerville did for software engineering in their widely used textbooks: they have digested the research and practice and presented the material in a pedagogically sound manner.
Although there have been fine books on
HCI theory (e.g.,
Card, Moran, & Newell's Human-Computer Interaction),
research (e.g.,
Baecker & Buxton's Readings in HCI),
and practice (e.g.,
Shneiderman's Designing the User Interface,
Hix & Hartson's Developing User Interfaces),
in my
opinion the Preece et al book is the first that fits the
billing of a good textbook for graduate and
undergraduate use
(Dix et al's Human-Computer Interaction
is a good general textbook, but it lacks
many pedagogical features that motivate and assist
students). Of course, being the first does not mean
that the book is without faults, and in this review I
will try to cover the good, the bad, and yes, the ugly.
But overall, I am very pleased with the book. A
student, even one with limited programming
experience, can sit down with the book and learn
about the field. Perhaps most importantly, the book
conveys the excitement of the authors (and so many
of us) for the field.
Evaluation as a Textbook
A review of a textbook is unlike a review of
books that attempt to advance theory or practice. In
a textbook, I look for:
I went through my own course notes to determine if the textbook covered all the topics I like to cover in my course on user interface development, and I was impressed that I could not find more than a handful of topics that are not covered. The depth of coverage varied between the two, but I was convinced that I could use Preece et al as a textbook for my course. I would have to rearrange my notes and syllabus, but I think it would be worth getting the benefits of having an organized textbook instead of a set of readings. I have a concern about how quickly some of the material in the textbook will become dated because hardware, software, and standards are always changing. I hope the authors are already planning the next edition. Incidentally, the authors exercised restraint in citing their own work, with at most four references per author.
I was disappointed that I could not find
anything about professional societies and their
activities. These are important for most students
who go into industry and need to keep up with
current developments, and such information is
crucial for future researchers.
Evaluation for Varied Audiences
An HCI textbook can try to address many
related audiences:
The authors explain how to map the textbook onto the four courses in the ACM SIGCHI Curricula for HCI produced by Hewett et al: two in computer science (CS1: UI Design and Development; CS2: Phenomena and Theories of HCI), one in psychology (PSY1: Psychology of HCI) and MIS (MIS1: Human Aspects of Information Systems). The Preece et al textbook should be excellent for CS1. The introduction of software engineering topics in the textbook also makes it attractive to other fields (e.g., psychology, human factors, industrial design / engineering) because it provides background needed for students in these fields to work with computer science graduates. The material is presented in a way that makes it accessible to students in almost any field. I think the textbook might be too light on theory for the CS2 course, but after Preece et al, students should be ready to tackle Card, Moran, and Newell's HCI. The textbook may be a little light on both theory and data for PSY1, but the textbook will still serve the needs of psychology students by introducing them to practical aspects of HCI (in any case, I can't think of a better textbook). I think that the textbook is appropriate for MIS1.
If a student used the textbook in a course, then I think they would use it later as a reference. I do not think that a programmer out in the trenches would pick it up and be able to make immediate use of it as a technical reference. A manager might find it useful as an introduction to the field and as a guide to what practices are becoming standard.
I was initially concerned about the book
being from the UK, and whether it would have
differences that would limit its effectiveness in the
US. I had previous experience using
Sommerville's Software Engineering
textbook with no problems
(although, I should point out that half of my software
engineering students are not from the US). For the
most part, I see no obstacles in the Preece et al
textbook to use in the US. I see one advantage,
which is to be able to point out the few differences
(e.g., spelling, and some terminology; quite in the
UK means very in the US, and this difference is
important when designing questionnaires) as a
means to introduce internationalization.
CONTENT OF THE BOOK
I am not going to spend much time
describing the content of the book because it would
amount to a description of the content of the field. I
like the organization of the material into the human
side of HCI (Part II) and the technology side (Part
III), and the breakdown of development into design
and analysis methods (Part IV), conceptual and
software Tools (Part V) and evaluation (Part VI).
Introduction
Part I. Introduction 1. What is HCI? 2. Components of HCI Interview with Terry WinogradIt's a good introduction that motivates learning more about HCI because the consequences of not learning more about HCI are suggested. The chapter on components conveys the importance of a myriad of factors, the contributions of a myriad of fields, and the role of HCI in software development lifecycles.
Part II. Humans and Technology: Humans Interview with Donald Norman 3. Cognitive Frameworks for HCI 4. Perception and Representation 5. Attention and Memory Constraints 6. Knowledge and Mental Models 7. Interface Metaphors and Conceptual Models 8. Learning in Context 9. Social Aspects 10. Organizational Aspects Interview with Marilyn ManteiIt's a human-information processing and social and organizational behavior book in a nutshell. If computer science students pick up half of it, they will be doing well. Despite the chapter titles, a lot of analysis and design material is embedded here because the authors demonstrate the application of ideas in allied fields to HCI design.
Part III. Humans and Technology: Technology Interview with Ben Shneiderman 11. Input 12. Output 13. Interaction Styles 14. Designing Window Systems 15. User Support and On-Line Information 16. Designing for Collaborative Work and Virtual Environments Interview with Roy KalawskyIt's got all the stuff we throw at users, with lots of good examples. Chapter 16 will frustrate students because they will want to try the really cool stuff.
Part IV. Interaction Design: Methods and Techniques Interview with Tom Moran 17. Principles of User-Centred Design 18. Methods for User-Centred Design 19. Requirements Gathering 20. Task Analysis 21. Structured HCI Design 22. Envisioning DesignIt's a software engineering analysis and design text in a nutshell. I was especially pleased to see material on usability requirements, and I hope my students make use of methods for envisioning design.
Part V. Interaction Design: Support for Designers Interview with Bill Verplank 23. Supporting Design 24. Guidelines: Principles and Rules 25. Standards and Metrics 26. Design Rationale 27. Prototyping 28. Software Support Interview with Deborah HixIts got the best advice I have seen about how to organize design activities. The material on guidelines, principles, rules and standards was light, and I thought the material on metrics belonged with evaluation, but the main points are covered. The material on design rationale is novel and should point out many issues of design to students. The material on prototyping and software support covers all the main points, but seemed biased toward a research lineage of UNIX and Xerox-Mac-NeXT platforms, but not MS Windows (I saw no mention of Visual Basic, for example).
Part VI. Interaction Design: Evaluation Interview with Brian Shackel 29. The Role of Evaluation 30. Usage Data: Observations, Monitoring, Users' Opinions 31. Experiments and Benchmarking 32. Interpretive Evaluation 33. Predictive Evaluation 34. Comparing MethodsIt's all there, but the names the authors chose for chapters were new to me, and while it may represent a more effective way of presenting the material, I found that I could not predict where some topics would be covered. The first and last chapters do a good job of introducing a rational view of evaluation and of choosing among methods.
I was impressed by the utility of the tables
as a reference source, and I found myself inserting
Post-It notes at some for future use. For use in
lectures, I hope the instructor's guide will include
tables and figures in electronic form.
Glossary
The glossary at the end of the book contains
brief definitions of hundreds of terms, so it is one of
the most comprehensive I have seen. It is weak on
acronyms, however.
Author/Subject Index
The combined author/subject index is barely
adequate. It has a good feature: emboldening pages
where terms are defined, as well as a pointer to the
glossary entry. Multiple entry points for multi-word
terms did not seem to be well supported. Authors of
suggested readings were not included, nor were all
system names and many key words. These limitations
make the book less useful as a reference text.
References
The references in an introductory textbook
are usually not designed to be comprehensive, so
many famous papers are not mentioned. It is far
more likely that students will follow up with the
suggested readings than track down a specific
reference, so I don't view this as a drawback. Some
of the suggested readings were not represented in the
comprehensive reference section, which could
frustrate some readers.
CONCLUSION
The more I read the textbook, the more I liked it. It's
about time we had a good general textbook for HCI
and Preece et al have done a great service to the
field. I think the book will be exciting to students in
several fields, and I am hopeful that the textbook, as
much as any other HCI education initiative, will
promote HCI education.
REFERENCES