Pattern
Define a reusable solution structure for recurring problems
Definition
A Pattern documents a proven solution to a recurring problem in context. Patterns are standalone knowledge artifacts that can be referenced by entities. Structure follows POSA Vol 1 thirteen-section template: - 6 required sections: name (inherited), example, context, problem, solution, consequences - 7 optional sections: also_known_as, structure, dynamics, implementation, example_resolved, variants, known_uses, see_also - 2 structured sections: participants (GoF named roles), collaborations Patterns are classified on two axes: - Level: architectural > design > idiom (POSA three-level classification) - Category: creational, structural, behavioral, integration, concurrency, other Pattern relationships follow Noble/Zimmer vocabulary: - uses: X incorporates Y as part of its solution - refines: X is a specialization of Y - conflicts: X and Y are mutually exclusive solutions to the same problem
Standards
- Pattern-Oriented Software Architecture (POSA)
- Noble/Zimmer Pattern Relationships
- OMG SPMS 1.2 — PatternDefinition/Role/Binding
Knowledge References
- modeling-standard standard
- iso-12207 standard
Schema Preview (17 fields)
- also_known_as list — Alternative names for this pattern
- example string — Real-world example demonstrating the existence of the problem and the need for the pattern
- context string — Situations in which the pattern may apply