Low Coupling
Kind: quality-attribute
Layer: Structural Core
Aliases: Loose Coupling, Decoupling
Record: architecture:low-coupling
Severity: mandatory
Scope: module, component, service
Canonical: Ontology
The degree to which a module can change without forcing changes in the modules around it.
Listed in Architecture principles, after High Cohesion and before Encapsulation.
Requires
Reinforces
Enables
Conflicts with
In tension with
Tensions
Violated by
Refactored by
Severity
Category
Reinforced by
- Anti-Corruption Layer
- Encapsulation
- Information Hiding
- Composition Over Inheritance
- Interface Segregation Principle
- Dependency Inversion Principle
- Event-Driven Architecture
- Publish/Subscribe Pattern
- Message Broker
- Asynchronous Communication
- Mediator Pattern
- Service-Oriented Architecture
Required by
Linked from
- Node design
- A system is a graph
- Principles are typed
- Debt and leverage
- Anti-patterns
- Domain Architecture
- Contracts / Interfaces / Compatibility
- Correctness / Determinism / Verification
- Portability / Infrastructure / Deployment
- Core Modular Design
- SOLID / Object-Oriented Design
- Event / Messaging / Asynchronous Architecture
- Error Handling / Resilience
- Behavioral Patterns
- Scalability / Performance / Optimization
- Codebase / System Architecture Styles
- Codebase / System Architecture Styles
- Core Modular Design
- Core Vocabulary
- SOLID / Object-Oriented Design
- Severity levels
- The resolutions