DocumentCode :
1678272
Title :
A PageRank based recommender system for identifying key classes in software systems
Author :
Sora, Ioana
Author_Institution :
Dept. of Comput. & Software Eng., Politeh. Univ. of Timisoara, Timisoara, Romania
fYear :
2015
Firstpage :
495
Lastpage :
500
Abstract :
Program comprehension is a fundamental prerequisite before software engineers may engage in software maintenance or evolution activities and requires the study of large amounts of documentation - either developer documentation or reverse engineered. Very often, from this documentation is missing a short overview document pointing to the most important classes of the system, these who are essential for starting the understanding of the systems architecture. In this work we propose a recommender tool to automatically identify the most important classes of a system. Our approach relies on modeling the static dependencies structure of the system as a graph and applying a graph ranking algorithm. We empirically identify the optimal way of building the system graph, identifying how different dependency types should be taken into account. In experiments performed on a set of open source real life systems, we compare the sets of classes recommended by our tool with these included in the architectural overviews provided by the system developers.
Keywords :
graph theory; program diagnostics; recommender systems; software maintenance; PageRank; graph ranking algorithm; key classes identification; open source real life systems; recommender system; software evolution; software maintenance; software systems; system static dependencies structure; Computational intelligence; Documentation; Java; Object oriented modeling; Software algorithms; Software systems;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Applied Computational Intelligence and Informatics (SACI), 2015 IEEE 10th Jubilee International Symposium on
Conference_Location :
Timisoara
Type :
conf
DOI :
10.1109/SACI.2015.7208254
Filename :
7208254
Link To Document :
بازگشت