Automatizace vyhodnocení nástroje DiffKemp na open-source projektech
Loading...
Date
Authors
Petr, Lukáš
Advisor
Referee
Mark
C
Journal Title
Journal ISSN
Volume Title
Publisher
Vysoké učení technické v Brně. Fakulta informačních technologií
ORCID
Abstract
Cílem této práce je navrhnout a vytvořit dvě automatizace pro DiffKemp, nástroj kontrolující sémantickou rovnost, které by byly užitečné pro jeho vývoj. Prvním cílem je automatizovat vyhodnocování dopadu nových vylepšení tohoto nástroje. Druhým úkolem je vytvořit řešení, které by automaticky vyhodnotilo nové verze projektů s otevřeným kódem pomocí nástroje DiffKemp, ulehčilo vyhodnocení jejich výsledků, umožnilo je klasifikovat a uložit. První cíl byl dosažen a je zdokumentován v této práci, druhá část je naimplementována, ale není zdokumentována. Pro automatizaci byla vybrána datová sada EqBench a jádra systému RHEL. Pro vyhodnocení dopadu byla vybrána metoda, která porovnává výsledky těchto projektů získané použitím původní verze nástroje DiffKemp s vylepšenou verzí. Byla vytvořena GitHub aplikace s využitím platformy Probot a konejneru Podman. Vytvořené řešení bylo nakonec vyhodnoceno na předchozích vylepšeních, která byla do DiffKempu přidána.
The goal of this work is to propose and create two automation for DiffKemp, a semantic equivalence checking tool, which would be useful for its development. The first aim is to create an automation that would simplify the impact assessment of new DiffKemp features. The second goal is to create a solution that would automatically evaluate new versions of open-source projects with DiffKemp, simplify reviewing of the results, allow classification of their correctness, and record them. The first goal is achieved and is documented in this thesis, the second part is implemented but not documented. The EqBench dataset and the RHEL kernel projects were chosen for the automatization. Comparing the results of these projects gained by using the original DiffKemp version with results attained by using the version containing the new feature was selected as the assessment method. A GitHub App was created using the Probot framework and Podman container for the automation. Finally, the created solution was evaluated on previous features that were added to DiffKemp.
The goal of this work is to propose and create two automation for DiffKemp, a semantic equivalence checking tool, which would be useful for its development. The first aim is to create an automation that would simplify the impact assessment of new DiffKemp features. The second goal is to create a solution that would automatically evaluate new versions of open-source projects with DiffKemp, simplify reviewing of the results, allow classification of their correctness, and record them. The first goal is achieved and is documented in this thesis, the second part is implemented but not documented. The EqBench dataset and the RHEL kernel projects were chosen for the automatization. Comparing the results of these projects gained by using the original DiffKemp version with results attained by using the version containing the new feature was selected as the assessment method. A GitHub App was created using the Probot framework and Podman container for the automation. Finally, the created solution was evaluated on previous features that were added to DiffKemp.
Description
Keywords
DiffKemp , sémantické rozdíly , automatizace , vývoj softwaru , požadavek na stažení , vyhodnocení , průběžná integrace , Linuxové jádro , sbírka programů EqBench , GitHub App , DiffKemp , semantic differences , automation , software development , pull requests , evaluation , continuos integration , Linux kernel , EqBench benchmark , GitHub App
Citation
PETR, L. Automatizace vyhodnocení nástroje DiffKemp na open-source projektech [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2025.
Document type
Document version
Date of access to the full text
Language of document
en
Study field
Informační systémy a databáze
Comittee
doc. Dr. Ing. Dušan Kolář (předseda)
RNDr. Marek Rychlý, Ph.D. (člen)
Ing. Zbyněk Křivka, Ph.D. (člen)
Ing. Šárka Květoňová, Ph.D. (člen)
Ing. Radek Hranický, Ph.D. (člen)
Ing. Jiří Hynek, Ph.D. (člen)
Date of acceptance
2025-06-23
Defence
Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta a na další otázky přítomných, např. ohledně automatického provádění frameworku DiffKemp. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm C - dobře.
Result of defence
práce byla úspěšně obhájena
