首页> 外文期刊>Future generation computer systems >Analyzing the structure of Java software systems by weighted K-core decomposition
【24h】

Analyzing the structure of Java software systems by weighted K-core decomposition

机译:通过加权K核分解分析Java软件系统的结构

获取原文
获取原文并翻译 | 示例

摘要

Statistical properties of un-weighted software networks have been extensively studied. However, software networks in their nature should be weighted. Understanding the properties enclosed in the weighted software networks can lead to better software engineering practices. In this paper, we construct a set of weighted software networks from real-world Java software systems and empirically investigate their topological properties by using weightedk-core decomposition. First, we investigate the static topological properties of the weightedk-core structure, and find that small value of the graph coreness is a property shared by many software systems, the distribution of weighted coreness follows a power law with an exponential cutoff, and weighted coreness and node degree are closely correlated with their spearman correlation coefficients larger than 0.94. Second, we analyze the evolving topological properties of the weightedk-core structure, including the graph coreness, size of the main core, and new members and vanishing members of the main core. Empirical results show that the graph coreness will keep relatively stable unless the system undergoes major changes, size of the main core keeps stable in its evolution, and new members or vanishing members of a main core are from or go to the shells very near the corresponding main cores. Finally, we apply the weightedk-core decomposition method to identify the key classes, and find that, compared with other nine approaches, our approach performs best in the whole set of subject systems according to the average ranking of the Friedman test. It can identify a majority of classes deemed important. This work could help developers to improve software understanding, propose new metrics for software measurement and evaluate the quality of the system in development.
机译:未加权软件网络的统计特性已得到广泛研究。但是,应该对软件网络的本质进行加权。了解加权软件网络中包含的属性可以导致更好的软件工程实践。在本文中,我们从实际的Java软件系统构建了一组加权软件网络,并使用加权k核分解经验地研究了它们的拓扑特性。首先,我们研究了加权k核结构的静态拓扑属性,发现图核心的小值是许多软件系统共享的一个属性,加权核心的分布遵循幂幂定律,并且具有指数截止值,加权核心节点度和节点度与其Spearman相关系数大于0.94密切相关。其次,我们分析了加权k核结构的不断发展的拓扑特性,包括图核,主核的大小以及主核的新成员和消失成员。实证结果表明,除非系统发生重大变化,图核的核心性将保持相对稳定,主核的大小保持其演化的稳定,并且主核的新成员或消失成员都位于或靠近对应的壳层。主要核心。最后,我们应用了加权k核分解方法来识别关键类别,并发现与其他九种方法相比,根据弗里德曼测验的平均排名,我们的方法在整个主题系统中表现最佳。它可以识别被认为重要的大多数类。这项工作可以帮助开发人员提高对软件的理解,为软件测量提出新的指标,并评估开发中的系统质量。

著录项

  • 来源
    《Future generation computer systems》 |2018年第6期|431-444|共14页
  • 作者单位

    School of Computer Science and Information Engineering, Zhejiang Gongshang University;

    International School of Software, Wuhan University,Research Center for Complex Network, Wuhan University;

    State Key Laboratory of Software Engineering, Wuhan University;

    State Key Laboratory of Software Engineering, Wuhan University;

    Kingdee Research, Kingdee International Software Group Co. Ltd;

  • 收录信息 美国《科学引文索引》(SCI);美国《工程索引》(EI);
  • 原文格式 PDF
  • 正文语种 eng
  • 中图分类
  • 关键词

    Software networks; Weightedk-core decomposition; Program comprehension; Static analysis;

    机译:软件网络;加权核分解;程序理解;统计分析;

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号