System Architecture
EstablishedThe high-level structure of a software system
The components, responsibilities, interfaces and constraints that shape how a system works.
Read the full definition →Glossary category · 24 terms
The structures and patterns used to design systems that span components, services and machines.
The high-level structure of a software system
The components, responsibilities, interfaces and constraints that shape how a system works.
Read the full definition →A system whose components run on multiple computers
Software in which independent nodes communicate over a network and must handle partial failure and delay.
Read the full definition →An application split into logical tiers
An architecture that separates concerns such as presentation, business logic and data access into layers that may deploy separately.
Read the full definition →Software organised into responsibility layers
A structure where each layer offers services to the layer above and depends on layers below.
Read the full definition →Ports and Adapters architecture
A design that keeps business logic at the centre and connects external systems through explicit ports and adapters.
Read the full definition →Architecture with dependencies pointing inward
A family of designs that isolates core business rules from frameworks, interfaces and infrastructure.
Read the full definition →Domain-Driven Design
An approach that models software around the language, rules and boundaries of the business domain.
Read the full definition →A boundary within which a domain model is consistent
A DDD boundary that defines where terms, rules and models have a specific meaning.
Read the full definition →Service-Oriented Architecture
An architecture built from interoperable services with defined contracts, often integrated across an organisation.
Read the full definition →Command Query Responsibility Segregation
A pattern that separates operations that change state from those that read it.
Read the full definition →Storing state as an ordered sequence of events
A pattern where changes are recorded as immutable events and current state is derived from their history.
Read the full definition →A distributed transaction made of local steps
A pattern that coordinates a long-running business process and uses compensating actions when a step fails.
Read the full definition →Stopping calls to a failing dependency
A resilience pattern that temporarily blocks repeated requests after failures, allowing recovery and preventing cascades.
Read the full definition →Isolating resources to contain failure
A resilience pattern that separates resource pools so overload in one area does not sink the whole system.
Read the full definition →Repeating an operation after a transient failure
A resilience pattern that retries safe operations with limits and delay rather than failing immediately.
Read the full definition →The same request can be repeated without extra effect
A property that makes retries safer because applying an operation more than once produces the same intended result.
Read the full definition →Replicas converge after a delay
A consistency model in which reads may be temporarily stale but all copies are expected to agree eventually.
Read the full definition →Reads reflect the latest completed write
A consistency model that presents a single current view of data, usually with coordination and latency trade-offs.
Read the full definition →Consistency, Availability and Partition tolerance
The observation that during a network partition a distributed data system must trade off immediate consistency against availability.
Read the full definition →A helper process deployed beside an application
A pattern that adds cross-cutting capabilities such as proxying or telemetry without putting them in the main application.
Read the full definition →Incrementally replacing a legacy system
A migration pattern that routes capabilities to new components until the old system can be retired safely.
Read the full definition →Backends for Frontends
A pattern that gives each user interface a backend tailored to its data and interaction needs.
Read the full definition →Combining data from multiple services
A pattern in which one component calls several services and assembles a response for a client.
Read the full definition →Two ways to coordinate distributed work
Choreography lets services react to events independently; orchestration uses a coordinator to direct the sequence.
Read the full definition →