20.01.2014 Views

thesis - Faculty of Information and Communication Technologies ...

thesis - Faculty of Information and Communication Technologies ...

thesis - Faculty of Information and Communication Technologies ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Chapter 5. Growth Dynamics<br />

can change significantly as the s<strong>of</strong>tware system evolves as can be seen<br />

with the Number <strong>of</strong> Fields (NOF) metric in Proguard (see Figure 5.11).<br />

Moreover, we found repeatedly that the Gini coefficients for metrics that<br />

may be considered correlated, diverge independently <strong>of</strong> the underlying<br />

metric data relationship. Though Load Instruction Count <strong>and</strong> Store Instruction<br />

Count are strongly correlated (<strong>of</strong>ten well over 0.90), we need<br />

to analyze summary measures derived from them separately also. We<br />

observed in some instances that the Load Instruction Count Gini Coefficients<br />

changed independently <strong>of</strong> the Store Instruction Count Gini Coefficient<br />

values. For example, between the release 3.0 <strong>and</strong> 3.1 <strong>of</strong> Check-<br />

Style the Load Instruction Count Gini Coefficient changes from 0.870 to<br />

0.804 while Store Instruction Count Gini Coefficient only changes from<br />

0.831 to 0.827.<br />

Interestingly, our findings contradict the recommendation provided in<br />

earlier work by other researchers [40, 41, 110, 120] who observed a<br />

strong correlation between various size <strong>and</strong> complexity metrics <strong>and</strong><br />

hence argued that a smaller sub-set <strong>of</strong> the measures is adequate. However,<br />

the earlier observations did not consider how the strength <strong>of</strong> the<br />

correlation changes over time. We however find that it is important to<br />

consider multiple dimensions since the strength <strong>of</strong> the correlation cannot<br />

be considered to be a general property <strong>and</strong> it is clearly influenced<br />

during the maintenance <strong>of</strong> a s<strong>of</strong>tware system. Furthermore, an abnormal<br />

change in the correlation between various metrics can be used as<br />

a trigger for further investigation.<br />

5.5.2 Dynamics <strong>of</strong> Growth<br />

How is maintenance effort focused by developers? When developers<br />

create a new version, they build it on top <strong>of</strong> existing code by adding new<br />

classes, modifying <strong>and</strong> potentially removing some existing classes. If the<br />

tendency <strong>of</strong> developers is to grow the size <strong>and</strong> complexity <strong>of</strong> a system<br />

by extending existing classes, then over time this preference causes<br />

older classes to gain size <strong>and</strong> complexity. This preferential modification<br />

will be observable as an upward trend in the Gini Coefficient values<br />

123

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!