Looking for patternsThursday, July 16th, 2009 by Gene Golovchinsky
Thanks to Nathan Treloar’s post on search user experience, I came across a set of Flickr pages created by Peter Morville dedicated to documenting user interface designs for search interfaces. His goal is “collecting search examples, patterns, and anti-patterns” to inform subsequent design. The pages collect many images of well-designed sites, grouped into about 20 different categories (e.g., Faceted Navigation, Pagination, Clustering, E-Commerce, etc.) with annotations by Peter highlighting some important aspects of each design.
The endeavor is inspired by Christopher Alexander’s seminal books “The Timeless Way of Building” and “A Pattern Language.” Alexander’s approach to design has been echoed in other pattern language books, including software, CSCW, HCI, etc. You could say that a pattern has been established.
In his slides, Peter Morville describes several search-related patterns (best bets, faceted navigation, federated search, etc.) but most of these patterns aren’t focused on interfaces but rather on the underlying architecture. While I found the collection of search interface screenshots described in the slides and enumerated in Flickr interesting, it was hard to generalize from the examples to identify good design principles or best practices for interaction design. Perhaps deeper immersion would produce more insight, but I was hoping for a less steep learning curve.
One complementary approach that came to mind was T.R.G. Green’s theory of Cognitive Dimensions. This is a theory for analyzing information artifacts, and can be applied in a summative or formative manner. The goal of cognitive dimensions analysis is to identify essential qualities of interaction without getting bogged down in the details of a particular design. The theory consists of several dimensions, each of which can be though of a pattern.
Although Green identifies a large number of dimensions, some are clearly more useful for our purposes than others. (See this tutorial for some examples.) The analysis is performed by assessing a design (either existing or proposed) with respect to each dimension with the goal of determining how effective the interface is, or what sorts of problems may be expected. In the following, I will discuss a few dimensions and how they may be applied to information seeking interfaces.
Hidden dependencies. This dimension assesses the presence of hidden links among components of the system whose existence may be hard for users to learn. If these links impact people understanding of important system functions, the design should be rated unfavorably on this dimension. Mutually-exclusive search modes that are not reflected in the interface are one example of hidden dependencies.
Premature commitment. This dimension reflects the sequence of steps that a user must perform to achieve a specific outcome. If the user must make a decision early on in some interaction without necessarily having all information to understand the choice, we classify that as premature commitment. For example, being required to provide personally-identifying information prior to being able to interact with a system even in a light-weight manner is an example of premature commitment. So is forcing a user to click on a link in a search result to see some critical piece of information such as the price or an abstract.
Viscosity. Viscosity assesses a design’s resistance to change. If, for example, an interface requires the searcher to go through a series of menus or dialog boxes to switch between author search and content search, we say that the design has high viscosity. It is particularly unfortunate if high viscosity is coupled with premature commitment: the user is required to make choices without fully understanding the consequences, and it is the difficult to undo these actions once additional information is learned.
Visibility. Visibility reflects how easy it is to view the various aspects of the system. It is related to the notion of affordance. A deep menu system may exhibit poor visibility.
Consistency. This is an obvious measure of the degree of similarity of means of accomplishing similar goals in different parts of the interface.
Hard mental operations. Operations that rely on a user’s concentrated attention may pose usability problems, particularly when a user may not have the right background knowledge to perform the operation, or may be operating with divided attention. Boolean query interfaces (notorious for being error prone for a variety of reasons) are a good example of hard mental operations.
Role-expressiveness. This dimension reflects how well the various visual components of an interface reflect their purpose and the operations available on them. Can the user find the search box? Is it obvious how to compare documents?
Progressive evaluation. How easy is it for people to assess what they’ve discovered, how much progress they’ve made toward their goal? This dimension becomes particularly important for exploratory search.
The goal of a pattern language is to identify design choices that can be adapted to a variety of contexts while preserving the essence of the pattern. T.R.G. Green’s Cognitive Dimensions Theory offers an interesting and powerful toolbox that can be used to characterize and reason about search interfaces without descending into the minutia of particular designs.