Architectural design patterns can be classified from five different views and related perspectives, as outlined below. These views and perspectives provide a comprehensive framework for understanding and applying architectural patterns based on specific system design needs.

Vertical view
When we talk about “layers”.
- Access perspective (top-down design): Pattern on how the “call flow” aka invocation flow between resources is (call flow). This includes design considerations such as n-tier architectures, domain driven design etc.
- Construction perspective (bottom-up design): Pattern on how resources get orchestrated aka spawned (init/ bootstrap flow) encloses the infrastructure (network, storage, compute including server less and container).
Horizontal view
When we talk about “steps”.
- Operational perspective (right to left design): Pattern on how resources are kept vital by letting data flows through the given resources (data flow) including design considerations for event driven architecture, data lake architectures including batch- and stream-processing architectures.
- Development perspective (left to right design): Pattern on how resources are kept up to date by managing the lifecycle of each specific resource (workload flow) with approaches such as MLOps and DevOps.
Maturity view
This overarching view describes patterns that focus on hardening resource setups to meet specific demands, such as achieving high availability, implementing zero trust security and other advanced requirements.
SBB elements


