Conference paper Open Access

Structural Quality Metrics as Indicators of the Long Method Bad Smell: An Empirical Study

Charalampidou, Sofia; Arvanitou, Elvira-Maria; Ampatzoglou, Apostolos; Avgeriou, Paris; Chatzigeorgiou, Alexander; Stamelos, Ioannis


MARC21 XML Export

<?xml version='1.0' encoding='UTF-8'?>
<record xmlns="http://www.loc.gov/MARC21/slim">
  <leader>00000nam##2200000uu#4500</leader>
  <datafield tag="540" ind1=" " ind2=" ">
    <subfield code="u">https://creativecommons.org/licenses/by/4.0/legalcode</subfield>
    <subfield code="a">Creative Commons Attribution 4.0 International</subfield>
  </datafield>
  <datafield tag="260" ind1=" " ind2=" ">
    <subfield code="c">2018-10-22</subfield>
  </datafield>
  <controlfield tag="005">20200120155441.0</controlfield>
  <controlfield tag="001">3349972</controlfield>
  <datafield tag="909" ind1="C" ind2="O">
    <subfield code="p">openaire</subfield>
    <subfield code="o">oai:zenodo.org:3349972</subfield>
  </datafield>
  <datafield tag="520" ind1=" " ind2=" ">
    <subfield code="a">&lt;p&gt;Empirical evidence has pointed out that Extract Method refactorings are among the most commonly applied refactorings by software developers. The identification of Long Method code smells and the ranking of the associated refactoring opportunities is largely based on the use of metrics, primarily with measures of cohesion, size and coupling. Despite the relevance of these proper-ties to the presence of large, complex and non-cohesive pieces of code, the empirical validation of these metrics has exhibited relatively low accuracy (max precision: 66%) regarding their predictive power for long methods or extract method opportunities. In this work we perform an empirical validation of the ability of cohesion, coupling and size metrics to predict the existence and the intensity of long method occurrences. According to the statistical analysis, the existence and the intensity of the Long Method smell can be effectively predicted by two size (LoC and NoLV), two coupling (MPC and RFC), and four cohesion (LCOM1, LCOM2, Coh, and CC) metrics. Furthermore, the integration of these metrics into a multiple logistic regression model can predict whether a method should be refactored with a precision of 89% and a recall of 91%. The model yields suggestions whose ranking is strongly correlated to the ranking based on the effect of the corresponding refactorings on source code (correl. coef. 0.520). The results are discussed by providing interpretations and implications for research and practice.&lt;/p&gt;</subfield>
  </datafield>
  <datafield tag="700" ind1=" " ind2=" ">
    <subfield code="u">Department of Applied Informatics, University of Macedonia, Thessaloniki, Greece</subfield>
    <subfield code="a">Arvanitou, Elvira-Maria</subfield>
  </datafield>
  <datafield tag="700" ind1=" " ind2=" ">
    <subfield code="u">Department of Applied Informatics, University of Macedonia, Thessaloniki, Greece</subfield>
    <subfield code="a">Ampatzoglou, Apostolos</subfield>
  </datafield>
  <datafield tag="700" ind1=" " ind2=" ">
    <subfield code="u">Department of Computer Science, University of Groningen, Netherlands</subfield>
    <subfield code="a">Avgeriou, Paris</subfield>
  </datafield>
  <datafield tag="700" ind1=" " ind2=" ">
    <subfield code="u">Department of Applied Informatics, University of Macedonia, Thessaloniki, Greece</subfield>
    <subfield code="a">Chatzigeorgiou, Alexander</subfield>
  </datafield>
  <datafield tag="700" ind1=" " ind2=" ">
    <subfield code="u">Department of Informatics, Aristotle University, Thessaloniki, Greece</subfield>
    <subfield code="a">Stamelos, Ioannis</subfield>
  </datafield>
  <datafield tag="856" ind1="4" ind2=" ">
    <subfield code="s">312349</subfield>
    <subfield code="z">md5:7d0279320bf762e1ad6e0276566c0f98</subfield>
    <subfield code="u">https://zenodo.org/record/3349972/files/structural_quality_metrics.pdf</subfield>
  </datafield>
  <datafield tag="542" ind1=" " ind2=" ">
    <subfield code="l">open</subfield>
  </datafield>
  <datafield tag="980" ind1=" " ind2=" ">
    <subfield code="a">publication</subfield>
    <subfield code="b">conferencepaper</subfield>
  </datafield>
  <datafield tag="100" ind1=" " ind2=" ">
    <subfield code="u">Department of Computer Science, University of Groningen, Netherlands</subfield>
    <subfield code="a">Charalampidou, Sofia</subfield>
  </datafield>
  <datafield tag="024" ind1=" " ind2=" ">
    <subfield code="a">10.1109/SEAA.2018.00046</subfield>
    <subfield code="2">doi</subfield>
  </datafield>
  <datafield tag="245" ind1=" " ind2=" ">
    <subfield code="a">Structural Quality Metrics as Indicators of the Long Method Bad Smell: An Empirical Study</subfield>
  </datafield>
  <datafield tag="536" ind1=" " ind2=" ">
    <subfield code="c">780572</subfield>
    <subfield code="a">Software Development toolKit for Energy optimization and technical Debt elimination</subfield>
  </datafield>
  <datafield tag="650" ind1="1" ind2="7">
    <subfield code="a">cc-by</subfield>
    <subfield code="2">opendefinition.org</subfield>
  </datafield>
</record>
53
103
views
downloads
Views 53
Downloads 103
Data volume 32.2 MB
Unique views 50
Unique downloads 99

Share

Cite as