Modeling the growth of complex software function dependency networks |
| |
Authors: | James Ma Daniel Zeng Huimin Zhao |
| |
Affiliation: | (1) Department of Management Information Systems, The University of Arizona, McClelland Hall 430K, Tucson, AZ 85721, USA;(2) School of Business, Menlo College, Atherton, CA, USA;(3) The Key Lab of Complex Systems and Intelligence Science, Institute of Automation, Chinese Academy of Sciences, Beijing, China;(4) Sheldon B. Lubar School of Business, University of Wisconsin-Milwaukee, Milwaukee, WI, USA; |
| |
Abstract: | Software engineering efforts can potentially benefit much from a good understanding of the structures of existing software
systems and the processes governing their development. Towards that end, we study software systems by means of the complex
network analysis framework. We model a software package as a network, with nodes representing the functions in the package
and edges representing the dependencies among the functions. Our empirical analysis of five widely-adopted open-source software
packages reveals a set of interesting features of such networks, which cannot be adequately reproduced by existing complex
network models. We then set out to develop a new network growth model, explicitly imitating generally-advocated software development
principals, such as divide-and-conquer, modularization, high intra-module cohesion, and low inter-module coupling. Results
of our analytical derivations and numeric studies show that our model can more closely reproduce the particular features exhibited
by real-world software packages, thus hopefully better explaining the phenomena of concern. |
| |
Keywords: | |
本文献已被 SpringerLink 等数据库收录! |
|