Object-Oriented Metrics and Models in Software Quality Engineering
Coupling Between Objects (CBO) is a count of the number of other classes to which a class is coupled. It is measured by counting the number of distinct non-inheritance related class on which a class depends. Excessive coupling is unfavorable to modular design and prevents reuse. The more independent a class, the easier it is to reuse in another application. The larger the number of couples, the higher the sensitivity to changes in other parts of the design and thus maintenance is more difficult. Strong coupling complicates a system. Complexity can be reduced by designing systems with the weakest possible coupling between modules. This improves modularity and promotes encapsulation.