Abstract-Code dofter representerar symtom på dålig genomförande val. Tidigare studier visade att dessa lukter gör källkod svårare att upprätthålla, eventuellt också öka dess felbenägenhet. Det finns flera metoder som identifierar dofter baserade på kodanalystekniker. Vi observerar dock att många koddofter i sig kännetecknas av hur kodelement förändras över tiden. Att enbart förlita sig på strukturell information kanske därför inte är tillräckligt för att upptäcka alla lukter på ett korrekt sätt. Vi föreslår ett tillvägagångssätt för att upptäcka fem olika koddofter, nämligen Divergent Change, Shotgun Surgery, Parallel Inheritance, Blob och Feature Envy, genom att utnyttja förändringshistorik information från versionssystem. Vi tillämpade tillvägagångssätt, myntat som HIST (Historisk Information för luktdeTection), till åtta programvaruprojekt skrivna i Java, och där så är möjligt jämfört med befintliga toppmoderna luktdetektorer baserade på källkodsanalys. Resultaten visar att HIST:s precision varierar mellan 61 % och 80 %, och dess återkallande varierar mellan 61 % och 100 %. Ännu viktigare är att resultaten bekräftar att HIST kan identifiera koddofter som inte kan identifieras genom metoder som enbart baseras på kodanalys.
Palomba m.fl. REF presenterade metoden med hjälp av information om förändringshistorik och upptäckte fem (parallell arv, divergent förändring, Shotgun kirurgi, blob och Feature avundsjuka) dåliga lukter.
Detecting bad smells in source code using change history information
{'venue': '2013 28th IEEE/ACM International Conference on Automated Software Engineering (ASE)', 'journal': '2013 28th IEEE/ACM International Conference on Automated Software Engineering (ASE)', 'mag_field_of_study': ['Computer Science']}