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

used to guide development teams to identify abnormal growth patterns.<br />

Further, we can also verify if developers follow what are considered good<br />

s<strong>of</strong>tware engineering practice <strong>and</strong> avoid god classes [237] as s<strong>of</strong>tware<br />

evolves. This form <strong>of</strong> analysis is also helpful in early identification <strong>of</strong><br />

abnormal <strong>and</strong> unusual changes. This is necessary because research<br />

into s<strong>of</strong>tware reliability shows us that structurally complex parts <strong>of</strong> the<br />

s<strong>of</strong>tware tend to contain a higher rate <strong>of</strong> defects [20,205,281,317] <strong>and</strong><br />

early identification <strong>of</strong> parts that are gaining in complexity will allow us<br />

to take corrective actions sooner.<br />

In our study we aim to close these gap in our underst<strong>and</strong>ing <strong>and</strong> observe<br />

evolution from a different perspective. Rather than use global<br />

size growth models to infer support for laws <strong>and</strong> underst<strong>and</strong> the nature<br />

<strong>of</strong> evolution, we study s<strong>of</strong>tware evolution by observing how the<br />

distribution <strong>of</strong> size <strong>and</strong> complexity changes over time. More specifically,<br />

we undertake a longitudinal study that constructs probability density<br />

functions <strong>of</strong> different metrics collected from the s<strong>of</strong>tware systems, <strong>and</strong><br />

builds a descriptive model <strong>of</strong> evolution by observing how these metric<br />

distributions change over time.<br />

2.5 Studies <strong>of</strong> Change<br />

It is a widely accepted that s<strong>of</strong>tware systems that are in active use need<br />

to be changed at some or many stages <strong>of</strong> its life in order to stay useful<br />

[175, 188, 192]. Given that change is the one inherent constant <strong>of</strong><br />

an active <strong>and</strong> used s<strong>of</strong>tware system, the key to a successful s<strong>of</strong>tware<br />

evolution approach lies, however, not only in adapting a system to support<br />

the new requirements [87], but also in underst<strong>and</strong>ing the nature<br />

<strong>and</strong> the dynamics <strong>of</strong> change. Managing <strong>and</strong> reducing the costs <strong>and</strong><br />

risks <strong>of</strong> changes to s<strong>of</strong>tware that arise as part <strong>of</strong> the maintenance process<br />

are important goals for both research <strong>and</strong> the practice <strong>of</strong> s<strong>of</strong>tware<br />

engineering [25, 220].<br />

The laws <strong>of</strong> s<strong>of</strong>tware evolution, as well as a number <strong>of</strong> other studies,<br />

have consistently suggested that evolving s<strong>of</strong>tware will grow <strong>and</strong> undergo<br />

change as it is adapted [175,188,192,293]. Since s<strong>of</strong>tware growth<br />

30

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

Saved successfully!

Ooh no, something went wrong!