Coupling measures the degree of interdependence between software modules. High coupling means modules depend heavily on each other, while low coupling indicates independence. Minimizing coupling improves maintainability, testability, and reusability.