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 7. Implications<br />

contain new functionality (which is possible if new classes were created<br />

due to refactoring), the consistency with which new classes are added<br />

suggests that developers grow s<strong>of</strong>tware systems by adding functionality<br />

in new classes.<br />

7.2 S<strong>of</strong>tware Development Practices<br />

We now discuss some <strong>of</strong> the implications <strong>of</strong> our findings <strong>and</strong> <strong>of</strong>fer recommendations<br />

to help improve s<strong>of</strong>tware development practices with a<br />

specific focus on how maintenance activities can be improved by s<strong>of</strong>tware<br />

project managers, designers, testers <strong>and</strong> tool builders.<br />

7.2.1 Project Management<br />

Our results show that evolution proceeds by accumulation <strong>and</strong> combination<br />

<strong>of</strong> stable intermediate states, suggesting that the stability plays<br />

a role in ensuring successful evolution. In this context, stability implies<br />

the observed strong boundaries in the metric distributions. This knowledge<br />

can be directly used during project planning, specifically during<br />

effort estimation. Consider a situation where a preliminary high-level<br />

analysis <strong>of</strong> a new feature indicates the need for 50 new classes. We<br />

know that it is highly likely that these 50 classes will not substantially<br />

alter the overall shape <strong>and</strong> structure <strong>of</strong> the underlying distribution.<br />

That is, we can use the size <strong>and</strong> complexity probability distribution<br />

histograms to estimate the size <strong>and</strong> complexity distribution <strong>of</strong> these 50<br />

classes which can be used as input into the effort estimation process.<br />

Further, our findings also provide additional support for the recommendation<br />

<strong>of</strong> collecting <strong>and</strong> using historical data to improve accuracy<br />

<strong>of</strong> estimation.<br />

Although substantive changes in Gini Coefficient values are rare, these<br />

changes do happen. The real value for project managers is that this<br />

knowledge can be used as a trigger to ensure that the rationale <strong>and</strong> impact<br />

<strong>of</strong> changes are properly communicated. Furthermore, monitoring<br />

trends in the Gini Coefficient values can reveal an unknown or poorly<br />

186

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

Saved successfully!

Ooh no, something went wrong!