Designing Solution Architecture with Patterns

This section moves from selecting individual patterns to designing and implementing your system with the guidance of patterns. Patterns complement existing design methods by identifying solutions to individual problems. They don't replace other design methods.

Individual patterns provide the building blocks, like self-contained objects or subroutines. Some of these building blocks are so big that they structure the entire solution. Within many patterns, you'll see a section of implementation guidance, which lays out the steps you should follow to implement that pattern. The software design methods in Chapter 3 provide only general guidance for designing your system.

Sometimes, the implementation steps in a pattern mention another pattern that you should use to help build up the solution. In this case, pause the implementation of the first pattern, and proceed to implement the referenced pattern (as shown in Figure 8-3). Sometimes the first pattern will give you guidance for when you should implement the referenced pattern.

images

Here's a pragmatic approach to creating software architecture and design with patterns:

  1. Pick a software development method.

    This is an important choice, which guides your approach to the overall design process. Any method can work, such as the Unified method or some agile method. The goal is to have some rigor to ...

Get Pattern-Oriented Software Architecture For Dummies now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.