論文の概要: Identifying Bug Inducing Commits by Combining Fault Localisation and Code Change Histories
- arxiv url: http://arxiv.org/abs/2502.12922v1
- Date: Tue, 18 Feb 2025 15:02:22 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-02-19 14:07:52.112323
- Title: Identifying Bug Inducing Commits by Combining Fault Localisation and Code Change Histories
- Title(参考訳): フォールトローカライゼーションとコード変更履歴を組み合わせたコミット誘導バグの同定
- Authors: Gabin An, Jinsu Choi, Jingun Hong, Naryeong Kim, Shin Yoo,
- Abstract要約: BIC(Bug Inducing Commit)は、コミットにバグを導入するコード変更である。
我々は、最近修正されたコード要素がある場合、コミットがBICになる可能性が高いというコア概念でBICを識別することを目的としたFonteと呼ばれるテクニックを提案する。
フォンテは最先端のBIC識別技術を大きく上回り、最大45.8%のMRRを達成している。
- 参考スコア(独自算出の注目度): 10.027862394831669
- License:
- Abstract: A Bug Inducing Commit (BIC) is a code change that introduces a bug into the codebase. Although the abnormal or unexpected behavior caused by the bug may not manifest immediately, it will eventually lead to program failures further down the line. When such a program failure is observed, identifying the relevant BIC can aid in the bug resolution process, because knowing the original intent and context behind the code change, as well as having a link to the author of that change, can facilitate bug triaging and debugging. However, existing BIC identification techniques have limitations. Bisection can be computationally expensive because it requires executing failing tests against previous versions of the codebase. Other techniques rely on the availability of specific post hoc artifacts, such as bug reports or bug fixes. In this paper, we propose a technique called Fonte that aims to identify the BIC with a core concept that a commit is more likely to be a BIC if it has more recently modified code elements that are highly suspicious of containing the bug. To realise this idea, Fonte leverages two fundamental relationships in software: the failure-to-code relationship, which can be quantified through fault localisation techniques, and the code-to-commit relationship, which can be obtained from version control systems. Our empirical evaluation using 206 real-world BICs from open-source Java projects shows that Fonte significantly outperforms state-of-the-art BIC identification techniques, achieving up to 45.8% higher MRR. We also report that the ranking scores produced by Fonte can be used to perform weighted bisection. Finally, we apply Fonte to a large-scale industry project with over 10M lines of code, and show that it can rank the actual BIC within the top five commits for 87% of the studied real batch-testing failures, and save the BIC inspection cost by 32% on average.
- Abstract(参考訳): BIC(Bug Inducing Commit)は、コードベースにバグを導入するコード変更である。
バグによって引き起こされる異常または予期せぬ振る舞いはすぐには現れないかもしれないが、最終的にはプログラムの失敗につながるだろう。
このようなプログラム障害が観測されると、コード変更の背後にある本来の意図とコンテキストを知るだけでなく、その変更の著者へのリンクを持つことによって、バグのトリアージとデバッグを容易にするため、関連するBICを特定することがバグ解決プロセスに役立つ。
しかし、既存のBIC識別技術には限界がある。
以前のバージョンのコードベースに対してフェールテストを実行する必要があるため、Bisectionは計算コストがかかる可能性がある。
他のテクニックは、バグレポートやバグ修正など、特定のポストホックアーティファクトの可用性に依存している。
本稿では、最近修正されたコード要素がバグを含むことを非常に疑わしい場合、コミットがBICになる可能性が高いという中核概念でBICを識別することを目的としたFonteと呼ばれる手法を提案する。
このアイデアを実現するために、Fonte氏は、フォールトローカライゼーション技術によって定量化できるフェール・ツー・コード関係(fail-to-code relationship)と、バージョン管理システムから得られるコード・トゥ・コミット関係(code-to-commit relationship)という、ソフトウェアにおける2つの基本的な関係を利用する。
オープンソースのJavaプロジェクトから206の現実世界のBICを使用した経験的評価は、Fonteが最先端のBIC識別技術を大幅に上回り、最大45.8%のMRRを達成したことを示している。
また,Fonteが生成したランキングスコアを重み付き2分割に使用することも報告した。
最後に、Fonteを1000万行以上のコードを持つ大規模産業プロジェクトに適用し、調査対象のバッチテスト失敗の87%で、上位5つのコミットで実際のBICをランク付けし、BIC検査コストを平均32%削減できることを示す。
関連論文リスト
- Improved IR-based Bug Localization with Intelligent Relevance Feedback [2.9312156642007294]
ソフトウェアバグは、開発とメンテナンスにおいて重大な課題となり、実践者は、バグを扱うのに約50%の時間を費やします。
既存の多くのテクニックでは、バグレポートとソースコードの間のテキストおよび意味的関連性を使用して、報告されたバグをローカライズするために、Information Retrieval (IR)を採用している。
本稿では,バグレポートとコードの関連性を評価することによって,コンテキストギャップに対処する新たなバグローカライゼーション手法であるBRaInを提案する。
論文 参考訳(メタデータ) (2025-01-17T20:29:38Z) - Understanding Code Understandability Improvements in Code Reviews [79.16476505761582]
GitHub上のJavaオープンソースプロジェクトからの2,401のコードレビューコメントを分析した。
改善提案の83.9%が承認され、統合され、1%未満が後に復活した。
論文 参考訳(メタデータ) (2024-10-29T12:21:23Z) - Just-In-Time Software Defect Prediction via Bi-modal Change Representation Learning [5.04327119462716]
本稿では, BiCC-BERT と呼ばれる新しいバイモーダル変更事前学習モデルを提案する。
BiCC-BERTは、バイモーダルなセマンティック表現を学ぶために、コード変更コーパスで事前訓練される。
27,391コードの変更を使用してJIT-BiCCをトレーニングし、そのパフォーマンスを8つの最先端JIT-DPアプローチと比較する。
論文 参考訳(メタデータ) (2024-10-15T23:13:29Z) - Supporting Cross-language Cross-project Bug Localization Using Pre-trained Language Models [2.5121668584771837]
既存のテクニックは、アプリケーション固有のデータに依存しているため、一般化性とデプロイメントに苦労することが多い。
本稿では,プロジェクトと言語の境界を超越したバグローカライゼーションのための,PLMに基づく新しい言語モデルを提案する。
論文 参考訳(メタデータ) (2024-07-03T01:09:36Z) - Investigating the Transferability of Code Repair for Low-Resource Programming Languages [57.62712191540067]
大規模言語モデル(LLM)は、コード生成タスクにおいて顕著なパフォーマンスを示している。
近年の作業は、連鎖推論や蒸留といった現代的な技術を統合することで、コード修復のプロセスを強化している。
高低資源言語と低低資源言語の両方でコード修復を蒸留する利点について検討する。
論文 参考訳(メタデータ) (2024-06-21T05:05:39Z) - Chain of Targeted Verification Questions to Improve the Reliability of Code Generated by LLMs [10.510325069289324]
LLMが生成するコードの信頼性向上を目的とした自己補充手法を提案する。
当社のアプローチは,初期コード内の潜在的なバグを特定するために,対象とする検証質問(VQ)に基づいています。
本手法は,LLMをターゲットとするVQと初期コードで再プロンプトすることで,潜在的なバグの修復を試みる。
論文 参考訳(メタデータ) (2024-05-22T19:02:50Z) - FoC: Figure out the Cryptographic Functions in Stripped Binaries with LLMs [54.27040631527217]
削除されたバイナリの暗号関数を抽出するFoCと呼ばれる新しいフレームワークを提案する。
まず、自然言語における暗号関数のセマンティクスを要約するために、バイナリ大言語モデル(FoC-BinLLM)を構築した。
次に、FoC-BinLLM上にバイナリコード類似モデル(FoC-Sim)を構築し、変更に敏感な表現を作成し、データベース内の未知の暗号関数の類似実装を検索する。
論文 参考訳(メタデータ) (2024-03-27T09:45:33Z) - Theoretically Achieving Continuous Representation of Oriented Bounding Boxes [64.15627958879053]
本論文は,オブジェクト指向境界ボックス表現における不連続性を完全に解決しようとする試みである。
本研究では,既存の検出器に容易に統合可能なCOBB(Continuous OBB)という新しい表現法を提案する。
OOD評価のためのオープンソースのディープラーニングフレームワークJittorの検出ツールボックスJDetをベースとした,モジュール化されたベンチマークを開発した。
論文 参考訳(メタデータ) (2024-02-29T09:27:40Z) - Knowledge-Augmented Language Model Verification [68.6099592486075]
最近の言語モデル(LM)は、パラメータに内在化された知識を持つテキストを生成する際、印象的な能力を示している。
本稿では,知識付加型LMの出力と知識を別個の検証器で検証することを提案する。
その結果,提案した検証器は,検索と生成の誤りを効果的に識別し,LMがより現実的に正しい出力を提供できることを示した。
論文 参考訳(メタデータ) (2023-10-19T15:40:00Z) - Pre-training Code Representation with Semantic Flow Graph for Effective
Bug Localization [4.159296619915587]
セマンティックフローグラフ (Semantic Flow Graph, SFG) という, 有向多ラベル符号グラフの表現法を提案する。
そこで本手法は,バグローカライゼーションにおける最先端性能を実現する。
論文 参考訳(メタデータ) (2023-08-24T13:25:17Z) - Generation Probabilities Are Not Enough: Uncertainty Highlighting in AI Code Completions [54.55334589363247]
本研究では,不確実性に関する情報を伝達することで,プログラマがより迅速かつ正確にコードを生成することができるかどうかを検討する。
トークンのハイライトは、編集される可能性が最も高いので、タスクの完了が早くなり、よりターゲットを絞った編集が可能になることがわかりました。
論文 参考訳(メタデータ) (2023-02-14T18:43:34Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。