@article {1631,
	title = {The evolution of the laws of software evolution},
	journal = {ACM Computing Surveys},
	volume = {46},
	year = {2013},
	month = {11/2013},
	pages = {1 - 28},
	abstract = { After more than 40 years of life, software evolution should be considered as a mature field. However, despite such a long history, many research questions still remain open, and controversial studies about the validity of the laws of software evolution are common. During the first part of these 40 years the laws themselves evolved to adapt to changes in both the research and the software industry environments. This process of adaption to new paradigms, standards, and practices stopped about 15 years ago, when the laws were revised for the last time. However, most controversial studies have been raised during this latter period. Based on a systematic and comprehensive literature review, in this paper we describe how and when the laws, and the software evolution field, evolved. We also address the current state of affairs about the validity of the laws, how they are perceived by the research community, and the developments and challenges that are likely to occur in the coming years.},
	issn = {03600300},
	doi = {10.1145/2543581.2543595},
	attachments = {https://flosshub.org/sites/flosshub.org/files/2013HerraizRRG_CSUR.pdf},
	author = {Herraiz, Israel and Rodriguez, Daniel and Gregorio Robles and Jesus M. Gonzalez-Barahona}
}
@article {gonzalez2013studying,
	title = {Studying the laws of software evolution in a long-lived FLOSS project},
	journal = {Journal of Software: Evolution and Process},
	year = {2013},
	publisher = {Wiley Online Library},
	abstract = {Some free, open-source software projects have been around for quite a long time, the longest living ones dating from the early 1980s. For some of them, detailed information about their evolution is available in source code management systems tracking all their code changes for periods of more than 15 years. This paper examines in detail the evolution of one of such projects, glibc, with the main aim of understanding how it evolved and how it matched Lehman{\textquoteright}s laws of software evolution. As a result, we have developed a methodology for studying the evolution of such long-lived projects based on the information in their source code management repository, described in detail several aspects of the history of glibc, including some activity and size metrics, and found how some of the laws of software evolution may not hold in this case.},
	url = {http://oa.upm.es/21355/1/smr1615.pdf},
	author = {Jesus M. Gonzalez-Barahona and Gregorio Robles and Herraiz, Israel and Ortega, Felipe}
}
@conference {1813,
	title = {Modification and developer metrics at the function level: Metrics for the study of the evolution of a software project},
	booktitle = {2012 3rd International Workshop on Emerging Trends in Software Metrics (WETSoM)},
	year = {2012},
	pages = {49 - 55},
	publisher = {IEEE},
	organization = {IEEE},
	address = {Zurich, Switzerland},
	abstract = {Software evolution, and particularly its growth, has been mainly studied at the file (also sometimes referred as module) level. In this paper we propose to move from the physical towards a level that includes semantic information by using functions or methods for measuring the evolution of a software system. We point out that use of functions-based metrics has many advantages over the use of files or lines of code. We demonstrate our approach with an empirical study of two Free/Open Source projects: a community-driven project, Apache, and a company-led project, Novell Evolution. We discovered that most functions never change; when they do their number of modifications is correlated with their size, and that very few authors who modify each; finally we show that the departure of a developer from a software project slows the evolution of the functions that she authored.
},
	isbn = {978-1-4673-1763-4},
	doi = {10.1109/WETSoM.2012.6226993},
	author = {Gregorio Robles and Herraiz, Israel and Daniel M. German and Izquierdo-Cortazar, Daniel}
}
@conference {941,
	title = {Evolution of the core team of developers in libre software projects},
	booktitle = {2009 6th IEEE International Working Conference on Mining Software Repositories (MSR)2009 6th IEEE International Working Conference on Mining Software Repositories},
	year = {2009},
	pages = {167 - 170},
	publisher = {IEEE},
	organization = {IEEE},
	address = {Vancouver, BC, Canada},
	abstract = {In many libre (free, open source) software projects, most of the development is performed by a relatively small number of persons, the "core team". The stability and permanence of this group of most active developers is of great importance for the evolution and sustainability of the project. In this position paper we propose a quantitative methodology to study the evolution of core teams by analyzing information from source code management repositories. The most active developers in different periods are identified, and their activity is calculated over time, looking for core team evolution patterns.},
	keywords = {core, cvs, cvsanaly, developers, evolution, gimp, scm},
	isbn = {978-1-4244-3493-0},
	doi = {10.1109/MSR.2009.5069497},
	attachments = {https://flosshub.org/sites/flosshub.org/files/167core-evolution.pdf},
	author = {Gregorio Robles and Jesus M. Gonzalez-Barahona and Herraiz, Israel}
}
@article {1236,
	title = {Tools for the Study of the Usual Data Sources found in Libre Software Projects},
	journal = {International Journal of Open Source Software and Processes},
	volume = {1},
	year = {2009},
	month = {31/2009},
	pages = {24 - 45},
	abstract = {Due to the open nature of Free/Libre/Open Source software projects, researchers have gained access to a rich set of development-related information. Although this information is publicly available on the Internet, obtaining and analyzing it in a convenient way is not an easy task and many considerations have to be taken into account. In this paper we present the most important data sources that can be found in libre software projects and that are studied by the research community: source code, source code management systems, mailing lists and bug tracking systems. We will give advice for the problems that can be found when retrieving and preparing the data sources for a posterior analysis, as well as provide information about the tools that support these tasks.},
	keywords = {bug tracking systems, data sources, mailing lists, scm, tools},
	issn = {1942-3934},
	doi = {10.4018/jossp.2009010102},
	attachments = {https://flosshub.org/sites/flosshub.org/files/robles.pdf},
	author = {Gregorio Robles and Gonz{\'a}lez-Barahona, Jes{\'u}s M. and Izquierdo-Cortazar, Daniel and Herraiz, Israel}
}
@conference {970,
	title = {Determinism and evolution},
	booktitle = {Proceedings of the 2008 international workshop on Mining software repositories  - MSR {\textquoteright}08},
	year = {2008},
	month = {05/2008},
	pages = {1-9},
	publisher = {ACM Press},
	organization = {ACM Press},
	address = {New York, New York, USA},
	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.},
	keywords = {changes, evolution, source code, sourceforge},
	isbn = {9781605580241},
	doi = {10.1145/1370750.1370752},
	attachments = {https://flosshub.org/sites/flosshub.org/files/p1-herraiz.pdf},
	author = {Gonz{\'a}lez-Barahona, Jes{\'u}s M. and Gregorio Robles and Herraiz, Israel}
}
@conference {Herraiz:2008:TSB:1370750.1370786,
	title = {Towards a simplification of the bug report form in eclipse},
	booktitle = {Proceedings of the 2008 international working conference on Mining software repositories},
	series = {MSR {\textquoteright}08},
	year = {2008},
	pages = {145{\textendash}148},
	publisher = {ACM},
	organization = {ACM},
	address = {New York, NY, USA},
	abstract = {We believe that the bug report form of Eclipse contains too many fields, and that for some fields, there are too many options. In this MSR challenge report, we focus in the case of the severity field. That field contains seven different levels of severity. Some of them seem very similar, and it is hard to distinguish among them. Users assign severity, and developers give priority to the reports depending on their severity. However, if users can not distinguish well among the various severity options, they will probably assign different priorities to bugs that require the same priority. We study the mean time to close bugs reported in Eclipse, and how the severity assigned by users affects this time. The results shows that classifying by time to close, there are less clusters of bugs than levels of severity. We therefore conclude that there is a need to make a simpler bug report form.},
	keywords = {bug fixing, bug report, bug tracking system, classification, eclipse, msr challenge, severity},
	isbn = {978-1-60558-024-1},
	doi = {http://doi.acm.org/10.1145/1370750.1370786},
	url = {http://doi.acm.org/10.1145/1370750.1370786},
	author = {Herraiz, Israel and Daniel M. German and Jesus M. Gonzalez-Barahona and Gregorio Robles}
}
@conference {1017,
	title = {Forecasting the Number of Changes in Eclipse Using Time Series Analysis},
	booktitle = {Fourth International Workshop on Mining Software Repositories (MSR{\textquoteright}07:ICSE Workshops 2007)},
	year = {2007},
	pages = {32 - 32},
	publisher = {IEEE},
	organization = {IEEE},
	address = {Minneapolis, MN, USA},
	abstract = {In order to predict the number of changes in the following months for the project Eclipse, we have applied a statistical (non-explanatory) model based on time series analysis. We have obtained the monthly number of changes in the CVS repository of Eclipse, using the CVSAnalY tool. The input to our model was the filtered series of the number of changes per month, and the output was the number of changes per month for the next three months. Then we aggregated the results of the three months to obtain the total number of changes in the given period in the challenge.},
	keywords = {change management, cvs, cvsanaly, eclipse, prediction},
	isbn = {0-7695-2950-X},
	doi = {10.1109/MSR.2007.10},
	attachments = {https://flosshub.org/sites/flosshub.org/files/28300032.pdf},
	author = {Herraiz, Israel and Jesus M. Gonzalez-Barahona and Gregorio Robles}
}
@conference {1013,
	title = {Impact of the Creation of the Mozilla Foundation in the Activity of Developers},
	booktitle = {Fourth International Workshop on Mining Software Repositories (MSR{\textquoteright}07:ICSE Workshops 2007)},
	year = {2007},
	pages = {28 - 28},
	publisher = {IEEE},
	organization = {IEEE},
	address = {Minneapolis, MN, USA},
	abstract = {During 2003, the Mozilla project transitioned from company-promoted (sponsored by AOL) to community-promoted (sponsored by the Mozilla Foundation). What happened to the group of developers during this transition? There was any significant impact on its activity or composition? To answer these questions, we have performed an analysis of the CVS repository of Mozilla, using the CVSAnalY tool, finding little on activity, but dramatic changes in the the composition of the development team.},
	keywords = {cvs, cvsanaly, developers, mining challenge, mozilla, msr challenge, revision history},
	isbn = {0-7695-2950-X},
	doi = {10.1109/MSR.2007.15},
	attachments = {https://flosshub.org/sites/flosshub.org/files/28300028.pdf},
	author = {Jesus M. Gonzalez-Barahona and Gregorio Robles and Herraiz, Israel}
}
@conference {1006,
	title = {Towards a Theoretical Model for Software Growth},
	booktitle = {Fourth International Workshop on Mining Software Repositories (MSR{\textquoteright}07:ICSE Workshops 2007)},
	year = {2007},
	pages = {21 - 21},
	publisher = {IEEE},
	organization = {IEEE},
	address = {Minneapolis, MN, USA},
	abstract = {Software growth (and more broadly, software evolution) is usually considered in terms of size or complexity of source code. However in different studies, usually different metrics are used, which make it difficult to compare approaches and results. In addition, not all metrics are equally easy to calculate for a given source code, which leads to the question of which one is the easiest to calculate without losing too much information. To address both issues, in this paper present a comprehensive study, based on the analysis of about 700,000 C source code files, calculating several size and complexity metrics for all of them. For this sample, we have found double Pareto statistical distributions for all metrics considered, and a high correlation between any two of them. This would imply that any model addressing software growth should produce this Pareto distributions, and that analysis based on any of the considered metrics should show a similar pattern, provided the sample of files considered is large enough.},
	keywords = {C, complexity, evolution, freebsd, growth, halstead, lines of code, loc, mccabe, metrics, scm, size, sloc, sloccount, source code},
	isbn = {0-7695-2950-X},
	doi = {10.1109/MSR.2007.31},
	attachments = {https://flosshub.org/sites/flosshub.org/files/28300021.pdf},
	author = {Herraiz, Israel and Jesus M. Gonzalez-Barahona and Gregorio Robles}
}
@conference {Herraiz:2006:CSN:1116163.1116405,
	title = {Comparison Between SLOCs and Number of Files As Size Metrics for Software Evolution Analysis},
	booktitle = {Proceedings of the Conference on Software Maintenance and Reengineering},
	series = {CSMR {\textquoteright}06},
	year = {2006},
	pages = {206{\textendash}213},
	publisher = {IEEE Computer Society},
	organization = {IEEE Computer Society},
	address = {Washington, DC, USA},
	keywords = {empirical studies, libre software, metrics, software evolution},
	isbn = {0-7695-2536-9},
	url = {http://dl.acm.org/citation.cfm?id=1116163.1116405},
	author = {Herraiz, Israel and Gregorio Robles and Gonzalez-Barahon, Jes us M.}
}
@conference {Robles05anempirical,
	title = {An empirical approach to Software Archaeology},
	booktitle = {In: Poster Proceedings of the International Conference on Software Maintenance},
	year = {2005},
	pages = {47{\textendash}50},
	abstract = {The term {\textquotedblleft}software archaeology {\textquotedblright} provides a useful metaphor of the tasks that a software developer has to face when performing maintenance on large software projects. The source code of a program at any point in time is the result of many different changes performed in the past, usually by several people, which can be tracked when a version control system is used. We have designed a methodology for analyzing with detail the age of the source code in such cases, and have applied it to several large software projects. As a part of the methodology, we define a set of indexes which can help to characterize the history of a software system, and discuss how those could be used to estimate its past and future maintenance. We also show how our approach to software archaeology is simple both conceptually and computationally, but still very powerful at uncovering useful information.},
	author = {Gregorio Robles and Jesus M. Gonzalez-Barahona and Herraiz, Israel}
}
