scholarly journals Python Source Code Plagiarism Attacks in Object-Oriented Environment

2017 ◽  
Vol 6 (3) ◽  
pp. 87-84
Author(s):  
Oscar Karnalim ◽  
Aldi Aldiansyah

Since source code plagiarism is an emerging issue on Computer Science major and Python is a new popular programming language, this paper aims to empirically enlist plagiarism attacks that might be occurred on Python source code. As our case study, our work will be focused on source code plagiarism in object-oriented environment. The result of this work is expected to become either an evaluation baseline or a prior knowledge for developing Python-targeted plagiarism detection system. Based on 280 plagiarism-suspected pairs that were extracted from four Basic Data Structure classes, four findings can be deducted. First, there are 20 distinct Python plagiarism attacks that might be occurred in object-oriented environment. Second, plagiarism attack trend on both object-oriented and procedural environment are considerably similar to each other. Third, there is no need to handle plagiarism attacks in both object-oriented and procedural environment separately. Last, plagiarism attacks in object-oriented environment is more monotonous than such attacks in procedural environment.

2014 ◽  
Vol 13 (03) ◽  
pp. 1450028 ◽  
Author(s):  
Imad Rahal ◽  
Colin Wielga

Source code plagiarism is easy to commit but difficult to catch. Many approaches have been proposed in the literature to automate its detection; however there is little consensus on what works best. In this paper, we propose two new measures for determining the accuracy of a given technique and describe an approach to convert code files into strings which can then be compared for similarity in order to detect plagiarism. We then compare several string comparison techniques, heavily utilised in the area of biological sequence alignment, and compare their performance on a large collection of student source code containing various types of plagiarism. Experimental results show that the compared techniques succeed in matching a plagiarised file to its original files upwards of 90% of the time. Finally, we propose a modification for these algorithms that drastically improves their runtimes with little or no effect on accuracy. Even though the ideas presented herein are applicable to most programming languages, we focus on a case study pertaining to an introductory-level Visual Basic programming course offered at our institution.


Author(s):  
W. ERIC WONG ◽  
JENNY LI

Object-oriented languages support many modern programming concepts such as information hiding, inheritance, polymorphism, and dynamic binding. As a result, software systems implemented in OO languages are in general more reusable and reliable than others. Many legacy software systems, created before OO programming became popular, need to be redesigned and updated to OO programs. The process of abstracting OO designs from the procedural source code has often been done with limited assistance from program structural diagrams. Most reengineering focuses on the functionality of the original program, and the OO redesign often results in a completely new design based on the designers' understanding of the original program. Such an approach is not sufficient because it may take a significant amount of time and effort for designers to comprehend the original program. This paper presents a computer-aided semi-automatic method that abstracts OO designs from the original procedural source code. More specifically, it is a method for OO redesign based on program structural diagrams, visualization, and execution slices. We conducted a case study by applying this method to an inventory management software system. Results indicate that our method can effectively and efficiently abstract an appropriate OO design out of the original C code. In addition, some of the code from the original system can be automatically identified and reused in the new OO system.


2019 ◽  
Author(s):  
Budiman

During this period continued to develop computer software, programming language was no exception. At the start of the era of low level programming languages, then developed a high level programming language. It is characterized by the appearance of a method of programming offered by a programming language, that is, object-oriented programming (OOP). IDE (Integrated Development Environment) is a computer program that has some facilities that are required in the development of the software. The purpose of the IDEA is to provide all the necessary utilities in building software. As for the type of software text editor that can be used to manipulate the source code hereinafter referred to as the source code of programming languages such as Ultraedit, JediEdit, ClearEdit, cEdit, the Golden Pen, and so on. PuniEdit software is a text-based editor software that can simplify the user through correction, insertion, and modification of the source code. PuniEdit software is built using Borland Delphi 7.0 and SynEdit component. This software can be used for the Pascal programming language, C++ and HTML. In addition, the software PuniEdit can perform management of the token. This PuniEdit software, the user can clearly see every occurrence of the type of token as keywords (reserved word), identifier, operator, and so on.Keywords: Source code, programming language, source code is scanned.


Author(s):  
Chi Hong Cheong ◽  
Tak Pang Lau ◽  
Irwin King

Plagiarism is becoming prevalent through the use of the Internet. Educational institutions are seeking technology to combat plagiarism. This chapter describes policy and issues encountered by an educational institution that deploys an automated plagiarism detection system. Background information of plagiarism and the benefits of using automated plagiarism detection systems are presented as motivation. A detailed account on the benefits of using automated plagiarism detection system in the academic setting is given. Associated policy issues (administrative issues, submission policy issues, disciplinary issues, copyright issues, security and privacy issues, and ethical issues) and resources needed to deploy such a system are discussed in details. VeriGuide, an automated plagiarism detection system designed and implemented at the Chinese University of Hong Kong, is presented as a case study on how the technology can be used to alleviate workload for the teachers and also provide a fair academic environment for the students. It is hoped that the case study would be helpful for those who are interested in using such a system to promote academic quality and integrity.


Author(s):  
Imam Setiawan ◽  
Dwi Maryono ◽  
Basori Basori

<p>Source code readability is a property that influences how easily a given piece of code can be read and understood. Since source code readability can affect software quality, especially maintainability, then programmers must have good sense of writing readable code. For computer science and software engineering student, they have to start learning how to write readable code in order to compete later in the industrial. Unfortunately, computer science and software engineering curriculum promotes understanding the programming paradigms of particular language, compared to write readable code. Based on its importance, we analyzed source code of software written by Education of Informatics and Computer Engineering of Sebelas Maret University students to describe its readability. We determine readability category from source code based on two programming features, variable and function writing. Each programming features involved has its own criteria so that it can be classified in the readable or less readable category. Finally, we discuss the implications of this study on learning process of Education of Informatics and Computer Engineering study program, Sebelas Maret University. For example, our data suggest to use code reviews to teach student about source code readability.</p>


2020 ◽  
Vol 1 (1) ◽  
pp. 53-58
Author(s):  
Lalu Puji Indra Kharisma ◽  
Muh. Fahrurrozi ◽  
Khairunnazri

This Repository Information System is an idea that appears to help agencies manage thesis archiving that was previously still done conventionally by collecting the results of thesis binding (hardcopy) and CD containing thesis files along with the source code of the program that was made (softcopy) into a digital system new and modern. Repository Information System is a system that is expected to help the School of Information and Computer Management (STMIK) Shaykh Zainuddin NW Anjani to organize the archiving of thesis data that has been done by students to be neater, safer and easier to manage. The repository information system was developed using the waterfall software development process model and object oriented analysis modeling, then implemented using the Codeigniter programming language, one of the PHP frameworks. The result of this study is a website-based thesis repository system that can archive student thesis data and can also be used to search and display existing thesis data through the admin or user interface in this case students.


2020 ◽  
Vol 2020 ◽  
pp. 1-15
Author(s):  
Feng Zhang ◽  
Guofan Li ◽  
Cong Liu ◽  
Qian Song

Source code similarity detection has various applications in code plagiarism detection and software intellectual property protection. In computer programming teaching, students may convert the source code written in one programming language into another language for their code assignment submission. Existing similarity measures of source code written in the same language are not applicable for the cross-language code similarity detection because of syntactic differences among different programming languages. Meanwhile, existing cross-language source similarity detection approaches are susceptible to complex code obfuscation techniques, such as replacing equivalent control structure and adding redundant statements. To solve this problem, we propose a cross-language code similarity detection (CLCSD) approach based on code flowcharts. In general, two source code fragments written in different programming languages are transformed into standardized code flowcharts (SCFC), and their similarity is obtained by measuring their corresponding SCFC. More specifically, we first introduce the standardized code flowchart (SCFC) model to be the uniform flowcharts representation of source code written in different languages. SCFC is language-independent, and therefore, it can be used as the intermediate structure for source code similarity detection. Meanwhile, transformation techniques are given to transform source code written in a specific programming language into an SCFC. Second, we propose the SCFC-SPGK algorithm based on the shortest path graph kernel to measure the similarity between two SCFCs. Thus, the similarity between two pieces of source code in different programming languages is given by the similarity between SCFCs. Experimental results show that compared with existing approaches, CLCSD has higher accuracy in cross-language source code similarity detection. Furthermore, CLCSD cannot only handle common source code obfuscation techniques used by students in computer programming teaching but also obtain nearly 90% accuracy in dealing with some complex obfuscation techniques.


Sign in / Sign up

Export Citation Format

Share Document