Pattern Clusters

Charting the relationships between patterns helps you navigate from one pattern to a set of related patterns. However, it does not yet tell you where to start. If you are building a Web application, should you read the Model-View-Controller pattern first or should you look at Page Cache instead? Should you look at a Broker as well?

Pattern clusters are groupings of patterns that relate to a specific subject area. For example, you can start with the Web Presentation cluster to find the patterns that are relevant to creating the front end of a Web application. Likewise, the Distributed Systems cluster contains patterns that are helpful in communicating with remote objects. Dividing the collection of patterns into clusters enables you to examine a group of patterns together. Although the pattern graph shows that two patterns are related, the cluster overview describes, in much more detail, how to combine the patterns to build actual solutions. Each cluster takes the reader on a guided tour through all the patterns within the cluster. Taking some inspiration from Christopher Alexander’s world of town and building architecture, you can draw an analogy between a cluster and a city neighborhood. To stretch this analogy a little bit further, you can consider the cluster overview a neighborhood tour offered by the local tourism office.

click to expand
Figure 2.3: Pattern clusters

This initial release of Enterprise Solution Patterns Using Microsoft .NET (ESP) identifies the five clusters shown in Table 2.1.

Table 2.1: Enterprise Solution Patterns Clusters



Web Presentation

How do you create dynamic Web applications?


How do you divide an application into layers and then deploy them onto a multi-tiered hardware infrastructure?

Distributed Systems

How do you communicate with objects that reside in different processes or different computers?

Performance and Reliability

How do you create a systems infrastructure that can meet critical operational requirements?


How do you access services provided by other applications? How do you expose your application functionality as services to other applications?

Chapters 3 through 7 describe these clusters in detail.

Enterprise Solution Patterns Using Microsoft. NET 2003
Enterprise Solution Patterns Using Microsoft. NET 2003
Year: 2004
Pages: 107 © 2008-2017.
If you may any questions please contact us: