API-Based and Information-Theoretic Metrics for Measuring the Quality of Software Modularization
IEEE Transactions on Software Engineering
Using information retrieval based coupling measures for impact analysis
Empirical Software Engineering
An architecture-centric software maintainability assessment using information theory
Journal of Software Maintenance and Evolution: Research and Practice
HOLMES: Effective statistical debugging via efficient path profiling
ICSE '09 Proceedings of the 31st International Conference on Software Engineering
Package coupling measurement in object-oriented software
Journal of Computer Science and Technology
A cohesion metric proposal for object-oriented systems: COMIAS
ICCOMP'09 Proceedings of the WSEAES 13th international conference on Computers
Optimization of software components selection for component-based software system development
Computers and Industrial Engineering
Experimental assessment of software metrics using automated refactoring
Proceedings of the ACM-IEEE international symposium on Empirical software engineering and measurement
Hi-index | 0.00 |
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.