Return to search

Evaluating template-based automatic program repair in industry / Utvärdering av mallbaserad automatisk programreparation inom industrin

Automatic Program Repair (APR) is a field that has gained much attention in recent years. The idea of automatically fixing bugs could save time and money for companies. Template Based Automatic Program Repair is an area within APR that uses fix templates for generating patches and a test suite for evaluating them. However, there exists many various tools and datasets, and the concept has not widely been evaluated at companies or tried in production. Critique of current research is that the bug datasets are gathered from only a few projects, are sparsely updated and are not representative of real-world projects. This thesis evaluates, TBar, Template based automatic program repair tool for Java on a large open-source bug dataset Bears and a small company dataset. Further, TBar is modified to kBar to be used for experiments. The results show that kBar presents Plausible patches to 35% (19/54) of the selected bugs and 13% (7/54) of them is Correct. Finally, a prototype were implemented at Saab, waiting for the developers to submit the first real-world bug to fix. / Automatisk programreparation (APR) är ett område som har fått mycket uppmärksamhet under senare år. Att reparera buggar automatiskt kan spara både tid och pengar för företag. Mallbaserad automatisk programreparation är ett område inom APR som använder färdiga mallar för att laga buggar och tester för att utvärdera dem. Men det finns många olika verktyg och dataset och konceptet har inte blivit storskaligt utvärderat på företag eller testat i produktion. Kritik av nuvarande forskning är att dataset med buggar är insamlade från ett fåtal projekt, sällan uppdaterade och inte representerar verkliga projekt. Det här arbetet utvärderar, TBar, ett mallbaserat automatiskt programreparationsverktyg för Java på ett stort open-source bug dataset Bears och ett litet dataset från företaget. Vidare modifieras TBar till kBar för att användas i experiment. Resultaten visar att kBar presenterar möjliga lagningar till 35% (19/54) av de utvalda buggarna och 13% (7/54) av dem är korrekta. Slutligen implementerades en prototyp hos Saab, som är redo för att utvecklarna ska skicka in den första buggen att reparera.

Identiferoai:union.ndltd.org:UPSALLA1/oai:DiVA.org:kth-305029
Date January 2021
CreatorsApplelid, Gunnar
PublisherKTH, Skolan för elektroteknik och datavetenskap (EECS)
Source SetsDiVA Archive at Upsalla University
LanguageEnglish
Detected LanguageEnglish
TypeStudent thesis, info:eu-repo/semantics/bachelorThesis, text
Formatapplication/pdf
Rightsinfo:eu-repo/semantics/openAccess
RelationTRITA-EECS-EX ; 2021:697

Page generated in 0.0038 seconds