# Bounded Context

Record: `arch:bounded-context`
Kind: constraint
Layer: [Domain Modeling](https://banes-lab.com/records/layer/domain-modeling.md)
Severity: recommended
Scope: domain, service, team
Aliases: Bounded Contexts
Canonical: https://banes-lab.com/ontology#arch-bounded-context

## Repair

- Refactored by: Split Model, Add Anti-Corruption Layer, Define Context Map
- Detected by: shared domain entities across contexts
- Violated by: cross-context model leakage
- Measured by: context coupling
- Enforced by: package/service boundaries

## requires

- [Explicit Boundaries](https://banes-lab.com/records/arch/explicit-boundaries.md)
- [Ubiquitous Language](https://banes-lab.com/records/arch/ubiquitous-language.md)

## reinforces

- [Modularity](https://banes-lab.com/records/arch/modularity.md)
- [Autonomy](https://banes-lab.com/records/arch/autonomy.md)

## enables

- [Context Mapping](https://banes-lab.com/records/arch/context-mapping.md)
- [Microservices](https://banes-lab.com/records/arch/microservices.md)

## conflicts-with

- [Shared Global Model](https://banes-lab.com/records/lex/shared-global-model.md)

## tensions-with

- [Cross-Context Reuse](https://banes-lab.com/records/lex/cross-context-reuse.md)

## tensions

- [Bounded Context Cross-Context Reuse](https://banes-lab.com/records/tension/bounded-context-cross-context-reuse.md)

## referenced-by

- [Package by Feature](https://banes-lab.com/records/arch/package-by-feature.md)
- [Microservices](https://banes-lab.com/records/arch/microservices.md)
- [Domain-Driven Design (DDD)](https://banes-lab.com/records/arch/domain-driven-design.md)
- [Context Mapping](https://banes-lab.com/records/arch/context-mapping.md)
