跳至主導覽 跳至搜尋 跳過主要內容

Code Plagiarism Checking Function and Its Application for Code Writing Problem in Java Programming Learning Assistant System †

  • Ei Ei Htet
  • , Khaing Hsu Wai
  • , Soe Thandar Aung
  • , Nobuo Funabiki*
  • , Xiqin Lu
  • , Htoo Htoo Sandi Kyaw
  • , Wen Chung Kao
  • *此作品的通信作者

研究成果: 雜誌貢獻期刊論文同行評審

8   連結會在新分頁中開啟 引文 斯高帕斯(Scopus)

摘要

A web-based Java programming learning assistant system (JPLAS) has been developed for novice students to study Java programming by themselves while enhancing code reading and code writing skills. One type of the implemented exercise problem is code writing problem (CWP), which asks students to create a source code that can pass the given test code. The correctness of this answer code is validated by running them on JUnit. In previous works, a Python-based answer code validation program was implemented to assist teachers. It automatically verifies the source codes from all the students for one test code, and reports the number of passed test cases by each code in the CSV file. While this program plays a crucial role in checking the correctness of code behaviors, it cannot detect code plagiarism that can often happen in programming courses. In this paper, we implement a code plagiarism checking function in the answer code validation program, and present its application results to a Java programming course at Okayama University, Japan. This function first removes the whitespace characters and the comments using the regular expressions. Next, it calculates the Levenshtein distance and similarity score for each pair of source codes from different students in the class. If the score is larger than a given threshold, they are regarded as plagiarism. Finally, it outputs the scores as a CSV file with the student IDs. For evaluations, we applied the proposed function to a total of 877 source codes for 45 CWP assignments submitted from 9 to 39 students and analyzed the results. It was found that (1) CWP assignments asking for shorter source codes generate higher scores than those for longer codes due to the use of test codes, (2) proper thresholds are different by assignments, and (3) some students often copied source codes from certain students.

原文英語
頁(從 - 到)46-62
頁數17
期刊Analytics
3
發行號1
DOIs
出版狀態已發佈 - 2024 3月

ASJC Scopus subject areas

  • 電腦科學(雜項)
  • 數學(雜項)
  • 分析

指紋

深入研究「Code Plagiarism Checking Function and Its Application for Code Writing Problem in Java Programming Learning Assistant System †」主題。共同形成了獨特的指紋。

引用此