• Title/Summary/Keyword: 표절 프로그램 검사

Search Result 17, Processing Time 0.021 seconds

Hierarchical Clustering Methodology for Source Code Plagiarism Detection (계층적 군집화 기법을 이용한 소스 코드 표절 검사)

  • Sohn, Ki-Rack;Moon, Seung-Mi
    • Journal of The Korean Association of Information Education
    • /
    • v.11 no.1
    • /
    • pp.91-98
    • /
    • 2007
  • 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.

  • PDF

Tuning the Performance of Haskell Parallel Programs Using GC-Tune (GC-Tune을 이용한 Haskell 병렬 프로그램의 성능 조정)

  • Kim, Hwamok;An, Hyungjun;Byun, Sugwoo;Woo, Gyun
    • KIISE Transactions on Computing Practices
    • /
    • v.23 no.8
    • /
    • pp.459-465
    • /
    • 2017
  • Although the performance of computer hardware is increasing due to the development of manycore technologies, software lacking a proportional increase in throughput. Functional languages can be a viable alternative to improve the performance of parallel programs since such languages have an inherent parallelism in evaluating pure expressions without side-effects. Specifically, Haskell is notably popular for parallel programming because it provides easy-to-use parallel constructs based on monads. However, the scalability of parallel programs in Haskell tends to fluctuate as the number of cores increases, and the garbage collector is suspected to be the source of this fluctuations because it affects both the space and the time needed to execute the programs. This paper uses the tuning tool, GC-Tune, to improve the scalability of the performance. Our experiment was conducted with a parallel plagiarism detection program, and the scalability improved. Specifically, the fluctuation range of the speedup was narrowed down by 39% compared to the original execution of the program without any tuning.

Performance Comparison between Haskell Eval Monad and Cloud Haskell (Haskell Eval 모나드와 Cloud Haskell 간의 성능 비교)

  • Kim, Yeoneo;An, Hyungjun;Byun, Sugwoo;Woo, Gyun
    • Journal of KIISE
    • /
    • v.44 no.8
    • /
    • pp.791-802
    • /
    • 2017
  • Competition in the modern CPU market has shifted from speeding up the clock speed of a single core to increasing the number of cores. As such, there is a growing interest in parallel programming to maximize the use of resources of many core processors. In this paper, we propose parallel programming models in Haskell to find an advisable parallel programming model for many-core environments. Specifically, we used Eval monad and Cloud Haskell to develop two versions of parallel programs: plagiarism detection and K-means. Then, we evaluated the performance of the developed programs in 32-core and 120-core environments. The results of our experiment show that the Eval monad is highly efficient in an environment with a small number of cores. On the other hand, the Cloud Haskell runtime shows 37% improvement over Eval monad and the scalability shows a 134% improvement over Eval monad as the number of cores increases.

Design and Implementation of an Automatic Grading System for Programming Assignments (자동화된 프로그래밍 과제 평가 시스템의 설계 및 구현)

  • Kim, Mi-Hye
    • Journal of Internet Computing and Services
    • /
    • v.8 no.6
    • /
    • pp.75-85
    • /
    • 2007
  • One of important factors for improving the learning achievement of students in computer programming education is to provide plenty of opportunities of problem-solving experiences through variety forms of assignments, However, for the most cases, evaluation of programming assignments is performed manually by instructors and automated tools for the accurate evaluation are not equipped at the present time. Under this restricted environment instructors need much work and time to grade assignments so that instructors could not deliver sufficient programming assignments to students, In order to overcome this problem. au automated programming assignment evaluation system is needed that would enable instructors to evaluate assignments easily in an effective and consistent way and also to detect any plagiarism activities among students in program source codes readily, Accordingly, in this paper we design and implement a Web-based programming assignment grading system that allows instructors to evaluate program performance automatically as well as to evaluate program styles and piagiarism easily with appropriate feedback.

  • PDF

Design and Implementation of a Web-based Programming Class Support System (웹기반 프로그래밍 언어 강의 지원 시스템의 설계 및 구현)

  • Park, So-Young
    • Journal of the Korea Institute of Information and Communication Engineering
    • /
    • v.14 no.12
    • /
    • pp.2775-2782
    • /
    • 2010
  • In this paper, we propose a web-based programming class support system to help a lecturer to teach a programming language to students effectively. The proposed system is composed of a error analysis step and a verification step. The error analysis step checks whether there are compile time errors or run time errors in each student's submitted program. Given some errors, the system provides helpful feedback for the student to fix the errors. On the contrary, the system provides quick feedback after checking the source code style, comments, and plagiarism in the submitted program. As soon as the student submits the program, the student can see the check results. According to the result of utilizing the proposed system in a C programming language class, students tend to submit program assignments actively.

Software Similarity Detection Using Highly Credible Dynamic API Sequences (신뢰성 높은 동적 API 시퀀스를 이용한 소프트웨어 유사성 검사)

  • Park, Seongsoo;Han, Hwansoo
    • Journal of KIISE
    • /
    • v.43 no.10
    • /
    • pp.1067-1072
    • /
    • 2016
  • Software birthmarks, which are unique characteristics of the software, are used to detect software plagiarism or software similarity. Generally, software birthmarks are divided into static birthmarks or dynamic birthmarks, which have evident pros and cons depending on the extraction method. In this paper, we propose a method for extracting the API sequence birthmarks using a dynamic analysis and similarity detection between the executable codes. Dynamic birthmarks based on API sequences extract API functions during the execution of programs. The extracted API sequences often include all the API functions called from the start to the end of the program. Meanwhile, our dynamic birthmark scheme extracts the API functions only called directly from the executable code. Then, it uses a sequence alignment algorithm to calculate the similarity metric effectively. We evaluate the birthmark with several open source software programs to verify its reliability and credibility. Our dynamic birthmark scheme based on the extracted API sequence can be utilized in a similarity test of executable codes.