thesis - Faculty of Information and Communication Technologies ...
thesis - Faculty of Information and Communication Technologies ...
thesis - Faculty of Information and Communication Technologies ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Chapter 3. Data Selection Methodology<br />
The selection criteria that each project must satisfy are as follows:<br />
1. The system must be developed for the Java virtual machine. Source<br />
code <strong>and</strong> compiled binaries are available for each release.<br />
2. The s<strong>of</strong>tware is a single coherent system, that is, it is a distribution<br />
<strong>of</strong> a collection <strong>of</strong> related components packaged together.<br />
3. At least 15 releases <strong>of</strong> the system are available. Only complete<br />
releases with a version identifier are considered. Branches <strong>and</strong><br />
releases not derived from the main system tree are ignored. Minor<br />
<strong>and</strong> major versions are both considered (for instance, Version<br />
2.0, 2.1 <strong>and</strong> 3.0 are all considered. In this case, the version with<br />
identifier 2.1 is <strong>of</strong>ten a release that provides minor enhancements<br />
<strong>and</strong>/or defect corrections).<br />
4. The system has been in actively development <strong>and</strong> use for at least<br />
36 months.<br />
5. The system comprises <strong>of</strong> at least 100 types (i.e., classes <strong>and</strong> interfaces)<br />
in all releases under study.<br />
6. Change logs do exist. This data provides the additional information<br />
to underst<strong>and</strong> the rationale behind the changes.<br />
Further to the criteria for individual projects, we set a target <strong>of</strong> collecting<br />
a minimum <strong>of</strong> 30 different s<strong>of</strong>tware projects in order to ensure<br />
we have sufficient diversity in our data set allowing some flexibility in<br />
generalising our conclusions.<br />
Rationale <strong>of</strong> Selection Criteria<br />
Java is currently a popular language with wide spread use in both open<br />
source <strong>and</strong> commercial projects. This popularity <strong>and</strong> usage has resulted<br />
in a large amount <strong>of</strong> s<strong>of</strong>tware developed using the Java programming<br />
language. Despite its popularity <strong>and</strong> use in a variety <strong>of</strong> domains,<br />
there are only a few studies that exclusively study release histories <strong>of</strong><br />
Java s<strong>of</strong>tware systems [21, 193, 208, 270, 319]. Further, these studies<br />
48