Multiscale Empirical Analysis of Software Network Evolution
Xiaodong Gou,Long Fan,Li Zhao,Qi Shao,Chong Bian,Shunkun Yang
DOI: https://doi.org/10.1109/qrs-c55045.2021.00165
2021-01-01
Abstract:Understanding the evolution of the complex software system during the updates is useful for a variety of software development and maintenance activities, however, few works have studied the multiscale evolution characteristics of software in different programming languages from the perspective of the network. In this paper, we investigate the evolution of twelve open source software in ten programming languages from three scales: macroscopic, mesoscopic and microscopic. Analysis results show some interesting observations, for example, the in-degree distributions exhibit the coexistence of power-law distribution and lognormal distribution, and may even change to each other in evolution process. In addition, software does not always become more orderly and modular during the update process, but the software in different programming languages has similarities in microstructure. What's more, there are strong correlations between the software's macroscopic, mesoscopic, and microscopic properties and the size of the software, while there are no significant correlations between these three properties. The analysis and discussion in this paper can provide useful insights for software developers to understand the complexity of software.