Pattern Name*** (with confidence level)
Aliases: if any …
Context in which we find the problem
The context is often described via a “situation” rather than stated explicitly. Sometimes, the context is described in terms of the patterns that have already been applied.
???
Forces or trade-offs behind the pattern
The often contradictory considerations that must be taken into account when choosing a solution to a problem. The relative importance of the forces (those that need to be optimized at the expense of others) is implied by the context.
This section outlines the various factors that affect the problem (circumstances), and the tradeoffs between them that complicate and constrain the solution. Pattern writers refer to these tradeoffs as “forces” because they will push or pull you in different and sometimes competing directions as you attempt to solve a problem. The relative importance of the forces (those that need to be optimized at the expense of others) is determined by the context.
A headline in bold type that gives the essence of the specific problem in 1-2 sentences
Use Context-Free Problem to ensure that the problem is kept separate from the constraints on the solution.
The body: background, motivation, variations
Therefore:
The proposed solution in bold type
A diagram that shows the solution as a labeled picture
???
Discuss why the pattern works: how it balances the forces, what the strengths and liabilities of the pattern might be, and so on.
Note that many problems may have more than one solution, and the “goodness” of a solution to a problem is affected by the context in which the problem occurs. Each solution takes certain forces into account. It resolves some forces at the expense of others. It may even totally ignore some forces. The most appropriate solution to a problem in a is the one that best resolves the highest priority forces as determined by the particular context. Use Solution
Clearly Related to Forces to ensure that the reader understands why this solution was chosen.
Related patterns:
Principles involved:
Sample situations: