Detail práce
Nástroj na vizualizaci plagiátů v různých programovacích jazycích
Práca sa zaoberá návrhom a implementáciou nástroja na detekciu plagiátov v programovacích jazykoch C, Python a PHP. Popisuje techniky, ktoré slúžia na zakrytie plagiátorstva. Cieľom práce je vytvoriť návrh nástroja na detekciu a vizualizáciu plagiátov, ktoré využívajú tieto techniky a jeho následnú implementáciu. Nástroj vykonáva detekciu transformáciou zadaných vstupných projektov do formy abstraktného syntaktického stromu, ktorý je získaný pomocou lexikálnej a syntaktickej analýzy, ktoré bude následne porovnávať navrhnutým algoritmom, ktorý využíva ohodnocovanie uzlov a podstromov pomocou \textit{hash} funkcie. Nástroj taktiež nájdené časti kódu, u ktorých mohlo potenciálne prísť k plagiátorstvu, vizualizuje vo forme podstromu abstraktného syntaktického stromu, príslušnému danej nájdenej časti kódu. Práca ďalej popisuje testovanie tohto nástroja na identifikovaných plagiátorských technikách a špecifikuje, ktoré dokáže pri detekcii obísť. Ďalej práca načrtáva možný ďalší vývoj nástroja.
Detekcia plagiátov, vizualizácia plagiátov, hash funkcia, ANTLR, stromový prístup, abstraktný syntaktický strom.
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. 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.
- Na obr. 4.4 uvádíte ukázku kódu s mnohonásobným větvením programu podle typu zpracovávaného uzlu. Bylo by možné v jazyce Java vymyslet nějaké elegantnější a efektivnější řešení?
Janoušek Vladimír, doc. Ing., Ph.D. (UITS FIT VUT), člen
Kolář Dušan, doc. Dr. Ing. (UIFS FIT VUT), člen
Malinka Kamil, Mgr., Ph.D. (UITS FIT VUT), člen
Rybička Jiří, doc. Ing. Dr. (Mendelu), člen
Rychlý Marek, RNDr., Ph.D. (UIFS FIT VUT), člen
@mastersthesis{FITMT18415, author = "Michal Ban\v{c}\'{a}k", type = "Diplomov\'{a} pr\'{a}ce", title = "N\'{a}stroj na vizualizaci plagi\'{a}t\r{u} v r\r{u}zn\'{y}ch programovac\'{i}ch jazyc\'{i}ch", school = "Vysok\'{e} u\v{c}en\'{i} technick\'{e} v Brn\v{e}, Fakulta informa\v{c}n\'{i}ch technologi\'{i}", year = 2019, location = "Brno, CZ", language = "czech", url = "https://www.fit.vut.cz/study/thesis/18415/" }