中国物理B ›› 2022, Vol. 31 ›› Issue (3): 30501-030501.doi: 10.1088/1674-1056/ac1b8a

• • 上一篇    下一篇

Multifractal analysis of the software evolution in software networks

Meili Liu(刘美丽), Xiaogang Qi(齐小刚), and Hao Pan(潘浩)   

  1. School of Mathematics and Statistics, Xidian University, Xi'an 0710071, China
  • 收稿日期:2021-06-10 修回日期:2021-07-25 接受日期:2021-08-07 出版日期:2022-02-22 发布日期:2022-02-14
  • 通讯作者: Xiaogang Qi E-mail:xgqi@xidian.edu.cn
  • 基金资助:
    Project supported by the National Natural Science Foundation of China (Grant Nos. 61877067 and 61572435).

Multifractal analysis of the software evolution in software networks

Meili Liu(刘美丽), Xiaogang Qi(齐小刚), and Hao Pan(潘浩)   

  1. School of Mathematics and Statistics, Xidian University, Xi'an 0710071, China
  • Received:2021-06-10 Revised:2021-07-25 Accepted:2021-08-07 Online:2022-02-22 Published:2022-02-14
  • Contact: Xiaogang Qi E-mail:xgqi@xidian.edu.cn
  • Supported by:
    Project supported by the National Natural Science Foundation of China (Grant Nos. 61877067 and 61572435).

摘要: As the scale and complexity have been increased in software systems, developers place more emphases on software engineering and system designs. Software architecture is evolved with update of softwares, and it plays a fundamental role in determining quality of software systems. Multifractal characteristics of software networks can reflect software quality. In this paper, we construct a software network from the dependencies between object classes, and gain a deep understanding of software through network analysis. To be specific, multifractal analysis of the software network is performed based on a modified box-covering algorithm that yields fewer boxes. We verify that software with different functions and dependencies is multifractal. Further, different versions of the software are compared to discover the evolution of the software architecture. The results show that the singularity of class dependencies decreases as the software is updated. This trend leads to a more specific division of functions between software modules. One of the visible advantages of our work is that it allows the characterization of software structures at the code level. The methodology and results of this paper provide new insights into the evaluation and design of large-scale software systems.

关键词: software, multifractal, box-covering algorithm

Abstract: As the scale and complexity have been increased in software systems, developers place more emphases on software engineering and system designs. Software architecture is evolved with update of softwares, and it plays a fundamental role in determining quality of software systems. Multifractal characteristics of software networks can reflect software quality. In this paper, we construct a software network from the dependencies between object classes, and gain a deep understanding of software through network analysis. To be specific, multifractal analysis of the software network is performed based on a modified box-covering algorithm that yields fewer boxes. We verify that software with different functions and dependencies is multifractal. Further, different versions of the software are compared to discover the evolution of the software architecture. The results show that the singularity of class dependencies decreases as the software is updated. This trend leads to a more specific division of functions between software modules. One of the visible advantages of our work is that it allows the characterization of software structures at the code level. The methodology and results of this paper provide new insights into the evaluation and design of large-scale software systems.

Key words: software, multifractal, box-covering algorithm

中图分类号:  (Fractals)

  • 05.45.Df
05.10.-a (Computational methods in statistical physics and nonlinear dynamics)