[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/1370750.1370752acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article

Determinism and evolution

Published: 10 May 2008 Publication History

Abstract

It has been proposed that software evolution follows a Self-Organized Criticality (SOC) dynamics. This fact is supported by the presence of long range correlations in the time series of the number of changes made to the source code over time. Those long range correlations imply that the current state of the project was determined time ago. In other words, the evolution of the software project is governed by a sort of determinism. But this idea seems to contradict intuition. To explore this apparent contradiction, we have performed an empirical study on a sample of 3, 821 libre (free, open source) software projects, finding that their evolution projects is short range correlated. This suggests that the dynamics of software evolution may not be SOC, and therefore that the past of a project does not determine its future except for relatively short periods of time, at least for libre software.

References

[1]
I. Antoniades, I. Samoladas, I. Stamelos, L. Aggelis, and G. L. Bleris. Dynamical simulation models of the Open Source development process. In S. Koch, editor, Free/Open Source Software Development, pages 174--202. Idea Group Publishing, Hershey, PA, 2004.
[2]
G. Antoniol, G. Casazza, M. D. Penta, and E. Merlo. Modeling clones evolution through time series. In Proceedings of the International Conference on Software Maintenance, 2001.
[3]
K. Beecher, C. Boldyreý, A. Capiluppi, and S. Rank. Evolutionary success of open source software: an investigation into exogenous drivers. In Third International ERCIM Symposium on Software Evolution. ERCIM, 2007.
[4]
A. Capiluppi and M. Michlmayr. Open Source development, adoption and innovation, chapter From the Cathedral to the Bazaar: An Empirical Study of the Lifecycle of Volunteer Community Projects, pages 31--44. IFIP: International Federation for Information Processing. Springer Boston, 2007.
[5]
F. Caprio, G. Casazza, M. D. Penta, and U. Villano. Measuring and predicting the Linux kernel evolution. In Proceedings of the International Workshop of Empirical Studies on Software Maintenance, Florence, Italy, 2001.
[6]
J.-M. Dalle and P. A. David. The allocation of software development resources in Open Source production mode. Technical report, SIEPR Policy paper No. 02-027, SIEPR, Stanford, USA, 2003. http://siepr.stanford.edu/papers/pdf/02-27.pdf.
[7]
A. R. Fasolino, D. Natale, A. Poli, and A. Alberigi-Quaranta. Metrics in the development and maintenance of software: an application in a large scale environment. Journal of Software Maintence: Research and Practice, 12:343--355, 2000.
[8]
M. Godfrey and Q. Tu. Evolution in Open Source software: A case study. In Proceedings of the International Conference on Software Maintenance, pages 131--142, San Jose, California, 2000.
[9]
M. Godfrey and Q. Tu. Growth, evolution, and structural change in open source software. In Internation Workshop on Principles of Software Evolution, Vienna, Austria, September 2001.
[10]
I. Herraiz, J. M. Gonzalez-Barahona, and G. Robles. Forecasting the number of changes in Eclipse using time series analysis. In International Workshop on Mining Software Repositories. IEEE Computer Society, 2007.
[11]
I. Herraiz, J. M. Gonzalez-Barahona, G. Robles, and D. M. German. On the prediction of the evolution of libre software projects. In IEEE International Conference on Software Maintenance, pages 405--414. IEEE Computer Society, 2007.
[12]
J. Howison, M. Conklin, and K. Crowston. FLOSSMole: a collaborative repository for FLOSS research data and analyses. International Journal of Information Technology and Web Engineering, 1(3):17--26, July-September 2006.
[13]
C. F. Kemerer and S. Slaughter. An empirical approach to studying software evolution. IEEE Transactions on Software Engineering, 25(4):493--509, 1999.
[14]
S. Koch. Evolution of Open Source Software systems - a large-scale investigation. In Proceedings of the 1st International Conference on Open Source Systems, Genova, Italy, July 2005.
[15]
M. M. Lehman and L. A. Belady, editors. Program Evolution. Processes of Software Change. Academic Press Inc., 1985.
[16]
M. M. Lehman, J. F. Ramil, and U. Sandler. An approach to modelling long-term growth trends in software systems. In Internation Conference on Software Maintenance, pages 219--228, Florence, Italy, November 2001.
[17]
M. M. Lehman, J. F. Ramil, P. D. Wernick, D. E. Perry, and W. M. Turski. Metrics and laws of software evolution - the nineties view. In METRICS '97: Proceedings of the 4th International Symposium on Software Metrics, page 20, nov 1997.
[18]
N. H. Madhavji, J. Fernandez-Ramil, and D. E. Perry, editors. Software Evolution and Feedback. Theory and Practice. Wiley, 2006.
[19]
Y. Peng, F. Li, and A. Mili. Modeling the evolution of operating systems: An empirical study. The Journal of Systems and Software, 80(1):1--15, 2007.
[20]
E. S. Raymond. The cathedral and the bazar. First Monday, 3(3), March 1998. http://www.firstmonday.dk/issues/issue3 3/raymond/.
[21]
G. Robles, J. J. Amor, J. M. Gonzalez-Barahona, and I. Herraiz. Evolution and growth in large libre software projects. In Proceedings of the International Workshop on Principles in Software Evolution, pages 165--174, Lisbon, Portugal, September 2005.
[22]
G. Robles, J. J. Merelo, and J. M. Gonzalez-Barahona. Self-organized development in libre software: a model based on the stigmergy concept. In Proceedings of the 6th International Workshop on Software Process Simulation and Modeling (ProSim 2005), St.Louis, Missouri, USA, May 2005.
[23]
R. H. Shumway and D. S. Stoýer. Time Series Analysis and Applications. With R Examples. Springer Texts in Statistics. Springer, 2006.
[24]
W. M. Turski. Reference model for smooth growth of software systems. IEEE Transactions on Software Engineering, 22(8):599--600, 1996.
[25]
W. M. Turski. The reference model for smooth growth of software systems revisited. IEEE Transactions on Software Engineering, 28(8):814--815, 2002.
[26]
J. Wu. Open Source Software evolution and its dynamics. PhD thesis, University of Waterloo, 2006.
[27]
J. Wu, R. Holt, and A. E. Hassan. Empirical evidence for SOC dynamics in software evolution. In IEEE International Conference on Software Maintenance, pages 244--254. IEEE Computer Society, 2007.
[28]
C. C. H. Yuen. An empirical approach to the study of errors in large software under maintenance. In Proceedings of the International Conference on Software Maintenance, 1985.
[29]
C. C. H. Yuen. A statistical rationale for evolution dynamics concepts. In Proceedings of the International Conference on Software Maintenance, 1987.
[30]
C. C. H. Yuen. On analyzing maintenance process data at the global and detailed levels. In Proceedings of the International Conference on Software Maintenance, pages 248--255, 1988.

Cited By

View all
  • (2024)SevPredict: Exploring the Potential of Large Language Models in Software MaintenanceAI10.3390/ai50401325:4(2739-2760)Online publication date: 5-Dec-2024
  • (2022)A Systematic Review of Attributes and Techniques for Open Source Software Evolution AnalysisResearch Anthology on Agile Software, Software Development, and Testing10.4018/978-1-6684-3702-5.ch006(84-106)Online publication date: 2022
  • (2021)A Systematic Review of Attributes and Techniques for Open Source Software Evolution AnalysisResearch Anthology on Usage and Development of Open Source Software10.4018/978-1-7998-9158-1.ch001(1-23)Online publication date: 2021
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
MSR '08: Proceedings of the 2008 international working conference on Mining software repositories
May 2008
162 pages
ISBN:9781605580241
DOI:10.1145/1370750
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 10 May 2008

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. long term process
  2. self-organized criticality
  3. short term process
  4. software evolution
  5. time series analysis

Qualifiers

  • Research-article

Conference

ICSE '08
Sponsor:

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)6
  • Downloads (Last 6 weeks)4
Reflects downloads up to 11 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2024)SevPredict: Exploring the Potential of Large Language Models in Software MaintenanceAI10.3390/ai50401325:4(2739-2760)Online publication date: 5-Dec-2024
  • (2022)A Systematic Review of Attributes and Techniques for Open Source Software Evolution AnalysisResearch Anthology on Agile Software, Software Development, and Testing10.4018/978-1-6684-3702-5.ch006(84-106)Online publication date: 2022
  • (2021)A Systematic Review of Attributes and Techniques for Open Source Software Evolution AnalysisResearch Anthology on Usage and Development of Open Source Software10.4018/978-1-7998-9158-1.ch001(1-23)Online publication date: 2021
  • (2018)A Systematic Review of Attributes and Techniques for Open Source Software Evolution AnalysisOptimizing Contemporary Application and Processes in Open Source Software10.4018/978-1-5225-5314-4.ch001(1-23)Online publication date: 2018
  • (2016)Open Source Software EvolutionInternational Journal of Open Source Software and Processes10.4018/IJOSSP.20160101017:1(1-27)Online publication date: 1-Jan-2016
  • (2014)What can changes tell about software processes?Proceedings of the 5th International Workshop on Emerging Trends in Software Metrics10.1145/2593868.2593869(1-7)Online publication date: 3-Jun-2014
  • (2013)The evolution of the laws of software evolutionACM Computing Surveys10.1145/2543581.254359546:2(1-28)Online publication date: 27-Dec-2013
  • (2013)Towards a better understanding of software evolutionJournal of Software: Evolution and Process10.1002/smr.56425:3(193-218)Online publication date: 1-Mar-2013
  • (2012)A Survey on Mining Software RepositoriesIEICE Transactions on Information and Systems10.1587/transinf.E95.D.1384E95.D:5(1384-1406)Online publication date: 2012
  • (2012)Using Pig as a data preparation language for large-scale mining software repositories studiesJournal of Systems and Software10.1016/j.jss.2011.07.03485:10(2195-2204)Online publication date: 1-Oct-2012
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media