[論文レビュー] A Survey on Automated Program Repair Techniques
本調査は、Automated Program Repair (APR) 技法を四つの世代—search-based、constraint-based、template-based、learning-based—に分類し、それぞれの発展、評価基準、今後の方向性を分析する。データ駆動型および深層学習アプローチを強調している。
With the rapid development and large-scale popularity of program software, modern society increasingly relies on software systems. However, the problems exposed by software have also come to the fore. Software defect has become an important factor troubling developers. In this context, Automated Program Repair (APR) techniques have emerged, aiming to automatically fix software defect problems and reduce manual debugging work. In particular, benefiting from the advances in deep learning, numerous learning-based APR techniques have emerged in recent years, which also bring new opportunities for APR research. To give researchers a quick overview of APR techniques' complete development and future opportunities, we revisit the evolution of APR techniques and discuss in depth the latest advances in APR research. In this paper, the development of APR techniques is introduced in terms of four different patch generation schemes: search-based, constraint-based, template-based, and learning-based. Moreover, we propose a uniform set of criteria to review and compare each APR tool, summarize the advantages and disadvantages of APR techniques, and discuss the current state of APR development. Furthermore, we introduce the research on the related technical areas of APR that have also provided a strong motivation to advance APR development. Finally, we analyze current challenges and future directions, especially highlighting the critical opportunities that large language models bring to APR research.
研究の動機と目的
- APR技法の体系的な分類学を提供し、その歴史的発展をたどる。
- アプローチ、修復能力、品質、効率の各次元でAPRツールを比較するための統一的な評価フレームワークを提案する。
- 最近のデータ駆動型および学習ベースのAPRの進展と、それらが修復品質およびスケーラビリティに与える影響を強調する。
- 実証評価の課題、データセット品質、APR研究における大規模言語モデルの役割について議論する。
提案手法
- APR技法を四つのカテゴリに分類する:search-based、constraint-based、template-based、learning-based。
- アプローチ設計、修復能力、修復品質、修復効率の4つの次元を網羅する統一的で多次元の評価基準を提案する。
- 時系列でAPR技法をレビューし、各カテゴリの長所と限界を要約する。
- データセットの重複や比較の公平性といった実証評価の問題点を強調する。
- APR研究における大規模言語モデル(LLMs)とデータ駆動アプローチの影響と可能性について論じる。

実験結果
リサーチクエスチョン
- RQ1ソフトウェア欠陥に対応して、4つのパッチ生成スキームを横断してAPR技法はどのように進化してきたか。
- RQ2設計、能力、品質、効率の観点でAPRツールを比較する最適な評価基準は何か。
- RQ3各APRカテゴリの主要な利点と欠点は何か、特にデータ駆動型・学習ベースの手法において。
- RQ4産業展開とLLM統合を含む将来のAPR研究の主要な課題と機会は何か。
主な発見
- APR技法は四つの世代ファミリーに整理されており:search-based、constraint-based、template-based、learning-based。学習ベースの手法がますます顕著になっている。
- 四つの次元にまたがる12指標の統一評価フレームワークを提案し、APRツールを体系的に比較する。
- 学習ベースのAPRアプローチは修復データから経験的知識を獲得することを可能にし、時間とともに修復の範囲と品質を向上させる可能性がある。
- 本調査は、実証研究における不公正な比較やデータセット品質などの課題を指摘し、標準化されたベンチマークの必要性を強調している。
- 著者らは、将来のAPR開発の方向性として大規模言語モデル(LLM)とデータ駆動型手法の重要な役割を論じている。

より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。