Architectural Patterns

Architectural patterns are foundational styles used in software system design. They describe fundamental structures of interaction and organization of system components, providing a reusable high-level solution to commonly occurring problems.

Wikipedia