Coupling and Decoupling
Coupling is a measure of dependence between components of software system.
De-coupling is a design or re-engineering activity aiming to reduce coupling between system elements.
One component might depend on syntax, format, or encoding of data produced by another component.
One component might depend on the execution time within another component.
One component might depend on state of another component.
Using the same syntax, format or encoding of data.
Performed at the same time.
Executed in the same state.
Highly cohesive components lead to fewer dependencies between...