Abstrakt. Kod- och designdofter är återkommande designproblem i programvarusystem som måste identifieras för att undvika eventuella negativa konsekvenser för utveckling och underhåll. Följaktligen har flera metoder och verktyg för att upptäcka lukter föreslagits i litteraturen. Hittills har de dock gjort det möjligt att upptäcka fördefinierade lukter, men det är bara möjligt att upptäcka nya lukter eller lukter som är anpassade till de analyserade systemens sammanhang genom att införa nya detektionsalgoritmer manuellt. Dessutom förklarar tidigare metoder inte övergången från specifikationer för lukter till upptäckt av lukter. Slutligen har valideringen av befintliga metoder och verktyg begränsats till få egenutvecklade system och till ett minskat antal dofter. I detta dokument introducerar vi en strategi för att automatisera generering av detektionsalgoritmer från specifikationer skrivna med hjälp av ett domänspecifikt språk. Detta språk definieras från en grundlig domänanalys. Det gör det möjligt att specificera dofter med hjälp av hög nivå domänrelaterade abstraktioner. Den gör det möjligt att anpassa luktspecifikationerna till de analyserade systemens sammanhang. Vi specificerar 10 dofter, genererar automatiskt deras detektionsalgoritmer med hjälp av mallar, och validera algoritmerna i termer av precision och återkalla på Xerces v2.7.0 och GanttProject v1.10.2, två objektorienterade system med öppen källkod. Vi jämför också detektionsresultaten med resultaten från ett tidigare tillvägagångssätt, iPlasma.
Moha m.fl. I REF föreslogs ett domänspecifikt språk för att specificera lukter baserat på en litteraturgranskning av befintligt arbete.
From a domain analysis to the specification and detection of code and design smells
{'venue': 'Formal Aspects of Computing', 'journal': 'Formal Aspects of Computing', 'mag_field_of_study': ['Computer Science']}