Projekt
Incorporation of Text Content Similarity into Token-Based Source Code Plagiarism Detection
Im akademischen Kontext ist Plagiarismus eine ernstzunehmende Gefahr für die Integrität von Aufgaben für Studierende, insbesondere in einführenden Programmierkursen. Aus verschiedensten Gründen können Studenten versuchen, absichtlich oder unabsichtlich, Plagiate für die Lösungen von Aufgaben anzufertigen. Da Einsteige…
Im akademischen Kontext ist Plagiarismus eine ernstzunehmende Gefahr für die Integrität von Aufgaben für Studierende, insbesondere in einführenden Programmierkursen. Aus verschiedensten Gründen können Studenten versuchen, absichtlich oder unabsichtlich, Plagiate für die Lösungen von Aufgaben anzufertigen. Da Einsteigerkurse häufig von vielen Studierenden besucht werden und die Abgaben eine gewisse Komplexität enthalten, nutzen Kursbetreuer häufig Plagiatserkennungssysteme, um mögliche Plagiate zu erkennen. Moderne Plagiatserkennungssysteme ignorieren aktuell meistens Textinhalte des Quelltexts während der Plagiatserkennung. Allerdings hat sich gezeigt, dass mögliche Plagiate oft ähnliche oder identische Textinhalte beinhalten, häufig in Form von Zeilen- oder Dokumentationskommentaren. Diese Kommentare könnten genutzt werden, um mögliche Plagiatsfälle einfacher zu finden oder um Kursbetreuer während der manuellen Inspektion von auffälligen Abgaben zu unterstützen. Daher präsentiert diese Thesis eine Erweiterung für Plagiatserkennungssysteme, um den Vergleich von Textinhalten in Form von Quelltextkommentaren in die Plagiatserkennung einzubinden. Um Kommentare während der Plagiatserkennung zu berücksichtigen, wird eine dreistufige Kommentarverarbeitungs-Pipeline eingeführt, welche Kommentare aus den Quelltextdateien extrahiert, diese untereinander vergleicht, und die Ergebnisse in die Ergebnisse der Plagiatserkennung einfügt. Darüber hinaus werden drei verschiedene Vergleichsalgorithmen für Kommentare verglichen und der Einfluss von Vorverarbeitung der Kommentare durch natürliche Sprachverarbeitung untersucht. Die Pipeline mit allen Vergleichsalgorithmen wurde sowohl auf Datensätzen bestehend aus studentischen Abgaben als auch auf Datensätzen bestehend aus Abgaben, welche von künstlicher Intelligenz generiert wurden, evaluiert und verglichen. Die Ergebnisse demonstrieren die Effektivität der Kommentarverarbeitungs-Pipeline in realen Applikationen.
Technologien
- Sprachverarbeitung Sprachverarbeitung – Überblick über Forschungsprojekte, Förderprojekte und Akteure im TechnologieAtlas.