Bláhová, Barbora · Brno University of Technology Digital Library (Brno University of Technology) · 2020
Cílem práce je seznámit se s problematikou plagiátorství zdrojových kódů a navrhnout postupy, které budou využity při tvorbě vlastního detektoru plagiátů. Teoretická část uvádí definice a nejčastější způsoby plagiátorství, jak obecně, tak ve zdrojových kódech. Dále představuje již existující typy detektorů a uvádí principy, na kterých lze detekci provádět. Praktická část se zabývá realizací detektoru a jeho testováním.
Cited by 0
Matt G. Ellis, Claude W. Anderson · 2005
The ease with which computer code can be copied by students presents opportunities for plagiarism on programming projects. Presently, instructors are provided with few tools (if any) that assist them in detecting possible plagiarism in an assignment. Therefore, the only solution is a tedious and error prone by hand check of student submissions, looking for similarity between any two. In this thesis, I discuss the history of software plagiarism detection as well as present new methods of detection and software that implements these methods.
Cited by 0
Cynthia Kustanto, Inggriani Liem · 2009
Plagiarism is one form of academic dishonesty, which is often done by students in programming classes. In a large class, detecting plagiarism manually is both difficult and time-consuming, especially due to the numerous modifications of the source code to conceal the cheating.We designed and developed Deimos, a prototype of a source code plagiarism detector, which can be extended to handle other programming languages, simply by implementing new scanners and parsers. Deimos works in two steps: (1) parsing source code and transforming it into tokens, and then (2) comparing each pair of token strings obtained in the first step using Running Karp-Rabin Greedy String Tiling algorithm. Instructor can access Deimos via a web application interface that receives input parameters, triggers a background process, and displays the result. The web interface offers user friendliness while the background process prevents timeout and reduces bandwidth consumption. This approach was chosen since Deimos is intended to be used for processing more than 100 source code. The web application was implemented using PHP, while Java was used to implement the backend application, which is responsible for the background process.Unit test, functional test, and nonfunctional test has been conducted. Detection time is 1 hour for processing 100 samples of beginner's source code taken from real assignment of our programming class where the average length of source code is 150 lines. This code similarity detector could also be used for other pedagogical tools, such as autograder, which checks consistency of source code based on a template or solution.
Cited by 55
Kašpar, Jakub, Vítek, Martin · Brno University of Technology Digital Library (Brno University of Technology) · 2019
The aim of this paper is to introduce the problem of plagiarism in academic field and propose a method for detection of source code plagiarism. At the beginning of this paper definition of plagiarism is described. Main part of this paper is focused on proposed algorithm for plagiarism detection. Individual steps as preprocessing, key words detection and evaluation are described. In last part of this paper testing of algorithm on database of student project is described. Main contribution of this paper is an introduction of fully functional algorithm for plagiarism detection, which is actively used on Department of Biomedical Engineering in Brno University of Technology.
Cited by 0
Michal Ďuračík, Emil Kršák, Patrik Hrkút · Communications in computer and information science · 2018
Cited by 6
Dudzik, Dominik · Jagiellonian University Repository (Jagiellonian University)
Celem niniejszej pracy jest zaprezentowanie nowego algorytmu, który może stać się rozwiązaniem problemów z nieuczciwymi studentami informatyki, jak też innych kierunków, na których dostarczają oni kody źródłowe programów rozwiązujących konkretne zadania. Pracy towarzyszy implementacja systemu antyplagiatowego dla kodów w języku C/C++, nazwanego Seigi [jap. "Sprawiedliwość"]. Sam algorytm jest wystarczająco ogólny, by być zaadaptowanym również do innych języków.
Cited by 0
Maertens, Rien, Van Petegem, Charlotte, Strijbol, Niko et al. · Ghent University Academic Bibliography (Ghent University) · 2023
Dolos is a source code plagiarism detection tool for programming exercises. Dolos helps teachers in discovering students sharing solutions, even if they are modified. By providing interactive visualizations, Dolos can also be used to sensitize students to prevent plagiarism.
Cited by 0Open access
Ankur Nagaich, Anuj Bhargava, Prashant Badal · SMART MOVES JOURNAL IJOSCIENCE · 2017
Academic dishonesty is a universal problem. The educational community across the world is facing the increasing problem of plagiarism. This widespread problem has motivated the need of an efficient, robust and fast detection procedure that is difficult to be achieved manually. Detecting duplicated text among natural language artifacts is a well-documented task. However, performing similar analysis on source code presents unique problems. Source-code plagiarism detection in programming, concerns the identification of source-code files that contain similar and/or identical source-code fragments. In this paper, a brief discussion of source code Plagiarism is presented as well as comparative study of the application of various techniques in textual similarity processing on source code.
Cited by 0Open access
Li Muxin · 2021
At present, assignment plagiarism is common in higher education at home and abroad especially in the coursework of computer majors. How to detect code plagiarism in programming course assignments effectively is a significant problem. The classic methods of code plagiarism detection mainly use the attribute or structure information to measure the similarity of source codes. In this dissertation, the definition and general process of clone plagiarism detection, different code clone detection technologies and the related tools are introduced.
Cited by 2
Cheers, Hayden John · Figshare · 2021
Source code similarity is a well-studied area of software engineering. One notable area applied to education is the detection of source code plagiarism from undergraduate computing students. Many prior works have proposed automated source code plagiarism detection tools to identify indications of source code plagiarism in undergraduate programming assignments. However, there are three important problems with existing works on the development and evaluation of source code plagiarism detection tools. Firstly, the evaluations of source code plagiarism detection tools are commonly not reproducible. Secondly, source code plagiarism detection tools do not indicate what assignment submissions are suspicious of plagiarism. Thirdly, there are no comprehensive studies evaluating the impact of source code modifications used to hide plagiarism on source code plagiarism detection tools. The work in this thesis is designed to initially address these three problems, and proceeds to propose a novel source code plagiarism detection tool that is more robust and accurate than existing tools. Firstly, evaluations of source code plagiarism detection tools are not reproducible as evaluation data sets are not released, and proposed source code plagiarism detection tools are not made available for reuse. Neither of these factors can be directly addressed. However, to present a solution to this problem, this work presents tools for the automatic generation of source code plagiarism detection tool evaluation data sets, and a pipeline that facilitates the automated evaluation of source code plagiarism detection tools. This is to afford a semi-automatic and reproducible method of evaluating source code plagiarism detection tools. Secondly, an approach for identifying assignment submissions suspicious of plagiarism is presented. The approach applies clustering to identify similar groups of assignment submissions with similar source code similarity scores. The relations between clustered scores are analysed and used to identify groups of assignment submissions that are suspicious of plagiarism. This then affords a semi-automatic method of suggesting groups of students that are suspected of plagiarising in their assignment submissions. Thirdly, an empirical evaluation of source code plagiarism detection tools pervasive against source code modifications representative of undergraduate plagiarisers is presented. This evaluation measures the performance of available source code plagiarism detection tools against a selection of 14 source code transformations, and the injection of 4 different fragment types of source code. The results of this evaluation indicate that existing source code plagiarism detection tools are not robust against pervasive plagiarism-hiding source code modifications, and as a result can suffer from poor accuracy. Finally, in order to address the identified poor robustness and accuracy of existing source code plagiarism detection tools identified in the empirical evaluation, this work presents the design and evaluation of a novel source code plagiarism detection tool. The presented source code plagiarism detection tool identifies indications of plagiarism by analysing the runtime behaviour of assignment submissions. This approach is then demonstrated to be both more robust and accurate against currently available source code plagiarism detection tools.
Cited by 0Open access
Richard Všianský, Dita Dlabolová, Tomáš Foltýnek · RePEc: Research Papers in Economics
This paper introduces a system for detection of plagiarism in source codes written in the PHP computer language, part of the plagiarism detection tool Anton. We used the greedy string tiling algorithm together with tokenization and hash calculation. The efficiency of the system was tested on both an artificial dataset and on real data coming from a course taught at our university. Our results are compared with other similar systems and solutions, concluding that Anton can detect all examined types of plagiarism with higher accuracy than other systems.
Cited by 0
А. А. Амонс, S U Zaitsev, A A Kirichek · 2011
Cited by 0
Olfat M. Mirza · Warwick Research Archive Portal (University of Warwick) · 2015
The enormous growth in the available online code resources has created new challenges for detecting plagiarism in source code of programs. Several software applications can detect source code similarity using different detection methods. However, few current detection tools detect every kind of detection plagiarism attack. The aim of this thesis is, therefore, to enhance methods for plagiarism detection in source code using a style analysis approach that has been used to detect authorship. \n \nThere are very few large source-code datasets which are suitable for research purposes, and two such datasets include the BlackBox dataset and the SOCO (Detection of SOurce COde) dataset. SOCO is a benchmark dataset that contains groups of similar source-code files that can be considered plagiarised and has been used in authorship and plagiarism detection competitions. \n \nIn the first part of the thesis, the suitability of BlackBox as source of datasets for testing plagiarism detection is explored. The files in BlackBox were analysed and visualised in order to evaluate its suitability as a dataset that can be used in this research. The analysis aimed to identify similar source code files, and therefore to detect groups of Java files within BlackBox that can be used for evaluating the performance of source-code plagiarism detection methods. \n \nIn the second part of the thesis, a plagiarism detection framework (\\the Metric-File Matrix Framework (MFM)" is proposed. The MFM framework is designed to overcome some of the limitations of existing plagiarism detection methods by 1) proposing a new set of metrics which consider structural and stylistic similarities; and 2) by using Singular Value Decomposition as a technique to remove noise and to reduce the dimensionality of the data to enhance the similarity detection. \n \nThe MFM framework was implemented and its performance was evaluated using the proposed metrics. For the evaluations, the SOCO dataset was adopted and the performance of the proposed framework was compared against other state-of- the-art plagiarism detection tools including JPlag.
Cited by 11Open access
Marko Mišić, Jelica Protić, Milo Tomašević · 2017
Computing education involves practical training through programming assignments which are frequent targets for plagiarism. For that reason, software systems for source code similarity detection are used to prevent this inappropriate behavior. In this paper, different aspects of source code plagiarism in academic environment are discussed and several improvements of plagiarism detection systems were proposed. Three main improvements of such systems were proposed: parallelization of similarity detection algorithms, similarity network visualization, and analysis of results using social network analysis.
Cited by 17
Tapan P Gondaliya, Hiren Joshi, Hardik Joshi · 2014
Internet has stored large amount of data, information [30] or source code. In this large amount of data or source code it is very difficult and time consuming task to find out the similarity or plagiarism in the source code, research publications in academic.[1] In this paper here we describe the some of the techniques and algorithms for how to find out the plagiarisms in source code. So in large organization or academic institute can easily find out the plagiarism in source code and research publications using this technique. We also differentiate all the techniques of plagiarism for find out how can one technique is differing then the other as well.
Cited by 11
Jingling Zhao, Kunfeng Xia, Yilun Fu et al. · 2015
In modern software engineering, software plagiarism is widespread and uncurbed, developing plagiarism detection methods is imperative. Popular technologies of software plagiarism detection are mostly based on text, token and syntax tree. Among these plagiarism detection technologies, tree-based plagiarism detection technology can effectively detect the code which cannot be detected by the other two kinds of technologies. In this paper, we propose a more effective plagiarism detection algorithm based on abstract syntax tree (AST) by computing the hash values of the syntax tree nodes, and comparing them. In order to implement the algorithm more effectively, special measurement is taken to reduce the error rate when calculating the hash values of operations, especially the arithmetic operations like subtraction and division. Results of the test showed that the measurement is reliable and necessary. It performs well in the code comparison field, and is helpful in the area of protecting source code's copyright.
Cited by 44
Amay Dilip Jain, Ankur Gupta, Diksha Choudhary et al. · Advances in intelligent systems and computing · 2022
Cited by 1
Xiao Li, Xiao Jing Zhong · 2010
In the instruction of computer courses, some students copy other's source code as themselves. In order to detect this plagiarism accurately, researchers did a lot. In this paper, we described a source code plagiarism detection technology based on AST, this technology can detect the plagiarism accurately when the position of functions is changed by plagiarist. At first, transforming the programs to the AST using ANTLR, and then, abstracting the function subtrees from the AST, at last, compare the function subtree using LCS, get the similarity between programs.
Cited by 19
Nyx Nord · Zenodo (CERN European Organization for Nuclear Research) · 2026
Code plagiarism in academic contexts, most notably in first-year programming courses, continues to be a problem. Currently, the most widely used plagiarism detectors are vulnerable to plagiarism obfuscation through inserted complex dead code. We propose using abstract interpretation to detect and remove dead code before the code is processed by plagiarism detection tools.
Cited by 0Open access
Nyx Nord · Zenodo (CERN European Organization for Nuclear Research) · 2026
Code plagiarism in academic contexts, most notably in first-year programming courses, continues to be a problem. Currently, the most widely used plagiarism detectors are vulnerable to plagiarism obfuscation through inserted complex dead code. We propose using abstract interpretation to detect and remove dead code before the code is processed by plagiarism detection tools.
Cited by 0Open access