UI logo
The Webzine for Interaction Designers
uidesign.net
 
     
Book reviews
Dec 99
Flick through Reviews
Developing User Interfaces for Microsoft Windows
Everett McKay
by Everett N. McKay, Microsoft Press, 1999
ISBN 0-7356-0586-6
The Visible, the invisible and the Unnecessary Evil!

I am reviewing this book at the behest of Everett McKay. It is a very good book and one which deserves some time or I wouldn't have bothered. The book for this review was supplied by Microsoft.

This is likely to be the last book review for some time which deals with GUI Environment issues. Unless something dramatic happens with custom XML DTD browsers , next year's book reviews are likely to focus on Web Browsing and Wireless or Handheld Devices.

As the 90s draw to a close, I no longer have time to read a 600 page tomb on GUI design for Windows. Looking back over the last 10 years there are few highlights in the Windows User Interface publishing archives. Perhaps it was to right a previous wrong that Microsoft sponsored the author, Everett McKay to create this latest offering.

Developing User Interfaces for Microsoft Windows

Everett N. McKay, Microsoft Press, 1999

Initial Impressions

Its a thick book. There isn't much about the Windows APIs. MFC API calls are not much in evidence. However, a scan through the CD Rom will show you that there is sample MFC code, a DLL with an extended set of components. So there is something for the programmer. In general though its a book which assumes the reader knows how to program Windows GUI or will have an expert do it for them.

The other first impression is the quality and depth of the knowledge on Interaction, Navigation, Human Interface and Usability. The author is very well read and the book is filled with content taken from many recent authors working in the field as well as copious references to other material. It is also obvious that this is a book which is operating at a higher level than many Windows GUI books which have gone before it. In many ways, it is also better than many recent books on Swing, in this regard.

This is a book about Interaction Design for GUI and how to use it to improve the User Experience with GUI Application software. It holds the usual West Coast bias to shrink wrapped applications but that isn't necessarily bad. It starts with a review of the state-of-the-art and several book reviews from the recent past. It introduced me to at least one author I didn't know but should have done. It then moves on to talk about Style Guides. By the end of Chapter 4 much of what is covered in earlier Windows GUI books is over and done with. Now onto the interesting stuff.

Users

Two chapters are dedicated to the discussion of User skill level. The first looks at Windows widgets and the degree of complexity each poses for the User. The second chapter looks at issues regarding Applications versus say a suite of separate utilities. Chapter 8 moves on to look at understanding the User, defining User types and targeting the design at the user. This is one of the few books on UI where the author seems to have a grasp of marketing. So often overlooked. We are introduced to new terms Marketing Centered Design and Vision Centered Design. Chapter 9 introduces User Goals. One of several chapters which show the author is a fan of Alan Cooper.

Design Concepts

The section on design starts to bring out McKay's own work and opinions. Good interfaces are visible! Hmmm. Others have sought to make them invisible. However, he goes on to qualify what he means and tries to introduce some science to the measure of "intuitive" interface. He then starts to walk us through components showing how Windows widgets can be used or improved to make the interface more intuitive. This is important work and has validity for Swing developers too. As the techniques presented are easy to do with Swing too. Things such as checkboxes embedded into lists rather than using a multi-selection list. The latter is less intuitive as it requires more advanced knowledge of the GUI standard being used. Really nice stuff this! Rather cheekily McKay's next Chapter is all about Good interfaces are invisible. Ah ha! You will have read a lot of this before from Cooper or Tog but if you haven't then this is a very adequate treatment on when its not appropriate to stick a Dialog into the User's face.

Chapter 12 is intriguingly titled, "Learn from the Design of Everyday Things". Here we are walked through the lessons from Don Norman's classic book. Again some this has been seen in other places e.g. Theo Mandel's, Elements of User Interface Design or Laura Arlov's GUI Design for Dummies but this was a really explicit attempt to demonstrate that Don Norman had more to offer than aligning his light switches intuitively. I also like the all too brief review of the different iterations of the Windows GUI and how they measure up.

The book gets right up to date in Chapter 13 with "Learn from the Web". McKay looks at how restrictions in HTML caused innovation in UI Design. Things like single window, no MDI, no Dialog boxes, Single Click interface, Simplified Navigation. The one I felt that he missed was flatter look and feel. Reflecting a slight weakness in the book overall - visual communication. It is so strong in other areas that this is a minor criticism.

Chapter 14 looks at Prototyping. It points out a few of the pitfalls of high fidelity prototypes and introduces the notion of Prototyping by example. This technique is very similar to my own UI Modeling approach and McKay introduces the notion of re-use of patterns of Navigation and Interaction at least in an informal manner.

The Design section concludes with a chapter entitled "Keep it simple" which is actually a passable Widget Usage Guidelines piece.

Getting Detailed

There follows 9 chapters on detailed design topics looking at standard vs. custom controls, direct manipulation, default settings and when they are appropriate, configurability and when its appropriate, previews, tooltips and then a section on modality such as Dialog boxes and Repetitive Tasks. I particularly liked the techniques for eliminating dialog boxes using browser style navigation layouts. McKay has documented some stuff which I intended to present as patterns white papers. He finishes up with a whole chapter on why Speed is important. So true.

Testing and Quality

12 short Chapters packed with heuristics about finding fault with your design and implementation and how to learn from your mistakes. Refactoring is really trendy with the software developers these days. Learn to refactor your UI with this advice. This is not a particularly formal approach to Usability or any attempt at a Quality Process or formal methodology. This section like the rest of the book is firmly rooted in pragmatism. In many ways, it reminds me of Laura Arlov's GUI Design for Dummies which it references extensively.

Summary

Everett McKay has written a good book which is a considerable improvement on other Windows specific books which have gone before. It sits at a much higher level of UI Design and seeks to develop methods and techniques in improving User Experience, general Navigation and Interaction Design. Despite its Microsoft patronage, this is a book which has value to add to the design of any GUI applications and those seeking a general book on improved Interaction Design for Swing or Mac or Linux / X-Windows applications could do a lot worse than read this book.

The cover is misleading and the title is a misnomer. The book isn't about Development, its about Design. It isn't about User Interface so much, but, User Interaction instead! Finally, its not much about Microsoft Windows either. You might have expected Microsoft to release a clutch of books heralding the next generation Windows 2000. Well this certainly isn't one of them.

It sits in the gap between methodology books such as Deborah Mayhew's, Usability Engineering Lifecycle and style guide books such as Galitz, The Essential Guide to User Interface Design.

McKay is evidently an experienced, well read and thoughtful author. This thick book must have taken a great deal of effort. It represents best of breed techniques for much of what is known and understood. It hints at some newer areas of research such as patterns for prototypes. It will teach you what should be visible, how to make the rest invisible and how to prevent add the unnecessary evil. Windows needed this book 5 years ago! Perhaps even earlier in order that the developers had time to read it. I wonder if its been required reading at Microsoft this past few months?

Recommendation

5/5 - A really good teaching book for GUI Interaction Design. Fills a gap between grandiose methodology books and lower level style guides. Such a pity that it comes so late. Microsoft finally shutting the stable door, after the application horse has bolted!

BUY IT from Amazon...

uidesign.net
hosted by likk.net
           
 
Copyright uidesign.net, 1999 - 2003.
The UI logo device and uidesign.net wordmark are trademarks of uidesign.net