Book Reviews: Recent GUI Design Books

 

by Rob Houser

The Essential guide to User Interface Design: An Introduction to GUI Design Principles and Techniques
Wilbert O. Galitz. 1997. New York, NY: John Wiley & Sons. [ISBN 0-471-15755-4. 626 pages, including index.

The GUI Design Handbook
Susan Fowler. 1998. New York, NY: McGraw-Hill. [ISBN 0-07-059274-8. 318 pages, including index.

GUI Design Essentials for Windows 95, Windows 3.1, World Wide Web
Susan Weinschenk, Pamela Jamar, and Sarah C. Yeo. 1997. New York, NY: John Wiley & Sons. 345 pages, including index and appendixes.

User interface design has become a hot topic among technical communicators as we continue to get involved earlier in the software development process. Our profession is moving beyond apologizing for the shortcomings of the user interfaces through documentation to helping fix the problems at the source.

This review covers three books that can help you gain a knowledge of GUI design guidelines, the usability principles that support them, and a process that uses usability testing to make user-centered design decisions. The discussion of each book concludes with summary observations.

I've used Wilbert O. Galitz's The essential guide to user interface design for almost a year and have found it to be, indeed, essential. I use the book mostly for reference, although I sometimes choose random pages to teach myself something new. Its layout, organization, and printing are superb.

The book says it is organized around the GUI screen design process. It does start out that way, with Step 1 ("Know your user or client") and Step 2 ("Understand the business function"). But Steps 3 ("Understand the principles of good screen design") through 11 ("Provide effective messages, feedback, guidance, and language translation") are not really steps in a process. They are more properly high-level areas or components of the user interface. Fortunately, this is not a serious problem with the book. In fact, the lack of linearity of the book is one of its greatest strengths.

You can navigate through this book with ease and quickly access the information you need. The guidelines are summarized as bulleted lists and more detailed explanations follow the lists. The examples focus on conveying the design principle rather than attempting to illustrate each operating system's implementation of the principle. The graphics are mostly Windows 3.1. Of course, it would be nice if they were more current. Still, when differences in operating systems exist, the author points them out. I've used the book for Windows 95 GUI design and have not had any problems applying the principles to my situation.

Galitz intersperses guidelines, research, and examples throughout each chapter. I've loaned the book to several developers and they always seem to respond well to it. They like the guidelines because they are definitive and are supported by research. On one project, our team agreed that the Galitz book would be the final arbitrator on issues for which we could not afford usability testing to make the final determination.

I usually would not recommend one book to beginners, intermediate user interface designers, and experts; however, this book is an essential desk reference. Beginners will find multiple layers of information that allow them to get a simple answer or a more descriptive explanation of the guideline. The intermediate user will find the references a great place to jump into more user interface literature. And, even the most knowledgeable human factors expert will find the thoroughness of the book useful on a daily basis.

Susan Fowler's GUI design handbook is organized like a dictionary around the user interface components. The first entry is Check Box and the last one is Wizard. The book was designed so the reader could get quick answers to design questions about specific interface components, which it does very well. The main requirement is that you have to have some idea of what the component is called to find the information you need. Once you locate the component in question, you are presented with a consistent organizational structure: Definition, Good For, Design Guidelines, Usability Tests, and See Also.

The Good For section tells you when to use the interface component. The impressive part of this section is the "Not Good For" information, which points out when not to use the component. I like the way the author anticipates the readers' questions in subtle ways like this throughout the book.

I was also impressed with the "Usability Tests" section at the end of each component section. This section points out potential problem areas and suggests types of tests to use. Appendix B explains at a high level the types of tests mentioned in the book. Discussing usability testing in the context of choosing an interface component is a great user-centered approach. I would have liked to see even more information under these sections. The assumed knowledge of the development process and of usability testing is the main reason I recommend this book for intermediate user interface designers.

Fowler includes guidelines for Windows 3.x, Windows 95, OSF Motif, and OS/2.

GUI design essentials, by Susan Weinschenk, Pamela Jamar, and Sarah C. Yeo, is really two books: Part 1 defines a user-centered process for GUI design and Part 2 lists guidelines for user interfaces, including the web.

I believe Part 1 is the stronger book, especially for those unfamiliar with a formal design process. As an introduction to user interface design, it provides a straightforward, user-centered process that would be helpful for developing documentation, applications, or user interfaces. The authors even supply in the appendix sample forms that can be used during the development process. Expanding Part 1 into a more detailed book would create an incredible textbook for developers and technical communicators who are new to a user-centered design process.

Part 2 of the book is more problematic because it tries to do so much. It is not very accessible or easy to navigate. The guidelines are grouped under sub-headings, but the higher level chapters employ an abstract organization of the guidelines (Designing for People, Structure, Interaction, Presentation, Internet and Intranet). I wondered why the guidelines for the web weren't under the more general headings like Structure and Interaction. From a readability standpoint, I had a hard time reading the guidelines because of the large font size and the unusual headings that dominated the page. The biggest problem for Part 2 is that the guidelines do not say as much as most beginner or intermediate user interface designers need, and they do not reference the research (principles) on which they are based, which an expert might desire.

The book comes with a CD that includes the guidelines in PDF and DOC formats, so you can view the guidelines online or modify to the guidelines as necessary. This is a good approach to GUI designs (as well as style guides) because all departments and companies have their exceptions to the rule or unusual areas for new guidelines.

The guidelines and examples in this book cover Windows 3.x, Windows 95, OS/2, and HTML.

If we are going to continue expanding our role by participating on design teams, we must be prepared with a solid knowledge of the guidelines for user interface design and the principles on which we base our design decisions. We must also keep our design decisions based on usability testing, not personal preference. These three books are a great way to start building your knowledge base about GUI design.