Pattern-Oriented Software Architecture, A System of Patterns
by Frank Buschmann, Regine Meunier, Hans Rohnert, Peter Sommerlad, Michael Stal
Chapter 5Pattern Systems
No pattern is an island.
Richard Helm, personal communication
A pattern system ties individual patterns together. It describes how its constituent patterns are connected with other patterns in the system, how these patterns can be implemented, and how software development with patterns is supported. A pattern system is a powerful vehicle for expressing and constructing software architectures.
In this chapter we specify a pattern system that includes the patterns we describe in this book, and that is open for the integration of other patterns, for example those from [GHJV95], [PLoP94] and [PLoP95], as well as your own patterns.
5.1 What is a Pattern System?
Patterns do not exist in isolation—there are many interdependencies between them. A plain catalog-like list of all patterns, however, does not reflect these manifold relationships. Instead, patterns should be interwoven in pattern systems.
A pattern system ties its constituent patterns together. It describes how the patterns are connected and how they complement each other. A pattern system also supports the effective use of patterns in software development.
Christopher Alexander uses the term ‘language’ instead of ‘system’ to describe the same concept [Ale79] p. 185:
The elements [of a pattern language] are patterns. There is a structure on the patterns, which describes how each pattern is itself a pattern of other smaller patterns. And there are also rules, embedded in the patterns, which describe ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access