A systematic literature review on source code similarity measurement and clone detection: techniques, applications, and challenges

要約

ソース コードの類似性の測定と評価は、コードの推奨、重複コード、盗作、マルウェア、匂いの検出など、幅広いアプリケーションを包含する基本的なソフトウェア エンジニアリング活動です。
この論文では、コード類似性の測定および評価技術に関する系統的な文献レビューとメタ分析を提案し、さまざまなアプリケーションにおける既存のアプローチとその特徴を明らかにします。
私たちは当初、4 つのデジタル ライブラリを検索して 10,000 件を超える論文を発見し、最終的にこの分野で 136 件の主要研究を発見しました。
研究は、方法論、プログラミング言語、データセット、ツール、アプリケーションに従って分類されました。
綿密な調査により、5 つのアプリケーション ドメインで 8 つの異なる技術を使用する 80 個のソフトウェア ツールが明らかになりました。
ツールのほぼ 49% は Java プログラムで動作し、37% は C および C++ をサポートしていますが、多くのプログラミング言語はサポートされていません。
注目すべき点は、ソースコードの類似性測定や重複コードに関連するデータセットが12件存在し、そのうち一般公開されているデータセットは8件のみであった。
信頼できるデータセット、経験的評価、ハイブリッド手法の欠如、およびマルチパラダイム言語への焦点の欠如が、この分野の主な課題です。
コード類似性測定の新しいアプリケーションは、メンテナンスに加えて開発段階に重点を置いています。

要約(オリジナル)

Measuring and evaluating source code similarity is a fundamental software engineering activity that embraces a broad range of applications, including but not limited to code recommendation, duplicate code, plagiarism, malware, and smell detection. This paper proposes a systematic literature review and meta-analysis on code similarity measurement and evaluation techniques to shed light on the existing approaches and their characteristics in different applications. We initially found over 10000 articles by querying four digital libraries and ended up with 136 primary studies in the field. The studies were classified according to their methodology, programming languages, datasets, tools, and applications. A deep investigation reveals 80 software tools, working with eight different techniques on five application domains. Nearly 49% of the tools work on Java programs and 37% support C and C++, while there is no support for many programming languages. A noteworthy point was the existence of 12 datasets related to source code similarity measurement and duplicate codes, of which only eight datasets were publicly accessible. The lack of reliable datasets, empirical evaluations, hybrid methods, and focuses on multi-paradigm languages are the main challenges in the field. Emerging applications of code similarity measurement concentrate on the development phase in addition to the maintenance.

arxiv情報

著者 Morteza Zakeri-Nasrabadi,Saeed Parsa,Mohammad Ramezani,Chanchal Roy,Masoud Ekhtiarzadeh
発行日 2023-06-28 12:49:22+00:00
arxivサイト arxiv_id(pdf)

提供元, 利用サービス

arxiv.jp, Google

カテゴリー: cs.AI, cs.PL, cs.SE パーマリンク