Glossary of Architectural Terms

Comprehensive definitions of architectural terms and concepts

Glossary of Architectural Terms

This comprehensive glossary serves as a quick reference for key terms, concepts, and methodologies used throughout the book. Terms are organized alphabetically with clear definitions and cross-references to related concepts.


A

ADR (Architecture Decision Record) - A lightweight document that captures an architectural decision, the alternatives considered, and the rationale behind the final choice. ADRs help maintain decision history and context for future architects.

Agile Architecture - An approach to architecture that embraces iterative development, evolutionary design, and continuous feedback. Focuses on just-enough architecture to support current and near-term requirements.

API (Application Programming Interface) - A defined set of rules and protocols that allow software components to communicate with each other. APIs abstract implementation details and provide standardized interaction methods.

API Gateway - A server that acts as a single entry point into a system, routing requests to appropriate backend services. Often handles cross-cutting concerns like authentication, rate limiting, and monitoring.

Application Architect - An architect focused on the design and structure of individual applications, including code organization, design patterns, and development team collaboration.

Architecture as Code (AaC) - The practice of defining and managing architectural elements (infrastructure, services, policies) through version-controlled code, enabling automation and consistency.

Architecture Review Board (ARB) - A governance body that evaluates and approves architectural decisions, ensuring alignment with enterprise standards and strategic objectives.


B

Bounded Context - A Domain-Driven Design concept that defines the boundaries within which a particular domain model applies. Each bounded context has its own ubiquitous language and data model.

Business Architecture - The discipline that defines the business strategy, governance, organization, and key business processes of an enterprise, often serving as input to technology architecture.


C

C4 Model - A hierarchical framework for visualizing system architecture through four levels: Context, Container, Component, and Code diagrams. Created by Simon Brown as a structured approach to architectural documentation.

CQRS (Command Query Responsibility Segregation) - An architectural pattern that separates read and write operations, using different models to update information and read information.

Circuit Breaker - A design pattern that prevents cascading failures by monitoring for failures and temporarily blocking requests to failing services until they recover.

Cloud-Native - A design approach that leverages the scalability and elasticity of cloud environments through microservices, containers, containerization, and continuous delivery practices.

Cohesion - The degree to which elements within a module work together toward a single, well-defined purpose. High cohesion is generally desirable in software design.

Continuous Delivery (CD) - A practice of automatically deploying tested code to production or staging environments, enabling frequent, reliable releases with minimal manual intervention.

Coupling - The degree of interdependence between software modules. Loose coupling is preferred as it makes systems more maintainable and flexible.


D

Data Architect - A specialist focused on data strategy, including data modeling, storage solutions, analytics architecture, and data governance frameworks.

DevOps - A set of practices combining software development (Dev) and IT operations (Ops) to shorten development cycles, improve reliability, and enable faster delivery.

Domain-Driven Design (DDD) - An approach to software development that emphasizes collaboration between technical and domain experts to create software that reflects complex business domains.


E

Enterprise Architect - A strategic role focused on aligning technology initiatives with business strategy across large organizations, often involving governance and long-term planning.

Event-Driven Architecture - An architectural pattern where components communicate through the production and consumption of events, enabling loose coupling and scalability.

Event Sourcing - A pattern where state changes are stored as a sequence of events, allowing the current state to be reconstructed by replaying events.


F

Functional Requirements - Specifications that describe what a system should do, including specific behaviors, functions, and features that must be implemented.


G

Governance - The framework of policies, procedures, and standards that guide architectural decisions and ensure alignment with organizational objectives and compliance requirements.


H

Hexagonal Architecture - Also known as Ports and Adapters, an architectural pattern that isolates the core business logic from external concerns through well-defined interfaces.

Hybrid Cloud - A computing environment that combines on-premises infrastructure with public and/or private cloud services, providing greater flexibility and optimization options.


I

IaC (Infrastructure as Code) - The practice of managing and provisioning infrastructure through machine-readable definition files rather than physical hardware configuration or interactive configuration tools.

Integration Architect - A specialist focused on connecting systems, services, and data across complex enterprise environments using various integration patterns and technologies.

IoT (Internet of Things) - A network of interconnected devices that can collect and exchange data, often requiring specialized architectural considerations for scale and real-time processing.


J

Just-Enough Architecture - An approach that provides the minimum architectural guidance necessary to support current development needs while avoiding over-engineering.


K

Kubernetes - An open-source container orchestration platform that automates deployment, scaling, and management of containerized applications.


L

Load Balancer - A component that distributes incoming requests across multiple servers or service instances to optimize resource utilization and ensure high availability.


M

Microservices - An architectural style where applications are composed of small, independently deployable services that communicate via well-defined APIs or messaging protocols.

Monolith - A single, unified application where all components are tightly coupled and deployed together as a single unit.

Multi-Tenancy - A system design where a single instance serves multiple customers (tenants) with data isolation and configurable features for each tenant.


N

Non-Functional Requirements (NFRs) - System qualities such as performance, scalability, security, and usability that constrain or guide the system's behavior and design.


O

Observability - The ability to understand a system's internal state by collecting and analyzing telemetry data such as logs, metrics, and traces.

Orchestration - A pattern where a central component coordinates and manages the interactions between multiple services or processes.


P

Platform as a Service (PaaS) - A cloud computing model that provides a platform allowing customers to develop, run, and manage applications without dealing with underlying infrastructure.

Polyglot Persistence - The use of different data storage technologies within a single application or system to handle diverse data requirements optimally.


Q

Quality Attributes - Measurable properties of a system such as performance, security, availability, and maintainability that affect user satisfaction and system success.

Queue - A communication mechanism where messages are stored in a first-in-first-out (FIFO) manner, enabling asynchronous processing between system components.


R

Resilience - A system's ability to recover from failures and continue operating, often achieved through redundancy, failover mechanisms, and graceful degradation.

REST (Representational State Transfer) - An architectural style for distributed systems that uses standard HTTP methods and emphasizes stateless communication and resource-based URLs.


S

Scalability - The ability of a system to handle increased load by adding resources, either vertically (scaling up) or horizontally (scaling out).

Security Architect - A specialist focused on embedding security considerations throughout the system lifecycle while balancing usability and compliance requirements.

Service Mesh - An infrastructure layer for managing communication between microservices, providing features like routing, security, load balancing, and observability.

Solution Architect - A versatile role that bridges business requirements with technical implementation, often working across multiple domains and technologies.

Strangler Fig Pattern - A migration pattern that gradually replaces legacy systems by incrementally replacing functionality with new implementations.


T

Technical Debt - The implied cost of additional rework caused by choosing quick, suboptimal solutions instead of better long-term approaches.

TOGAF (The Open Group Architecture Framework) - A standardized methodology for enterprise architecture that provides approaches for designing, planning, implementing, and governing enterprise information technology architecture.

Twelve-Factor App - A methodology for building software-as-a-service applications that emphasizes portability, scalability, and maintainability in cloud environments.


U

UX Architect - A specialist focused on ensuring technology solutions deliver exceptional user experiences across all touchpoints and interaction channels.

Ubiquitous Language - In Domain-Driven Design, a common language used by both domain experts and developers to ensure clear communication about domain concepts.


V

Vertical Scaling - The process of adding more power (CPU, RAM) to existing machines to handle increased load, as opposed to adding more machines (horizontal scaling).


W

WebAPI - An application programming interface that uses web protocols, typically HTTP, to enable communication between different software applications over a network.


X

XaaS (Everything as a Service) - A general category of cloud computing services where various computing resources are provided as services over the internet.


Y

YAML (YAML Ain't Markup Language) - A human-readable data serialization standard commonly used for configuration files and data exchange between applications.


Z

Zero-Downtime Deployment - A deployment strategy that allows new versions of applications to be deployed without interrupting service availability to end users.


Cross-References

Architecture Patterns

Cloud Concepts

Design Principles

Quality Attributes

Roles and Responsibilities


Related Resources


This glossary is continuously updated. For the most current definitions and new terms, please refer to the latest version of this document.