I like design patterns. I like the idea that there are right ways to do things and wrong ways (anti-patterns). Of course I understand that the world is not so black and white, but collecting and cataloging the collected wisdom of what works and what doesn’t when designing software systems seems like a very good idea to me.

I’ve written about this before.  A couple of months ago, I blogged about the increased interest in HCIR and best practice patterns for search user experience (UX). In that post I wrote:

Having a set of discrete and generic (UX) patterns is helpful, but even better will be having best practice patterns that are oriented toward specific business processes where search is used. Understanding these meta patterns in enterprise search is especially important in order to understand user experience differences between search for Research, search for eCommerce, search for Customer Service, search for eDiscovery, etc... Some of these differences are in the search features themselves, others are in how search interfaces with other non-search features and workflow (e.g. shopping carts in eCommerce or communication tools for collaborative research).

I’ve bolded one of the sentences in the excerpt above because it is a lead-in to the topic of this post.  

Most work on design patterns for search has focused on techniques for how people search, or methods for improving findability. This is important and relevant work, but is missing, imo, the higher order patterns that help us evaluate these applications in the context of why people search, not just how. More to the point, the question I’m looking to answer is whether there is a simple model we can use to test if an application of search is likely to be successful or not – that is, whether it will optimally help the user accomplish his or her task.

Enter “virtuous cycles”.

Virtuous Cycles Defined

I first heard the phrase virtuous cycles used in the context of information systems from Chris Pratley, General Manager of Microsoft Office Labs. The idea Chris has promoted is that users work with information within a “virtuous cycle” of Consumption, Creation, and Connection (see diagram below) and that designing for virtuous cycles is a key to the adoption and success of information systems.

Virtuous Cycle for Information Systems 

Virtuous Cycle for Information Systems

I liked this model from the moment I first saw it. Not just because it’s simple and memorable, unlike other general “process models” I’ve seen, but because it’s actually useful.  In contrast, I remember the various cycles for “knowledge management” that were the rage 10 years ago. I’ve personally never felt that those diagrams were useful to anyone but the KM consultants who developed them.

The idea of a virtuous cycle for information systems is that an application is more likely to be used and successful if it helps a user to easily go from 1) consuming information to 2) creating new information from what they consume to 3) connecting this information with other users. Importantly, mechanisms for these steps to repeat indefinitely help to ensure that the application continues to get used. This reinforcement is what makes a virtuous cycle.

Why is the virtuous cycle model useful?

It’s useful because, with it, an application can at least be subjectively tested for whether it includes unwanted obstacles to any of the steps in the cycle. These obstacles are what prevent the user from easily completing his or her task, and if you know what the obstacles are you can fix them. The virtuous cycle idea gives you a model to help you recognize them.

Search and Virtuous Cycles

Since this is a search blog, I have to connect this idea of virtuous cycles to search.  I could argue that I already made this connection, at least partially, in a previous post about Actionable Search a few months ago. The point I made then was that people don’t search for the sake of searching; they search to accomplish a task or to achieve an outcome of some sort.

The Bing guys get this. Bing has been optimized to support common user tasks on the Web, with the initial release focused on eCommerce transactions (e.g. searching for digital cameras). Bing knows that when people shop online, they want to do more than just read through a list of blue links pointing to product pages. Part of the retail experience online includes product and price comparisons, inspecting (visualizing) the product, adding desired products to a shopping cart, and making a purchase.

Some of these things are part of the Bing experience, but there are limits to how far Bing, as a general Web search engine, can go. You can’t within Bing itself, for example, add products to a shopping cart, complete a product purchase transaction, or email what you find directly to a friend. Rather, that’s done at the individual eTail shopping sites that Bing makes searchable or using browser features*.

The applicability of virtuous cycles is much more obvious when viewed in the context of focused enterprise search applications. Research, in particular, is a general application that is ripe for virtuous cycles.  

*Many of the “actions” you might take on an item found in a Bing search can be handled directly or indirectly by the browser and do not necessarily need to be in the Bing application itself. For example, all major browsers support the notion of quickly emailing a link to a friend or group, so the “Connect” step is represented there.  IE 8 goes even further by supporting “Accelerators” – custom actions that can be applied to any text snippet on a Web page. For example, an accelerator exists for directly sharing information on a Web page to Facebook.

Example: Virtuous Cycle for Research

Research is a general workflow that maps very neatly to the Consume, Create, and Connect steps of the virtuous cycle model. It is also an example of a general process that clearly includes search, but that also includes more than just the steps of search and retrieval. Just finding something during research is not the end game.

Some of us remember the note cards we were told to use in school when we did research reports. The idea then was to write down on the cards any facts you found during your research, along with information about the source of each fact. Once collected, you would then synthesize the facts into a report. The technology may have changed, but the process hasn’t.  The sequence of general steps in research still goes something like this:

-          Search for and consume information about your research topic

-          Gather and synthesize the facts, include some of your own interpretation, and create a report of your findings

-          Publish, share, communicate, or otherwise connect your report with other people or content

The virtuousness of the cycle comes when your report, and the information and facts it contains, becomes something that you and others can use (consume) later to create new reports, insights, and knowledge - thereby starting the cycle over again. Wash, rinse, and repeat.

When Chris P talked about the virtuous cycle model for information systems, he referenced search as a step in the Consumption stage, but I’ll go further and say that search, or more generally, search-related technologies are enablers of each step in a virtuous cycle and that designing search with the entire cycle in mind is a generalized way of designing for search success.  For research, this means that search and related capabilities are relevant to helping find information (information retrieval) and discover, collect, and synthesize facts (text mining or information discovery). Search capabilities can even help communicate a report by identifying potentially interested colleagues (collaborative filtering and recommendation systems).

Connecting with the Microsoft Enterprise Search Vision

By now it should be clear that the “virtuous cycle” model involves capabilities that can include not just search but content authoring and management, collaboration, business intelligence, and many other IT disciplines. The Microsoft vision for enterprise search is for capabilities that are pervasive, intrinsic to, and supportive of every business process. This vision, combined with the virtuous cycle model, calls for both getting search right and for getting the integration points between search and other capabilities, like content management, right. This perspective is shaping Microsoft’s enterprise search roadmap for both “productivity” applications like Research in its various forms, as well as customer facing applications like online retail and customer service.  The advantage that Microsoft has over other enterprise search providers in pursuing this vision is a complete “stack” of the capabilities that address each major step in the virtuous cycle model.

You can test the virtuous cycle idea yourself. In your enterprise search application (or any search application), what capabilities, search or other, are there to help the user through a virtuous cycle of information consumption, creation, and connection? What discrete capabilities are missing that you wish you had?

Nate