Context:
A group of people has been attempting to accomplish some task as effectively and efficiently as possible. To do this, they naturally have developed various individual habits, social conventions, and have adopted certain technologies. Now, change in one or more of these aspects of their work is needed. This can be due to a change in the nature of the problem, the nature of the context in which they are working, learning, or the invention of new technological support. A plan is being developed to manage change.

Problem:
How can people re-organize their work to reflect the new situation while at the same time retaining progress that has been made, keeping what still works and avoiding the case where people resist change? How can one minimize the gap between the perceived up-front costs of making a change versus the obvious and continued benefits of continuing to do things the “old way”?

Forces:
· People have a drive to learn and practice new skills.
· People have a drive to acquire new experiences.
· People have a drive to defend against change that is too sudden, radical, or where the consequences are perceived to be too negative or too uncertain.
· The costs of change tend to be more front-loaded than the benefits.
· People tend to be driven by short-term, rather than long-term analysis of costs and benefits.

Solution:
Design systems, in so far as possible, to provide incremental value. There are two slight variants of this in systems used by multiple people. First, the system should be designed so that there are benefits as each additional person begins to use the system. Second, for each individual, every incremental increase in behavior should be associated with an incremental increase in benefits.

Examples:
A calendar system should be designed so that there are benefits, even if only one person uses it. If the benefits only occur when everyone in a workgroup uses the system, it will be much less likely to be adopted. We claim that a “Pattern Language” is a good example of a system that provides incremental value. Although a complete pattern language provides additional value, every single additional pattern provides some additional value.

To gain market share in a new field, it is often more important to provide a product with some minimal functionality quickly and later add more features and associated benefits than to wait until all functionality can be incorporated before coming to market.

Back to Pattern Language

Back to Welcome Page