Check out architecture patterns, organized by informal and intersecting categories:
(some patterns might belong to two or more categories, use the search button if in doubt…).
All of these patterns have been extensively documented in (paper-based and online) references.
- Overall System Structure: 9 patterns, e.g. Layers, Tiers, Master/Slave, Client/Server, Onion-Style, Hexagonal-Architecture, Domain-Model, Transaction-Script, Virtual Machine, etc.
- Data flow: 4 patterns, e.g. Pipes-and-Filter and its variants, Blackboard
- Interactive Systems: 1 patterns, e.g. Model-View-Controller, Model-View-ViewModel and their variants
- Integration Patterns: 5 patterns, e.g. Publish-Subscribe, Messaging, Remote-Procedure-Call, Hub-and-Spoke etc.
- Adaptive Systems: 3 patterns, e.g. PlugIn, Broker, MicroServices
- Domain Patterns: 0 patterns, e.g. Open-Host-Service, Published-Language, Anticorruption-Layer, Separate-Ways
- Stability and Robustness Patterns: 2 patterns, e.g. Bulkhead, Timeout, Circuit-Breaker, Heartbeat, Handshake etc.
- Resource Management Patterns: 0 patterns, TODO
- Workflow Patterns: 0 patterns, TODO
- Security Patterns: patterns, TODO
- Microservice Patterns: 0 patterns, TODO
- Design Patterns: 3 patterns, e.g. Proxy, Adapter, Facade, Registry, Command, Factory, Observer
These patterns are tagged by 17 keywords that will help you navigate:
One of this keywords (cpsa-f)
stands out - it denotes those patterns that are mentioned in
the iSAQB software architecture foundation curriculum. Their knowledge might
be required in CPSA-F examinations.
Style? Pattern? Category?
The definition of styles or patterns heavily varies, depending on the original authors.
Several patterns (e.g. MicroServices) fit several categories.
We're offering architecture training!
The dynamic duo, always two trainers in parallel, practically applicable
knowledge from Peter Hruschka and Gernot Starke. See arc42.de for details, and schedule.
We’ve successfully trained more than 1000 developers in software architecture,
many of them passed the iSAQB CPSA-F certification.
(sorry - public training currently German-only, English for inhouse trainings.)