Navigation:  Appendix B: Dolphin Pattern Book > Software Patterns >

The Pattern Sheet

Previous pageReturn to chapter overviewNext page

The Pattern form was perhaps first introduced by Christopher Alexander in his books, a Timeless Way of Building and A Pattern Language. He states, "Each pattern describes a problem which occurs over and over again in our environment, and then describes the core of the solution to that problem, in such a way that you can use this solution a million times over, without ever doing it the same way twice". Although Alexander's patterns were directed to solving architectural problems his notion still holds well for software.

For clarity, each Pattern Sheet has the same format. First, there is a paragraph that describes the context in which the pattern should be used. This often presents links to higher level patterns but eventually ends in a statement of the Problem that the pattern aims to solve. Following the problem description is a section that describes a potential Solution. There maybe a number of forces, both good and bad, that act upon the solution and govern its applicability, and these are discussed in a section entitled Consequences. In most cases, following this, there will appear one or more Examples of the pattern in use. If there are places in the standard image that make use of the pattern then these are documented as Known Uses. Within the pattern body there may be links to other lower level patterns which may be needed to complete the solution, to fill out its details. At the end of a sheet there is usually a Related Patterns section, a number of cross references to other patterns that are related to the current pattern in some way.

From this, you can see that no pattern stands alone but each is part of a hierarchy with larger patterns above it and smaller, more detailed, patterns below it.