Don't mix up architectural perspectives

No real world system consists of a single [software] architecture pattern. Most systems are a combination of multiple patterns (a.k.a. styles) that together make up a solution. A common mistake that some architects make, when documenting software architecture, is mismatching different perspectives. For example, showing a layers pattern coupled with a process threads pattern within the same perspective makes no sense since layers is a static perspective and threads are associated with a dynamic perspective. It’s like mixing apples and oranges. In some cases it’s beneficial to show how a static (modules) perspective maps to a dynamic (run time) perspective, but such composition can occur when you already have two other perspectives.

Constantin Kostenko
Firebrand Architect®


Popular posts from this blog

Why we do agile

Quality Attribute Refinement