This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
API-Based and Information-Theoretic Metrics for Measuring the Quality of Software Modularization
January 2007 (vol. 33 no. 1)
pp. 14-32
We present in this paper a new set of metrics that measure the quality of modularization of a non-object-oriented software system. We have proposed a set of design principles to capture the notion of modularity and defined metrics centered around these principles. These metrics characterize the software from a variety of perspectives: structural, architectural, and notions such as the similarity of purpose and commonality of goals. (By structural, we are referring to intermodule coupling-based notions, and by architectural, we mean the horizontal layering of modules in large software systems.) We employ the notion of API (Application Programming Interface) as the basis for our structural metrics. The rest of the metrics we present are in support of those that are based on API. Some of the important support metrics include those that characterize each module on the basis of the similarity of purpose of the services offered by the module. These metrics are based on information-theoretic principles. We tested our metrics on some popular open-source systems and some large legacy-code business applications. To validate the metrics, we compared the results obtained on human-modularized versions of the software (as created by the developers of the software) with those obtained on randomized versions of the code. For randomized versions, the assignment of the individual functions to modules was randomized.
Index Terms:
Metrics/measurement, modules and interfaces, information theory, distribution, maintenance and enhancement, maintainability, coupling, layered architecture.
Citation:
Santonu Sarkar, Girish Maskeri Rama, Avinash C. Kak, "API-Based and Information-Theoretic Metrics for Measuring the Quality of Software Modularization," IEEE Transactions on Software Engineering, vol. 33, no. 1, pp. 14-32, Jan. 2007, doi:10.1109/TSE.2007.4
Usage of this product signifies your acceptance of the Terms of Use.