[Count] of classes in each of five ranges for [Type] coupling

Project 0-5 6-10 11-15 15-20 20+ Total

The goal of this analysis is to provide a perspective on the design quality of one or more projects through the level of coupling associated with each class.

"Afferent" coupling indicates the "responsibility" associated with a class, in other words, how many other classes use it. If a class has high afferent coupling, then changes to this class are likely to have a ripple effect on other classes. "Efferent" coupling represents the independence of a class, or the number of other classes it must use in order to accomplish its task. If a class has high efferent coupling, then it could be negatively impacted by changes to many other parts of the system.

Each row of the table provides a perspective on coupling for a single project. The perspective indicates how many classes fall into each of five possible ranges for coupling: 0-5, 6-10, 11-15, 15-20, and 20+.

To facilitate comparison between projects, you can specify either "Count" or "Percentage" when generating this table. "Count" shows the absolute number of classes whose coupling falls within the given range. "Percentage" shows the proportion of classes for this project that falls within the given range. Using "Count" helps you distinguish between large and small projects, while using "Percentage" enables you to more easily compare projects with a "normalized" value.

Currently, this analysis focusses on "class" coupling as produced by the DependencyFinder tool.