Journal article Open Access

Ten years of JDeodorant: Lessons learned from the hunt for smells

Tsantalis, Nikolaos; Chaikalis, Theodoros; Chatzigeorgiou, Alexander

MARC21 XML Export

<?xml version='1.0' encoding='UTF-8'?>
<record xmlns="">
  <datafield tag="540" ind1=" " ind2=" ">
    <subfield code="u"></subfield>
    <subfield code="a">Creative Commons Attribution 4.0 International</subfield>
  <datafield tag="260" ind1=" " ind2=" ">
    <subfield code="c">2018-04-05</subfield>
  <controlfield tag="005">20200120150307.0</controlfield>
  <controlfield tag="001">1451812</controlfield>
  <datafield tag="909" ind1="C" ind2="O">
    <subfield code="p">openaire</subfield>
    <subfield code="o"></subfield>
  <datafield tag="520" ind1=" " ind2=" ">
    <subfield code="a">&lt;p&gt;Deodorants are different from perfumes, because they are applied directly on body and by killing bacteria they reduce odours and offer a refreshing fragrance. That was our goal when we first thought about &amp;quot;bad smells&amp;quot; in code: to develop techniques for effectively identifying and removing (i.e., deodorizing) code smells from object-oriented software. JDeodorant encompasses a number of techniques for suggesting and automatically applying refactoring opportunities on Java source code, in a way that requires limited effort on behalf of the developer. In contrast to other approaches that rely on generic strategies that can be adapted to various smells, JDeodorant adopts ad-hoc strategies for each smell considering the particular characteristics of the underlying design or code problem. In this retrospective paper, we discuss the impact of JDeodorant over the last ten years and a number of tools and techniques that have been developed for a similar purpose which either compare their results with JDeodorant or have built on top of JDeodorant. Finally, we discuss the empirical findings from a number of studies that employed JDeodorant to extract their datasets.&lt;/p&gt;</subfield>
  <datafield tag="700" ind1=" " ind2=" ">
    <subfield code="u">University of Macedonia</subfield>
    <subfield code="a">Chaikalis, Theodoros</subfield>
  <datafield tag="700" ind1=" " ind2=" ">
    <subfield code="u">University of Macedonia</subfield>
    <subfield code="a">Chatzigeorgiou, Alexander</subfield>
  <datafield tag="856" ind1="4" ind2=" ">
    <subfield code="s">419423</subfield>
    <subfield code="z">md5:e0ef88c750d21ca7938c7954124bb03b</subfield>
    <subfield code="u"></subfield>
  <datafield tag="542" ind1=" " ind2=" ">
    <subfield code="l">open</subfield>
  <datafield tag="980" ind1=" " ind2=" ">
    <subfield code="a">publication</subfield>
    <subfield code="b">article</subfield>
  <datafield tag="100" ind1=" " ind2=" ">
    <subfield code="u">Concordia University Montreal, Canada</subfield>
    <subfield code="a">Tsantalis, Nikolaos</subfield>
  <datafield tag="024" ind1=" " ind2=" ">
    <subfield code="a">10.1109/SANER.2018.8330192</subfield>
    <subfield code="2">doi</subfield>
  <datafield tag="245" ind1=" " ind2=" ">
    <subfield code="a">Ten years of JDeodorant: Lessons learned from the hunt for smells</subfield>
  <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 tag="650" ind1="1" ind2="7">
    <subfield code="a">cc-by</subfield>
    <subfield code="2"></subfield>
Views 60
Downloads 199
Data volume 83.5 MB
Unique views 56
Unique downloads 192


Cite as