Plagiarism detection for computer programs

Programming is an essential skill for engineering students. Programming courses are included in the curriculum of most engineering degrees in the universities. Online submission of programming assignments has become the norm, but plagiarism needs to be properly handled. Hence, there is a need to dev...

Full description

Bibliographic Details
Main Author: Nguyen, Kieu Trinh
Other Authors: Chua Hock Chuan
Format: Final Year Project (FYP)
Language:English
Published: 2016
Subjects:
Online Access:http://hdl.handle.net/10356/68168
Description
Summary:Programming is an essential skill for engineering students. Programming courses are included in the curriculum of most engineering degrees in the universities. Online submission of programming assignments has become the norm, but plagiarism needs to be properly handled. Hence, there is a need to develop an automatic tool for plagiarism detection to help instructors check students’ honesty and manage their assignments. This project has two objectives. The first objective is to build a Plagiarism Detection Add-on Tool over an existing Online Program Submission System (OPSS) – an automatic system for grading computer programs submitted by students. The tool should be able to assess the similarity of computer programs and detect plagiarism attempts from a set of submitted programs. The second objective is to re-design the existing OPSS using modern frameworks such as Bootstrap, AngularJS instead of older techniques such as jQuery, plain HTML and CSS. I have successfully developed a Plagiarism Detection Add-on Tool that is capable of calculating the similarity of program source codes and detecting plagiarism attempts. The Plagiarism Detection Add-on Tool employs various plagiarism detection techniques such as Attribute-counting system and Structure-metric system. Presentation of detection results is also implemented and integrated into the OPSS. Moreover, the front-end of the OPSS is re-designed using modern frameworks such as AngularJS and Bootstrap, to create a professional, responsive and dynamic single-page application.