Seventh International Software Metrics Symposium (METRICS'01)
Measuring Coupling and Cohesion of Software Modules: An Information-Theory Approach
London, England
April 04-April 06
ISBN: 0-7695-1043-4
Coupling of a subsystem characterizes its interdependence with other subsystems. A subsystem's cohesion, on the other hand, characterizes its internal interdependencies. When used in conjunction with other attributes, measurements of a subsystem's coupling and cohesion can contribute to software quality models. An abstraction of a software system can be represented by a graph and a module (subsystem) by a subgraph. Software-design graphs depict components and their relationships. Prior work by Allen and Khoshgoftaar proposed information theory-based measures of coupling and cohesion of a modular system. This paper proposes related information theory-based measures of coupling and cohesion of a module. These measures have the properties of module-level coupling and cohesion defined by Briand, Morasca, and Basili. We define cohesion of a module in terms of intramodule coupling, normalized to between zero and one. We illustrate the measures with example graphs and an empirical analysis of the call graph of a moderate-size C program, the Nethack computer game. Preliminary analysis showed that the information-theory approach has finer discrimination than counting.
Index Terms:
software metrics, coupling, cohesion, call graph, information theory, entropy, excess entropy
Citation:
Edward B. Allen, Taghi M. Khoshgoftaar, Ye Chen, "Measuring Coupling and Cohesion of Software Modules: An Information-Theory Approach," metrics, pp.124, Seventh International Software Metrics Symposium (METRICS'01), 2001
Usage of this product signifies your acceptance of the
Terms of Use.
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||