Coupling
In plain terms
How dependent one part of a system is on another.
Going deeper
Tight coupling means changing one component forces changes in others, making systems brittle; loose coupling keeps parts independent and easier to modify. Low coupling is generally a design goal.
Under the hood
Forms range from tight (content/common) to loose (message); loose coupling via interfaces and events enables independent change and testing.
Examples
Microservices over shared DBs, interfaces over concrete classes, event-driven decoupling.
Think of it like...
Like train cars: loosely-coupled ones can be detached and rearranged easily, while welded-together cars must all move as one.