Looking for patterns


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.

Share on: 


  1. Gene, this is an interesting post … I believe the dimensions that you discuss can also be used as criteria to evaluate Search User Interfaces. The problem would be developing metrics for them. However, we might associate some of these with other metrics, such as associating hard mental operations with mental workload. Consistency could be measure of time taken and success at performing the same task at different parts of the interface (probably with different queries), Viscosity could compare the number of clicks to achieve one type of search versus another, and so on. These are simpler version of what might actually be computed, but we could think along these lines. Here is a related paper about measuring quality in digital libraries:
    Gonçalves, M. A., Moreira, B. L., Fox, E. A., and Watson, L. T. 2007. “What is a good digital library?” – A quality model for digital libraries. Inf. Process. Manage. 43, 5 (Sep. 2007), 1416-1437. DOI= http://dx.doi.org/10.1016/j.ipm.2006.11.010

  2. Uma, this approach is intended as a light-weight usability analysis tool, something to identify potential problems. Think of it as a language with which to talk about usability. Once you’ve identified potential problems, then as you suggest, all sorts of metrics can be applied to quantify the issues. In real-world settings when you don’t have time to do a full evaluation, having a quick analysis up front may be effective for focusing your more in-depth (i.e., expensive) evaluation.

  3. Great post! I’ve been a fan of Peter Morville’s work for a while; I cite his patterns in my book, and he was nice enough to write a blurb for me. But I hadn’t been aware of Christopher Alexander or T. R. G. Green. I like Green’s framework. Is it widely used by usability researchers?

  4. Green’s framework is used in some circles, but it hasn’t gotten the attention it deserves, probably because its authors have not been too proactive in promoting it. I think it’s a great tool for structuring analysis of interfaces.

  5. […] advanced search was still segregated from the search results. This is unfortunate because from a Cognitive Dimensions perspective it makes the interface more viscous (forcing the user to switch back and forth) at same […]

  6. […] adjust the range of the proximity operator to see its effect on search results in real-time. In cognitive dimensions terms, this ability to manipulate thresholds and other constraints dynamically makes the interfaces less […]

  7. […] topics, some of which he covers in his books Search Patterns and Ambient Findability. I wrote about some of his ideas earlier, but am curious to hear how he is presenting his […]

Comments are closed.