Patterns of Enterprise Application Architecture¶
Fowler, M. (2002). Patterns of Enterprise Application Architecture. Addison-Wesley.
Cited by¶
7 citations across 6 artifacts.
Each citation links to the sentence it supports in the citing article.
Primes¶
- Collingridge Dilemma
- Software architecture — foundational choices (schemas, API contracts, framework selection) are cheap to change before dependents exist and expensive once many systems rely on them; versioned-API and strangler-fig disciplines are curve-bending responses.
This sourceCatalogues enterprise architecture patterns and versioning/evolutionary-design disciplines that preserve revisability as dependents accumulate (the strangler-fig pattern is Fowler's own, articulated in his later writing).
- Software architecture — foundational choices (schemas, API contracts, framework selection) are cheap to change before dependents exist and expensive once many systems rely on them; versioned-API and strangler-fig disciplines are curve-bending responses.
- Design Patterns
- From this software foundation, pattern thinking generalized: Fowler's (2002) enterprise application patterns (Repository, Service Layer, Unit of Work, Active Record, Data Mapper), cloud-infrastructure patterns (Sidecar, Ambassador, Blue-Green Deployment, Canary Release), distributed-systems patterns (Circuit Breaker, Bulkhead, Saga, CQRS, Event Sourcing) catalogued in Buschmann, Meunier, Rohnert, Sommerlad, and Stal (1996), security-architecture patterns (Defense in Depth, Zero Trust, Threat Modeling), instructional-design patterns, organizational-change patterns (Fearless Change), domain-driven design patterns (Evans, 2003), and game-design patterns all follow Alexander's documented-solution template.
This sourceCanonical catalog of enterprise-tier patterns (Repository, Service Layer, Unit of Work, Active Record, Data Mapper, Domain Model); extends pattern scale upward to multi-tier applications.
- From this software foundation, pattern thinking generalized: Fowler's (2002) enterprise application patterns (Repository, Service Layer, Unit of Work, Active Record, Data Mapper), cloud-infrastructure patterns (Sidecar, Ambassador, Blue-Green Deployment, Canary Release), distributed-systems patterns (Circuit Breaker, Bulkhead, Saga, CQRS, Event Sourcing) catalogued in Buschmann, Meunier, Rohnert, Sommerlad, and Stal (1996), security-architecture patterns (Defense in Depth, Zero Trust, Threat Modeling), instructional-design patterns, organizational-change patterns (Fearless Change), domain-driven design patterns (Evans, 2003), and game-design patterns all follow Alexander's documented-solution template.
- Impedance Mismatch and Coupling Efficiency
- Software architecture: Client-server communication protocol mismatches causing latency and retry overhead; API payload structure mismatches between producer and consumer systems; schema evolution mismatches creating incompatibility or redundant translation layers, the canonical "object-relational impedance mismatch" Fowler (2003) describes as a paradigm software interface problem.
This sourceCanonical software-architecture text: names and analyzes the "object-relational impedance mismatch" between object-oriented domain models and relational database schemas, treating it as a paradigm software interface problem requiring adapter/mapping layers.
- Software architecture: Client-server communication protocol mismatches causing latency and retry overhead; API payload structure mismatches between producer and consumer systems; schema evolution mismatches creating incompatibility or redundant translation layers, the canonical "object-relational impedance mismatch" Fowler (2003) describes as a paradigm software interface problem.
Domain-specific¶
- Identity map pattern
- An identity map keys loaded objects by persistent identifier and returns the existing instance on repeat retrieval, preventing duplicate representations and inconsistent updates during one session or transaction.
- The entry records a descriptive analytical identity; practical use requires the governing domain's evidence, standards, and safety obligations.
- Proxy Pattern
Mechanisms¶
- Conversion Layer
- The residue that resists clean translation is real and named — the impedance mismatch between two models is exactly what the exceptions bucket exists to hold.
This sourceExplains the structural mismatch between object models and relational databases, including features such as collections and inheritance that lack direct relational counterparts.
- The residue that resists clean translation is real and named — the impedance mismatch between two models is exactly what the exceptions bucket exists to hold.
Verification¶
Does it exist? Not checked yet. This entry carries no identifier to resolve. It was extracted from the citation as written in the article, normalized, and deduplicated against the rest of the registry.
Does it back the claim? Not recorded. Neither this nor any other of the 7 citations of this work carries a recorded support check.
Support is checked per citation rather than per work — the same source can be cited soundly in one article and wrongly in another. Per-citation recording began recently, so a citation with no recorded check is a gap in the record rather than evidence it went unchecked.
See how references were verified.
Links previously used in the corpus¶
Before the registry existed this work was also linked 1 other way.
Registry ID ref:92b36d41cd24 · see in the full table