Balancing Coupling in Software Design
summary
Argues that coupling is a design tool and introduces a practical model called integration strength that merges structured‑design and Miller/“kinesence” models into four levels: intrusive, functional, model, and contract coupling. Uses three dimensions — strength, distance, volatility (map to core/supporting/generic subdomains) — and quantifies maintenance pain as pain = strength×distance×volatility. Gives concrete examples: direct DB reads (BI, data mesh) create intrusive/functional coupling, microservice splits often produce distributed monoliths, and recommends DDD patterns (aggregates, anti‑corruption layer, published language) to reduce pain.
AI-written summary · about
chapters (9)
- 0:00Start
- 9:52COUPLING MODELS
- 11:131. CONTENT COUPLING
- 16:33CONTENT COUPLING: Referencing implementation details
- 22:26DYNAMIC CONNASCENCE
- 43:51STRENGTH & DISTANCE & VOLATILITY
- 47:59EXAMPLE: INTEGRATION STRENGTH
- 51:25DECOMPOSING MONOLITHS
- 53:27WRAP UP: INTEGRATION STRENGTH
related talks
01h 01mBalancing Coupling in Software Design
48mBalancing Coupling in Software Design
46mHiding The Lead
51mHiding The Lead: Coupling, Cohesion, and Microservices-Style
48mI Made Everything Loosely Coupled. Does My App Fall Apart?
53mHiding The Lead
01mMark Richards at DDD Europe
52mLoosely or lousily coupled? Understanding communication patterns
