Measuring coupling and cohesion of software modules: An information-theoryapproach

Citation
Eb. Allen et Tm. Khoshgoftaar, Measuring coupling and cohesion of software modules: An information-theoryapproach, SEVENTH INTERNATIONAL SOFTWARE METRICS SYMPOSIUM - METRICS 2001, PROCEEDINGS, 2000, pp. 124-134
Citations number
35
Categorie Soggetti
Current Book Contents
Year of publication
2000
Pages
124 - 134
Database
ISI
SICI code
Abstract
Coupling of a subsystem characterizes its interdependence with other subsys tems. A subsystem's cohesion, on the other hand, characterizes its internal interdependencies. When used in conjunction with other attributes, measure ments of a subsystem's coupling and cohesion can contribute to software qua lity models. An abstraction of a software system can be represented by a graph and a mod ule (subsystem) by a subgraph. Software-design graphs depict components and their relationships. Prior work by Allen and Khoshgoftaar proposed informa tion theory-based measures of coupling and cohesion of a modular system. Th is paper proposes related information theory-based measures of coupling and cohesion of a module. These measures have the properties of module-level c oupling and cohesion defined by Briand, Morasca, and Basili. We define cohe sion of a module in terms of intramodule coupling, normalized to between ze ro 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. Pr eliminary analysis showed that the information-theory approach has finer di scrimination than counting.