Chapter 10. Architectural Patterns for Software Product Lines

In software design, one frequently encounters a problem that one has solved before on a different project. Often the context of the problem is different; it might be a different application, a different platform, or a different programming language. Because of the different context, one usually ends up redesigning and reimplementing the solution, thereby falling into the “reinventing the wheel” trap. The field of software patterns, including architectural and design patterns, is helping developers avoid unnecessary redesign and reimplementation.

The concept of a pattern was first conceived by Christopher Alexander in the architecture of buildings and described in his book The Timeless ...

Get Designing Software Product Lines with UML: From Use Cases to Pattern-Based Software Architectures 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.