arrow
返回

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
delete原文链接
delete原文求助
delete分享
delete收藏
摘要

摘要

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.
Keyword:
Key classes
Generalized k-core decomposition
Complex network
Program comprehension
Static analysis
AI总结

AI总结

对已上传原文的论文进行重点信息的提取,主要内容包括:简要概述、研究摘要、背景介绍、关键亮点、图文解析、展望与总结。

期刊

F
Future Generation Computer Systems-The International Journal of eScience
IF:
6.1
论文数:
6.9K
被引数:
2.3W

机构

Z
Zhejiang Gongshang University
学者数:
6.6K
论文数: 4.9K
被引数: 8.1K
S
South China Agricultural University
学者数:
3.1W
论文数: 1.5W
被引数: 2.6W
Z
zhejiang university
学者数:
17.7W
论文数: 12.1W
被引数: 152
学者 查看更多机构
引用论文

引用论文

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
err分享
err收藏
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
err分享
err收藏
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
err分享
err收藏
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
err分享
err收藏
Scale-free geometry in OO programs
err2005-05-01
err137
PREAI
errPotanin, A; Noble, J; Frean, M; Biddle, R
err分享
err收藏
学者 查看更多内容