Title :
Utilization of Method Graphs to Measure Cohesion in Object Oriented Software
Author :
Aral, Atakan ; Ovatman, Tolga
Author_Institution :
Dept. of Comput. Eng., Istanbul Tech. Univ., Istanbul, Turkey
Abstract :
The primarily used technique in measuring cohesion in an object oriented software is analyzing the relations between methods and data members of the software classes. However, extraction of such relations is rather problematic since the usage of data members can vary heavily in program code. Object code analysis is a widely used technique to solve this problem which requires the compilation of the source code. In this paper, we analyze the relations between various method graphs (including call graphs) which can be easily obtained by static source code analysis to obtain software-wide cohesion measures. We perform our analysis to discover the relationship between a widely used cohesion metric, namely LCOM, and the relation among method graphs. This way, we provide cohesion measures that can be extracted rapidly and easily compared to conventional techniques. Proposed measures can be used to obtain information about overall degree of cohesion which in turn can let the designer infer about the quality concerns like modularity and reusability of an object oriented software. Our results show that using different kind of relations in such analysis provides significantly different results in evaluating software-wide average class cohesion. Using graphs involving cooperating methods provide the most correlated results with the LCOM metric.
Keywords :
graph theory; object-oriented programming; program compilers; program diagnostics; software metrics; software quality; software reusability; LCOM metric; call graphs; cohesion measurement; cohesion metric; method graph utilization; modularity; object code analysis; object oriented software; program code; quality concerns; reusability; software classes; software-wide average class cohesion; software-wide cohesion measures; source code compilation; static source code analysis; Clustering algorithms; Correlation; Indexes; Java; Software; Software measurement; Object Oriented Metrics; Software Cohesion; Static Code Analysis;
Conference_Titel :
Computer Software and Applications Conference Workshops (COMPSACW), 2013 IEEE 37th Annual
Conference_Location :
Japan
DOI :
10.1109/COMPSACW.2013.115