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 2. S<strong>of</strong>tware Evolution<br />
The observation <strong>of</strong> segmented growth has been used to suggest that<br />
developers periodically restructure <strong>and</strong> reorganise the code base potentially<br />
causing a temporary reduction in size <strong>and</strong> complexity followed<br />
by a period <strong>of</strong> renewed growth [175]. An example <strong>of</strong> this segmented<br />
growth has been captured by Capiluppi et al. [38–41] in a sequence <strong>of</strong><br />
studies. They presented evidence that shows that open source s<strong>of</strong>tware<br />
systems tend to have segmented growth where each segment may have<br />
a different growth rate. For instance, Capiluppi et al. note that Gaim<br />
(an internet chat s<strong>of</strong>tware that was investigated in their study) grows at<br />
a super-linear rate early in its life cycle, with a large gap in development<br />
followed by a linear growth rate.<br />
The segmented growth pattern has also been confirmed by Smith et<br />
al. [256] <strong>and</strong> by Wu et al. [304,305]. Smith et al. [256] studied 25 open<br />
source systems developed in C/C++ <strong>and</strong> showed that growth rates are<br />
not consistent during the evolution <strong>of</strong> a s<strong>of</strong>tware system <strong>and</strong> that they<br />
can change. More recently, Wu et al. [304,305] presented evidence <strong>of</strong> a<br />
punctuated growth in open source s<strong>of</strong>tware system based on a study <strong>of</strong><br />
3 systems (including Linux). Wu et al. observed that developers work<br />
in periodic bursts <strong>of</strong> activity, where intensive effort goes into creating a<br />
major release followed by a less active period where minor defects are<br />
corrected. Additionally, work done by Hsi et al. [123] has also shown<br />
how the evolutionary drivers result in asymmetric <strong>and</strong> clumpy growth.<br />
Summary<br />
Studies <strong>of</strong> s<strong>of</strong>tware evolution that have investigated the phenomenon<br />
<strong>of</strong> growth have shown that the rate <strong>of</strong> growth can be super-linear, linear<br />
or sub-linear. Furthermore, since this growth has been shown to<br />
be segmented, there are limitations in the value <strong>of</strong>fered by an underst<strong>and</strong>ing<br />
<strong>of</strong> the overall growth rate. Additionally, the lack <strong>of</strong> consistency<br />
with respect to the observed growth rate in the studies <strong>of</strong> evolution<br />
[101,127,152,153,192,217,239] shows that there are limitations<br />
within the explanation <strong>of</strong> the dynamics as postulated by the laws <strong>of</strong><br />
s<strong>of</strong>tware evolution [175]. Specifically, there is evidence to suggest that<br />
the complexity that arises due to evolution does not necessarily create<br />
28