# The lex records whose category is domain-architecture

This index as JSON: https://banes-lab.com/json/api/facets/lex/category/domain-architecture

## Entries

- [Anemic Model](https://banes-lab.com/records/lex/anemic-model.md): A domain model holding only data with no behavior, pushing all logic into separate procedures.
- [Anemic Transaction Script](https://banes-lab.com/records/lex/anemic-transaction-script.md): Implementing business logic as procedural scripts over data-only objects, with no rich domain model.
- [Implicit Integration](https://banes-lab.com/records/lex/implicit-integration.md): Integrating contexts through undocumented, assumed connections instead of explicit, mapped relationships.
- [Shared Global Model](https://banes-lab.com/records/lex/shared-global-model.md): Forcing one global model across the whole system, so unrelated parts are coupled through it.
- [Shared Model Coupling](https://banes-lab.com/records/lex/shared-model-coupling.md): Coupling a domain to an external system's model by sharing it directly, so their changes ripple across.
- [Business Rule Encapsulation](https://banes-lab.com/records/lex/business-rule-encapsulation.md): The ability to keep business rules inside the domain objects they govern.
- [Cross-Entity Domain Logic](https://banes-lab.com/records/lex/cross-entity-domain-logic.md): The ability to place logic that spans several entities in a dedicated domain service.
- [Domain Alignment](https://banes-lab.com/records/lex/domain-alignment.md): The ability to keep the software model closely aligned with the business domain it serves.
- [Identity-Based Equality](https://banes-lab.com/records/lex/identity-based-equality.md): The ability to treat two objects as the same when they share an identity, regardless of their attributes.
- [Legacy/System Integration](https://banes-lab.com/records/lex/legacy-system-integration.md): The ability to integrate a legacy or external system without letting its model corrupt the domain.
- [Lifecycle Tracking](https://banes-lab.com/records/lex/lifecycle-tracking.md): The ability to track an entity as the same thing through changes over its lifetime.
- [Root-Guarded Invariants](https://banes-lab.com/records/lex/root-guarded-invariants.md): The ability to enforce an aggregate's invariants by routing all changes through its root.
- [Self-Validating Values](https://banes-lab.com/records/lex/self-validating-values.md): The ability for a value object to guarantee its own validity at construction.
- [Side-Effect-Free Equality](https://banes-lab.com/records/lex/side-effect-free-equality.md): The ability to compare value objects by their contents with no side effects.
- [Transactional Consistency Boundary](https://banes-lab.com/records/lex/transactional-consistency-boundary.md): The ability to treat an aggregate as the unit within which invariants hold atomically.
- [Explicit Boundary](https://banes-lab.com/records/lex/explicit-boundary.md): The requirement that a clear boundary separate the domain from external systems it integrates with.
- [Relationship Semantics](https://banes-lab.com/records/lex/relationship-semantics.md): The requirement that each relationship between bounded contexts carry a defined meaning.
- [Stable Identity](https://banes-lab.com/records/lex/stable-identity.md): The requirement that an entity keep one stable identifier throughout its lifetime.
- [Value Equality](https://banes-lab.com/records/lex/value-equality.md): The requirement that two value objects be treated as equal when all their attributes match.
- [Translation Model](https://banes-lab.com/records/lex/translation-model.md): A mapping between an external system's concepts and the domain's own, keeping the two vocabularies separate.
- [Aggregate Size](https://banes-lab.com/records/lex/aggregate-size.md): The degree to which enlarging an aggregate to enforce invariants increases contention and load on it.
- [Cross-Context Reuse](https://banes-lab.com/records/lex/cross-context-reuse.md): The degree to which isolating each context's model limits reusing models across contexts.
- [Documentation Overhead](https://banes-lab.com/records/lex/documentation-overhead.md): The degree of ongoing effort to document and maintain the map of relationships between contexts.
- [Domain Purity](https://banes-lab.com/records/lex/domain-purity.md): The degree to which the domain model stays free of external and infrastructure concerns.
- [Integration Clarity](https://banes-lab.com/records/lex/integration-clarity.md): The degree to which relationships between contexts are made explicit and understandable.
- [Object Count](https://banes-lab.com/records/lex/object-count.md): The degree to which modeling many concepts as distinct value objects increases the number of objects.
- [Persistence Simplicity](https://banes-lab.com/records/lex/persistence-simplicity.md): The degree to which a rich domain model complicates straightforward mapping to storage.
- [Simple CRUD](https://banes-lab.com/records/lex/simple-crud.md): The degree to which a full domain model adds overhead where simple create-read-update-delete would suffice.
