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 5. Growth Dynamics<br />

Figure 5.13: NOB Gini pr<strong>of</strong>ile for JabRef.<br />

s<strong>of</strong>tware systems quickly without a deep investigation <strong>of</strong> the source<br />

code <strong>and</strong> source repository logs. Our personal experience from the two<br />

audits was that the quick identification <strong>of</strong> the use <strong>of</strong> templates to generate<br />

code in the first system helped us identify a key design element<br />

<strong>of</strong> the solution at the beginning <strong>of</strong> our audit exercise allowing for more<br />

effective use <strong>of</strong> our time since we eliminated the need to investigate<br />

approximately 30% <strong>of</strong> the classes scattered across different packages.<br />

5.5.8 Machine-generated Code<br />

In our study we noticed that certain systems consistently exhibited<br />

Number <strong>of</strong> Branches Gini values above 0.85. An investigation into those<br />

unusually high values revealed the presence <strong>of</strong> machine-generated code,<br />

specifically parsers <strong>and</strong> expression processors. These parsers typically<br />

contain a few large classes that encapsulate very long methods<br />

with abnormally high algorithmic density caused by many thous<strong>and</strong>s<br />

<strong>of</strong> branches that use <strong>of</strong> hundreds <strong>of</strong> variables. This is caused because<br />

code generators <strong>of</strong>ten employ greedy strategies to map a given specification<br />

to target code.<br />

Systems that contain machine-generated code structures tend to have a<br />

unique distribution pr<strong>of</strong>ile, where Gini Coefficients tend to be close to 1<br />

134

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

Saved successfully!

Ooh no, something went wrong!