Self-organization process in open-source software: An empirical study

Software systems must continually evolve to adapt to new functional requirements or quality requirements to remain competitive in the marketplace. However, different software systems follow different strategies to evolve, affecting both the release plan and the quality of these systems. In this paper, software evolution is considered as a self-organization process and the difference between closed-source software and open-source software is discussed in terms of self-organization. In particular, an empirical study of the evolution of Linux from version 2.4.0 to version 2.6.13 is reported. The study shows how open-source software systems self-organize to adapt to functional requirements and quality requirements.

[1]  Michael Conrad,et al.  Towards High Evolvability Dynamics Introduction , 1998 .

[2]  Stephen R. Schach,et al.  Quality Impacts of Clandestine Common Coupling , 2003, Software Quality Journal.

[3]  S. Ramaswamy,et al.  Software and Biological Evolvability: A Comparison Using Key Properties , 2006, 2006 Second International IEEE Workshop on Software Evolvability (SE'06).

[4]  Katherine J. Stewart,et al.  Observations on patterns of development in open source software projects , 2005, ACM SIGSOFT Softw. Eng. Notes.

[5]  C. Landauer,et al.  Self managed adaptability with wrappings , 2005, IEEE International Workshop on Software Evolvability (Software-Evolvability'05).

[6]  Eric S. Raymond,et al.  The Cathedral and the Bazaar , 2000 .

[7]  G. K. Bhattacharyya,et al.  Statistical Concepts And Methods , 1978 .

[8]  John J. McArdle Growth Curve Analysis , 2001 .

[9]  Dewayne E. Perry,et al.  Metrics and laws of software evolution-the nineties view , 1997, Proceedings Fourth International Software Metrics Symposium.

[10]  Stephen R. Schach,et al.  Categorization of common coupling and its application to the maintainability of the Linux kernel , 2004, IEEE Transactions on Software Engineering.

[11]  Michael W. Godfrey,et al.  Evolution in open source software: a case study , 2000, Proceedings 2000 International Conference on Software Maintenance.

[12]  Stephen R. Schach,et al.  Measuring the maintainability of open-source software , 2005, 2005 International Symposium on Empirical Software Engineering, 2005..

[13]  Roger S. Pressman,et al.  Software Engineering: A Practitioner's Approach , 1982 .

[14]  D HerbslebJames,et al.  Two case studies of open source software development , 2002 .

[15]  Qiang Tu,et al.  Growth, evolution, and structural change in open source software , 2001, IWPSE '01.

[16]  Liguo Yu Indirectly predicting the maintenance effort of open-source software: Research Articles , 2006 .

[17]  Stephen R. Schach,et al.  Maintainability of the Linux kernel , 2002, IEE Proc. Softw..

[18]  Kouichi Kishida,et al.  Evolution patterns of open-source software systems and communities , 2002, IWPSE '02.

[19]  J. Herbsleb,et al.  Two case studies of open source software development: Apache and Mozilla , 2002, TSEM.

[20]  Stephen R. Schach,et al.  Open-Source Change Logs , 2004, Empirical Software Engineering.

[21]  Liguo Yu Indirectly predicting the maintenance effort of open-source software , 2006, J. Softw. Maintenance Res. Pract..

[22]  Roger S. Pressman,et al.  Software engineering (3rd ed.): a practitioner's approach , 1992 .

[23]  P. Wernick,et al.  A simulation model of self-organising evolvability in software systems , 2005, IEEE International Workshop on Software Evolvability (Software-Evolvability'05).

[24]  Ioannis Stamelos,et al.  Open source software development should strive for even greater code maintainability , 2004, CACM.

[25]  Giancarlo Succi,et al.  An empirical study of open-source and closed-source software products , 2004, IEEE Transactions on Software Engineering.

[26]  Per Bak,et al.  How Nature Works: The Science of Self‐Organized Criticality , 1997 .

[27]  Walt Scacchi,et al.  Experiences in Discovering, Modeling, and Reenacting Open Source Software Development Processes , 2005, ISPW.

[28]  J. O. Rawlings,et al.  Applied Regression Analysis , 1998 .