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 6. Change Dynamics<br />
However, a serious investigation <strong>of</strong> change at higher level <strong>of</strong> abstraction<br />
remains to be done <strong>and</strong> we intend to consider it in future work.<br />
6.5 Limitations<br />
In order to place our study in context, we highlight some <strong>of</strong> the known<br />
limitations <strong>of</strong> our approach in addition to our findings.<br />
The change detection method used in this work may miss a small set<br />
<strong>of</strong> classes if the change is not measurable in the metrics under consideration.<br />
The accuracy can be improved by adding further metrics<br />
<strong>and</strong> additional aspects like a comparison <strong>of</strong> the call graph. The value<br />
<strong>of</strong> this additional complexity remains as a topic for consideration in our<br />
future work. Furthermore, our distance measure compares the initial<br />
version <strong>of</strong> a class to the final version. This method will miss edits where<br />
a class is modified <strong>and</strong> returned back to its original shape, as seen by<br />
our change detection technique. This limitation can be addressed by<br />
computing a distance measure incrementally. As a consequence, the<br />
analysis approach will need to be adjusted to take into consideration<br />
the way the metric information is being collected.<br />
Our method <strong>of</strong> computing modification misses classes that have been<br />
renamed; they will be considered as a deletion (in the earlier version)<br />
<strong>and</strong> an addition (to the later version). However, <strong>of</strong> the few classes that<br />
are deleted (less than 4% in general), a subset might be class renames.<br />
We checked if a class has indeed been renamed manually in 300 r<strong>and</strong>omly<br />
selected instances. Less than 5% <strong>of</strong> the classes that we checked<br />
can be considered refactored with a name change. Based on this observation,<br />
the benefit from using a complex algorithm to detect renamed<br />
classes is likely to have at best a minimal overall impact <strong>and</strong> our overall<br />
conclusions <strong>and</strong> recommendations will still hold.<br />
We have also not investigated in depth why changing classes have higher<br />
than normal In-Degree Count. We speculate that the introduction <strong>of</strong><br />
new clients creates the need for adaptations. Other possibilities are<br />
that (i) new clients introduce new requirements, but that suggests new<br />
179