Till innehåll på sidan
Till KTH:s startsida Till KTH:s startsida

Nytt verktyg reducerar felrapportering i Java-kod

Foto: Markus Spiske, Unsplash
Publicerad 2023-03-15

SORALD åtgärdar regelbrott som uppkommit i SonarQube, ett av de mest populära analysverktygen inom statisk kodning.

Ett nytt reparationsverktyg kallat SORALD kan direkt föreslå lösningar på överträdelser av de tio viktigaste reglerna i SonarQube. Detta minskar utvecklarens behov på att själv tolka och åtgärda fel till att enbart behöva godkänna rekommenderade lösningar.

Detta är huvudresultatet i en artikel  som nyligen publicerades i IEEE Transactions on Dependable and Secure Computing. Studien gjordes av ett forskarlag vid KTH och Indian Institute of Technology Bombay.

Studien, som leds av KTH-doktoranden Khashayar Etemadi  beskriver hur problem som upptäcks av statiska kodanalysatorer kan lösas effektivare samtidigt som det minskar arbetsbelastning och oväntade kostnadsrisker.

Överväldigande och tidskrävande

Verktyget kan potentiellt förändra allt eftersom det löser ett grundläggande problem för utvecklare.

– Utvecklare tenderar att känna sig överväldigade av antalet överträdelser som presenteras av nuvarande analysverktyg, förklarar Etemadi.

– Många av dem är också obetydliga, men även om de är viktiga kommer de utan några förslag till lösningar.

SORALD fokuserar på de allvarligaste regelöverträdelserna men presenterar enkla och användbara lösningar på dem. Som en följd av detta kan utvecklarna fokusera på att granska och slå samman patchar snarare än den besvärliga processen att manuellt åtgärda överträdelser.

Reparationsbot

För att göra reparationsverktyget ännu bekvämare för utvecklare har Etemadi och hans kollegor också utvecklat en reparationsbot som kan integreras i ett arbetsflöde. Detta gör att SORALD skiljer sig från reparationsverktyg som till exempel SpongeBugs: SORALDBOT övervakar ständigt ändringar i GitHub-repositorier.

Tester på 161 av de mest populära kodförråden på GitHub avslöjade mer än 1 300 överträdelser av de tio Java-regler som SORALD tar hänsyn till. Reparationsverktyget presenterade därefter lösningar på 65 procent av regelbrotten.

– Eftersom utvecklare kan kringgå hela processen med att själva åtgärda överträdelser förvandlar SORALD ett program med regelöverträdelser till ett program utan, avslutar Etemadi.

SORALD är inte begränsat till enbart SonarQube, utan kan även användas med verktyg som Spotbugs och PMD, förutsatt att det finns en korrekt källkodsposition för överträdelsen.

Undersök SORALD:s källkod och alla relevanta experimentella data

Relaterade nyheter

Foto: Markus Spiske, Unsplash

Nytt verktyg reducerar felrapportering i Java-kod

SORALD åtgärdar regelbrott som uppkommit i SonarQube, ett av de mest populära analysverktygen inom statisk kodning.

Läs artikeln
On 6 December, Nobel laureates Emmanuelle Charpentier and Jennifer Doudna (left and right) visited the KTH campus to study Un|fold, a sound and light sculpture inspired by their work on genome editing. Pictured with professor Benoit Baudry, who led the development of the art work. Photo: Clement Morin / Nobel Prize

Konstinstallation på campus visualiserar grundläggande kommando inom mjukvara

Under 2022 Nobel Week Lights, en årlig ljusfestival som äger rum under Nobelveckan, lanserade KTH ett konstverk som heter un|fold, som fångar rikedomen i ett enkelt mjukvarukommando.

Läs artikeln

Två dagar om det senaste inom mjukvara

CASTOR Software Days gick av stapeln den 31 augusti till 1 september på KTH Nymble. Konferensen samlade mjukvaruforskare, ingenjörer och studenter med diskussioner om det allra senaste inom teknologi,...

Läs artikeln