Agent-based simulation of open source evolution

Smith, N. and Capiluppi, A. and Ramil, J.F. (2006) Agent-based simulation of open source evolution. Software process: improvement and practice, 11 (4). pp. 423-434. ISSN 1077-4866

Documents
Smith_Capiluppi_Ramil-prosim 2005 special issue_issues_addressed_final.pdf
[img]
[Download]
[img]
Preview
PDF
Smith_Capiluppi_Ramil-prosim 2005 special issue_issues_addressed_final.pdf

171Kb

Official URL: http://dx.doi.org/10.1002/spip.280

Abstract

We present an agent-based simulation model developed to study how size, complexity and effort relate to each other in the development of open source software (OSS). In the model, many developer agents generate, extend, and re-factor code modules independently and in parallel. This accords with empirical observations of OSS development. To our knowledge, this is the first model of OSS evolution that includes the complexity of software modules as a limiting factor in productivity, the fitness of the software to its requirements, and the motivation of developers.
Validation of the model was done by comparing the simulated results against four measures of software evolution (system size, proportion of highly complex modules, level of complexity control work, and distribution of changes) for four large OSS systems. The simulated results resembled the observed data, except for system size: three of the OSS systems showed alternating patterns of super-linear and sub-linear growth, while the simulations produced only super-linear growth. However, the fidelity of the model for the other measures suggests that developer motivation and the limiting effect of complexity on productivity have a significant effect on the development of OSS systems and should be considered in any model of OSS development.

Item Type:Article
Additional Information:We present an agent-based simulation model developed to study how size, complexity and effort relate to each other in the development of open source software (OSS). In the model, many developer agents generate, extend, and re-factor code modules independently and in parallel. This accords with empirical observations of OSS development. To our knowledge, this is the first model of OSS evolution that includes the complexity of software modules as a limiting factor in productivity, the fitness of the software to its requirements, and the motivation of developers. Validation of the model was done by comparing the simulated results against four measures of software evolution (system size, proportion of highly complex modules, level of complexity control work, and distribution of changes) for four large OSS systems. The simulated results resembled the observed data, except for system size: three of the OSS systems showed alternating patterns of super-linear and sub-linear growth, while the simulations produced only super-linear growth. However, the fidelity of the model for the other measures suggests that developer motivation and the limiting effect of complexity on productivity have a significant effect on the development of OSS systems and should be considered in any model of OSS development.
Keywords:simulation models, software process, open source software, software evolution, productivity, metrics, Agent-based simulation
Subjects:G Mathematical and Computer Sciences > G400 Computer Science
Divisions:College of Science > School of Computer Science
ID Code:81
Deposited By: Bev Jones
Deposited On:22 Feb 2006
Last Modified:13 Mar 2013 08:21

Repository Staff Only: item control page