The SOA design patterns catalog uses a simple notation to consistently represent different types of patterns.
When working with SOA design patterns, slightly different symbols are used to represent:
- a design pattern
- a compound design pattern
- a group of related design patterns
Additionally, colors are incorporated to indicate if a displayed design pattern is just being referenced and not actually discussed, versus one that is the current topic of discussion.
These symbols are used throughout the SOA Design Patterns book, especially in pattern relationship diagrams. On this Web site you will notice them primarily when compound patterns are discussed.
The aforementioned pattern symbols are used in the following three primary types of diagrams:
- proposed pattern application sequences
- pattern relationships
- compound pattern hierarchies
Let's take a closer look at each of these three primary diagram types:
Pattern Application Sequence Figures
When documenting recommended pattern application sequences, groups of related patterns and for individual patterns belonging to a particular group are displayed as follows:
These patterns are displayed in a recommended application sequence.
In this case, there are no firm requirements as to the order in which the three patterns on the right should be applied.
Pattern Relationship Figures
Each pattern is documented with a inter-pattern relationships diagram, as shown here:
A style convention applied to all pattern relationship diagrams is the use of color, as follows:
- Each pattern relationship diagram explores the relationships of one pattern. Therefore, that design pattern is highlighted in red, as per the previously established symbol notation.
- Pattern relationships are documented in a unidirectional manner. For relationships where the pattern currently being discussed affects or relates to other patterns, a red line is used along with an arrow pointing to the other pattern. When the relationship line documents how other patterns relate to the current pattern, the lines are green, and the arrows are reversed.
Note that directionality of relationships is preserved in different diagrams. For example, the green relationship line emitting from Service Normalization and pointing to Logic Centralization in the preceding figure would be reversed (and colored red) in the pattern relationship figure for the Service Normalization pattern. Note that pattern relationship diagrams are provided in the book only.
Compound Pattern Hierarchy Figure
Compound patterns are comprised of combinations of design patterns. When illustrating a compound pattern, a hierarchical representation is usually required, where the compound pattern name is displayed at the top, and the patterns that comprise the compound are shown underneath.
These types of diagrams can be considered simplified relationship figures in that they only identify which patterns belong to which compound, without getting into the details of how these patterns relate.