loading...
Measuring Coupling and Cohesion of Software Modules: An Information-Theory Approach
London, England April 04-April 06
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/METRIC.2001.915521Seventh International Software Metric ...
 This Article 
 
PDF
HTML
 
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Edward B. Allen, Mississippi State University
Taghi M. Khoshgoftaar, Florida Atlantic University
Ye Chen, Florida Atlantic University
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.