The Complexity Nature of Large-Scale Software Systems

Yan Dong,Qi Guo-Ning,Gu Xin-Jian
DOI: https://doi.org/10.1088/1009-1963/15/11/004
2006-01-01
Chinese Physics
Abstract:In software engineering, class diagrams are often used to describe the system's class structures in Unified Modelling Language (UML). A class diagram, as a graph, is a collection of static declarative model elements, such as classes, interfaces, and the relationships of their connections with each other. In this paper, class graphs are examined within several Java software systems provided by Sun and IBM, and some new features are found. For a large-scale Java software system, its in-degree distribution tends to an exponential distribution, while its out-degree and degree distributions reveal the power-law behaviour. And then a directed preferential-random model is established to describe the corresponding degree distribution features and evolve large-scale Java software systems.
What problem does this paper attempt to address?