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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Chapter 6. Change Dynamics<br />

abstract classes or enum declarations. The typical zero distance change<br />

in these classes involves modifications such as reordering <strong>of</strong> parameters<br />

in method signatures, renaming fields, parameters or methods, as<br />

well as changes to type names (return types or dependent types).<br />

In all <strong>of</strong> the systems that we studied, we have not found an instance<br />

where all 54 metrics have changed. The maximum that we found was<br />

34 changed metric values. However, the set <strong>of</strong> changed metrics was<br />

different for different classes <strong>and</strong> systems.<br />

6.2.4 Modified Classes <strong>and</strong> Popularity<br />

In the previous sections we addressed the probability, frequency <strong>and</strong><br />

distribution <strong>of</strong> change. But, what characterizes the classes that do<br />

change? In particular, does popularity increase the stability <strong>of</strong> a class?<br />

In order to answer this question, within every release across all systems<br />

in our data set we analysed the proportion <strong>of</strong> classes that are popular<br />

p v (Equation 6.2.11), against the proportion <strong>of</strong> all the popular classes<br />

that are modified cv p (Equation 6.2.12). In the following two equations,<br />

Nv p is the set <strong>of</strong> popular classes, Cv p is the set <strong>of</strong> popular classes that are<br />

modified, <strong>and</strong> N v is the set <strong>of</strong> classes in version v.<br />

p v = |N p v |<br />

|N v |<br />

(6.2.11)<br />

c p v = |Cp v |<br />

|C v |<br />

(6.2.12)<br />

In order to ensure sufficient statistical power (in terms <strong>of</strong> our ability<br />

to compare both samples), we eliminate releases where less than 30<br />

classes have changed [271] (Chapter1). Approximately 20% <strong>of</strong> the releases<br />

in our data set have less than 30 modified classes <strong>and</strong> these have<br />

been excluded from our data analysis.<br />

157

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

Saved successfully!

Ooh no, something went wrong!