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 2. S<strong>of</strong>tware Evolution<br />

In our study <strong>of</strong> change we aim to address these gaps by focusing our<br />

effort towards developing statistical models that can help establish normal<br />

<strong>and</strong> unusual patterns <strong>of</strong> change. We also use these models to underst<strong>and</strong><br />

better how evolving s<strong>of</strong>tware systems grow, in particular, we<br />

can identify if growth is achieved by creating new abstractions, or if<br />

existing abstractions are modified <strong>and</strong> extended.<br />

2.6 Research Questions<br />

Evolution in s<strong>of</strong>tware has been a field that has been investigated over<br />

the past few decades, with a heavier emphasis on object-oriented s<strong>of</strong>tware<br />

systems over the past decade. These studies consistently establish<br />

that evolution causes growth as s<strong>of</strong>tware is adapted to meet changing<br />

user requirements. In this chapter, we presented a summary <strong>of</strong> the key<br />

studies related to our focus areas – growth <strong>and</strong> change. A common aspect<br />

across much <strong>of</strong> the previous work is that the studies have focused<br />

on a few s<strong>of</strong>tware systems, used different input data sources in their<br />

investigation, <strong>and</strong> the abstractions under study have not been consistent<br />

across these studies. Furthermore, the current underst<strong>and</strong>ing <strong>of</strong><br />

growth has been established primarily by studies <strong>of</strong> aggregate system<br />

level size <strong>and</strong> complexity growth rather than by how this growth is distributed<br />

across the various parts <strong>of</strong> the s<strong>of</strong>tware system. The focus<br />

<strong>of</strong> studies on change has been on identification <strong>of</strong> attributes that can<br />

make an entity change-prone, with a significant emphasis on changes<br />

during the construction <strong>of</strong> a release rather than post-release.<br />

In order to address the gaps identified, we framed a set <strong>of</strong> research<br />

questions related to growth <strong>and</strong> change. As indicated earlier, our intention<br />

is to study growth in terms <strong>of</strong> how it is distributed across the<br />

various classes within an object-oriented s<strong>of</strong>tware system. We investigate<br />

change as a means to better underst<strong>and</strong> growth as well as to how<br />

<strong>and</strong> where the maintenance effort is focused by the developers as they<br />

modify, add <strong>and</strong> remove classes.<br />

39

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

Saved successfully!

Ooh no, something went wrong!