arrow
Return

Identifying key classes in object-oriented software using generalized k-core decomposition

delete2018-04-01
delete50
PRE
AI
W
Weifeng Pan *
B
Beibei Song
K
Kangshun Li
K
Kejun Zhang
DOI:10.1016/j.future.2017.10.006delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
Identifying key classes can help developers familiarize with a previously unknown software system. Complex network research opens new opportunities for identifying key classes, and many approaches have been proposed. However, the software network that existing approaches rely on is un-weighted and un-directed, which does not conform to the reality of a software system. Thus, how to identify key classes by using more accurate software network models and appropriate complex network theories is still a problem that has never been reported. The objective of this paper is to provide a ranked list of classes for new developers as starting points for the program comprehension process. Our approach is based on a more accurate software network and a generalized version of k-core decomposition in complex network research. First, we use a weighted directed software network to represent the topological structure of software at the class level, which takes into consideration both the coupling direction and coupling strength. Then, we propose a generalized k-core decomposition method and use it to calculate the generalized coreness of each class. Finally, we sort classes with respect to their generalized corenesses in a descending order. The top-ranked classes serve as the key class candidates. Experiments have been performed on four open-source software systems. Empirical results have shown that our approach is able to identify a majority of true key classes, with a recall larger than 64% on the subject systems. Comparison studies with other nine static analysis based approaches have also been performed. Results show that our approach performs best in the whole set of subject systems according to the average ranking of the Friedman test. The evaluation indicates that our approach improves the effectiveness of existing approaches on identification of key classes. The key class candidates recommended by our approach can be excellent starting points for program comprehension process. Our approach is a valuable technique for developers who are aiming to gain a thorough understanding of a previously unknown software system. (C) 2017 Elsevier B.V. All rights reserved.
Keywords:
Key classes
Generalized k-core decomposition
Complex network
Program comprehension
Static analysis
AI Summary

AI Summary

Key information extracted from the uploaded paper, including a brief overview, abstract, background, key highlights, visual analysis, and future outlook.

Journal

F
Future Generation Computer Systems-The International Journal of eScience
IF:
6.1
Papers:
6.9K
Citations:
2.3W

Organization

Z
Zhejiang Gongshang University
Scholars:
6.6K
Papers: 4.9K
Citations: 8.1K
S
South China Agricultural University
Scholars:
3.1W
Papers: 1.5W
Citations: 2.6W
Z
zhejiang university
Scholars:
17.7W
Papers: 12.1W
Citations: 152
researcher View more organizations
Cited Papers

Cited Papers

Breast cancer patients with hypermethylation in the promoter of BRCA1 gene exhibit favorable clinical status
err2012-01-01
err0
errOAAI
errM. E. Krasteva; S. S. Bozhanov; G. G. Antov; Z. I. Gospodinova; S. G. Angelova
errShare
errSave
Symptom Profiles of Autism Spectrum Disorder in Tuberous Sclerosis Complex (S10.001)
err2016-04-05
err0
PREAI
errShafali Jeste; Kandice Varcin; Gerhard Helleman; Amanda Gulsrud; Mustafa Sahin; Joyce Wu; Connie Kasari; Charles Nelson
errShare
errSave
errShare
errSave
Taninos: uma abordagem da química à ecologia
err2005-10-01
err0
errOAAI
errJulio Marcelino Monteiro; Ulysses Paulino de Albuquerque; Elcida de Lima Araújo; Elba Lúcia Cavalcanti de Amorim
errShare
errSave
Efficacy of lanthionine-stabilized angiotensin-(1-7) in type I and type II diabetes mouse models
err2019-02-01
err0
errOAAI
errAnneke Kuipers; Gert N. Moll; Elizabeth Wagner; Rick Franklin
errShare
errSave
Scale-free geometry in OO programs
err2005-05-01
err137
PREAI
errPotanin, A; Noble, J; Frean, M; Biddle, R
errShare
errSave
researcher View more