Coupling
A class depends on another if it uses objects of that class
CashRegister depends on Coin to determine the value of the payment
Coin
does not depend on
CashRegister
since none
of the coin operations require the
CashRegister
class.
High Coupling = many class dependencies
Minimize coupling to minimize the impact of interface changes
To visualize relationships draw class diagrams
UML: Unified Modeling Language. Notation for object-oriented analysis and design