Hierarchical Clustering Methodology for Source Code Plagiarism Detection

계층적 군집화 기법을 이용한 소스 코드 표절 검사

  • Sohn, Ki-Rack (Hankuk University of Foreign Studies, School of Computer and Information Communication Engineering) ;
  • Moon, Seung-Mi (Hankuk University of Foreign Studies, College of Education, Dept. of Computer Education)
  • 손기락 (한국외국어대학교 컴퓨터및정보통신공학부) ;
  • 문승미 (한국외국어대학교 교육대학원)
  • Published : 2007.03.30

Abstract

Plagiarism is a serious problem in school education due to current technologies such as the internet and word processors. This paper presents how to detect source code plagiarism using similarity based on string comparison methods. The main contribution is to use hierarchical agglomerative clustering technique to classify plagiarism groups, which are then visualized as a dendrogram. Graders can set an empirical threshold to the dendrogram to navigate plagiarism groups. We evaluated the performance of the presented method with a real world data. The result showed the usefulness and applicability of this method.

인터넷 통신의 발달 및 워드프로세서의 기능 향상으로 인해 일선 교육현장에서의 표절은 심각한 문제가 되고 있다. 본 연구에서는 C, C++, Java 등으로 작성된 프로그램 소스 코드들의 유사도를 측정하는 방법을 제시하고, 소스 코드를 계층적으로 군집화하고 표절 결과를 수형도로 시각화하는 방법을 제시한다. 채점자는 시각화된 수형도를 보고 임계값을 설정하여 표절 그룹을 분리할 수 있다. 실제 데이터에서 효과를 알아보기 위해서 학부 1학년생 컴퓨터 개론 및 실습과목 강의 중에 제출된 과제물 프로그램을 이용하여 실험해 보았으며, 유용하고 현실성 있는 방법임을 확인하였다.

Keywords