論文の概要: Evaluating SZZ Implementations: An Empirical Study on the Linux Kernel
- arxiv url: http://arxiv.org/abs/2308.05060v2
- Date: Fri, 7 Jun 2024 10:22:24 GMT
- ステータス: 処理完了
- システム内更新日: 2024-06-10 21:06:02.191015
- Title: Evaluating SZZ Implementations: An Empirical Study on the Linux Kernel
- Title(参考訳): SZZ実装の評価:Linuxカーネルに関する実証的研究
- Authors: Yunbo Lyu, Hong Jin Kang, Ratnadira Widyasari, Julia Lawall, David Lo,
- Abstract要約: ゴーストコミットがSZZアルゴリズムに与える影響の評価は依然として限られている。
Linuxカーネル開発者は、標準のプラクティスとして、対応するバグ誘発コミット(s)のコミット識別子でバグ修正パッチのラベル付けを始めた。
本稿では6つのSZZアルゴリズムを76,046対のバグ修正パッチとLinuxカーネルからのバグ発生コミットに適用する。
- 参考スコア(独自算出の注目度): 8.698309437598944
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: The SZZ algorithm is used to connect bug-fixing commits to the earlier commits that introduced bugs. This algorithm has many applications and many variants have been devised. However, there are some types of commits that cannot be traced by the SZZ algorithm, referred to as "ghost commits". The evaluation of how these ghost commits impact the SZZ algorithm remains limited. Moreover, these algorithms have been evaluated on datasets created by software engineering researchers from information in bug trackers and version controlled histories. Since Oct 2013, the Linux kernel developers have started labelling bug-fixing patches with the commit identifiers of the corresponding bug-inducing commit(s) as a standard practice. As of v6.1-rc5, 76,046 pairs of bug-fixing patches and bug-inducing commits are available. This provides a unique opportunity to evaluate the SZZ algorithm on a large dataset that has been created and reviewed by project developers, entirely independently of the biases of software engineering researchers. In this paper, we apply six SZZ algorithms to 76,046 pairs of bug-fixing patches and bug-introducing commits from the Linux kernel. Our findings reveal that SZZ algorithms experience a more significant decline in recall on our dataset (13.8%) as compared to prior findings reported by Rosa et al., and the disparities between the individual SZZ algorithms diminish. Moreover, we find that 17.47% of bug-fixing commits are ghost commits. Finally, we propose Tracing-Commit SZZ (TC-SZZ), that traces all commits in the change history of lines modified or deleted in bug-fixing commits. Applying TC-SZZ to all failure cases, excluding ghost commits, we found that TC-SZZ could identify 17.7% of them. Our further analysis found that 34.6% of bug-inducing commits were in the function history, 27.5% in the file history (but not in the function history), and...
- Abstract(参考訳): SZZアルゴリズムはバグ修正コミットとバグを導入した以前のコミットを接続するために使用される。
このアルゴリズムには多くの応用があり、多くの変種が考案されている。
しかし、SZZアルゴリズムでは追跡できないいくつかのタイプのコミットがあり、"ghost commits"と呼ばれている。
これらのゴーストコミットがSZZアルゴリズムに与える影響の評価は依然として限られている。
さらに、これらのアルゴリズムは、バグトラッカーやバージョン管理履歴の情報から、ソフトウェア工学研究者によって作成されたデータセットに基づいて評価されている。
2013年10月以降、Linuxカーネル開発者は、標準のプラクティスとして、対応するバグ誘発コミット(s)のコミット識別子にバグ修正パッチをラベル付けし始めた。
v6.1-rc5では、76,046対のバグ修正パッチとバグ発生コミットが利用可能である。
これは、ソフトウェアエンジニアリング研究者のバイアスとは独立して、プロジェクト開発者によって作成、レビューされた大規模なデータセット上でSZZアルゴリズムを評価するユニークな機会を提供する。
本稿では6つのSZZアルゴリズムを76,046対のバグ修正パッチとLinuxカーネルからのバグ導入コミットに適用する。
以上の結果から,SZZアルゴリズムは,Rosaらによる以前の結果と比較して,データセットのリコール率(13.8%)が大幅に低下し,個々のSZZアルゴリズム間の差異が減少していることが判明した。
さらに、バグ修正コミットの17.47%がゴーストコミットであることがわかった。
最後に,Tracing-Commit SZZ (TC-SZZ)を提案する。
TC-SZZをゴーストコミットを除くすべての障害事例に適用すると、T-SZZが17.7%を特定できることがわかった。
我々のさらなる分析によると、34.6%のバグ誘発コミットが関数履歴にあり、27.5%はファイル履歴にある(ただし関数履歴には含まれていない)。
関連論文リスト
- Touchstone Benchmark: Are We on the Right Way for Evaluating AI Algorithms for Medical Segmentation? [90.30635552818875]
9種類の腹部臓器の大規模共同セグメント化ベンチマークであるTouchstoneを報告する。
このベンチマークは、世界中の76の病院から5,195回のCTスキャンと、11の病院から5,903回のCTスキャンに基づいています。
私たちは19のAIアルゴリズムの発明者14人を招待してアルゴリズムをトレーニングしましたが、私たちのチームは第三者として、3つのテストセットでこれらのアルゴリズムを独立して評価しました。
論文 参考訳(メタデータ) (2024-11-06T05:09:34Z) - CITADEL: Context Similarity Based Deep Learning Framework Bug Finding [36.34154201748415]
既存のディープラーニング(DL)フレームワークテストツールには、バグタイプが限定されている。
我々はCitadelを提案する。Citadelは効率と有効性の観点からバグの発見を高速化する手法だ。
論文 参考訳(メタデータ) (2024-06-18T01:51:16Z) - Identifying Defect-Inducing Changes in Visual Code [54.20154707138088]
SZZ-VC (SZZ Visual Code) は, ラインの違いではなくグラフィカル要素の違いに基づいて, 視覚的コードの変化を検知するアルゴリズムである。
業界製AAAビデオゲームのアルゴリズムを検証し、12のオープンソースプロジェクトで20の音楽ヴィジュアルプログラミングの欠陥を検証した。
論文 参考訳(メタデータ) (2023-09-07T00:12:28Z) - ALGO: Synthesizing Algorithmic Programs with LLM-Generated Oracle
Verifiers [60.6418431624873]
大きな言語モデル(LLM)は、機能記述からコードを実装するのに優れているが、アルゴリズムの問題に悩まされている。
我々は,アルゴリズムプログラムを LLM 生成 Oracle で合成するフレームワーク ALGO を提案し,その生成をガイドし,その正確性を検証する。
実験の結果,ALGOを装着すると,Codexモデルよりも8倍,CodeTよりも2.6倍の1サブミッションパス率が得られることがわかった。
論文 参考訳(メタデータ) (2023-05-24T00:10:15Z) - Multi-Granularity Detector for Vulnerability Fixes [13.653249890867222]
脆弱性修正のためのMiDa(Multi-Granularity Detector for Vulnerability Fixes)を提案する。
MiDasはコミットレベル、ファイルレベル、ハンクレベル、ラインレベルに対応して、コード変更の粒度ごとに異なるニューラルネットワークを構築する。
MiDasは、現在の最先端のベースラインをAUCで4.9%、JavaとPythonベースのデータセットで13.7%上回っている。
論文 参考訳(メタデータ) (2023-05-23T10:06:28Z) - What Happens When We Fuzz? Investigating OSS-Fuzz Bug History [0.9772968596463595]
我々は2022年3月12日までにOSS-Fuzzが公表した44,102件の問題を分析した。
コードを含むバグの発生時期を推定するために,バグ貢献のコミットを特定し,検出から修正までのタイムラインを測定した。
論文 参考訳(メタデータ) (2023-05-19T05:15:36Z) - A Gold Standard Dataset for the Reviewer Assignment Problem [117.59690218507565]
類似度スコア(Similarity score)とは、論文のレビューにおいて、レビュアーの専門知識を数値で見積もるものである。
私たちのデータセットは、58人の研究者による477の自己申告された専門知識スコアで構成されています。
2つの論文をレビュアーに関連付けるタスクは、簡単なケースでは12%~30%、ハードケースでは36%~43%である。
論文 参考訳(メタデータ) (2023-03-23T16:15:03Z) - Using Developer Discussions to Guide Fixing Bugs in Software [51.00904399653609]
我々は,タスク実行前に利用可能であり,また自然発生しているバグレポートの議論を,開発者による追加情報の必要性を回避して利用することを提案する。
このような議論から派生したさまざまな自然言語コンテキストがバグ修正に役立ち、オラクルのバグ修正コミットに対応するコミットメッセージの使用よりもパフォーマンスの向上につながることを実証する。
論文 参考訳(メタデータ) (2022-11-11T16:37:33Z) - ADPTriage: Approximate Dynamic Programming for Bug Triage [0.0]
オンラインバグトリアージタスクのためのマルコフ決定プロセス(MDP)モデルを開発した。
私たちはADPTriageと呼ばれるADPベースのバグトリアージソリューションを提供しています。
以上の結果から, 代入精度と固定時間の観点から, ミオピックアプローチよりも有意な改善が見られた。
論文 参考訳(メタデータ) (2022-11-02T04:42:21Z) - Lifelong Bandit Optimization: No Prior and No Regret [70.94238868711952]
我々は,過去の経験から学習することで環境に適応するアルゴリズムであるLIBOを開発した。
カーネルが未知だが、すべてのタスク間で共有されるカーネル構造を仮定する。
我々のアルゴリズムは、任意のカーネル化または線形バンディットアルゴリズムと組み合わせて、最適な性能を保証できる。
論文 参考訳(メタデータ) (2022-10-27T14:48:49Z) - DABT: A Dependency-aware Bug Triaging Method [0.0]
自然言語処理と整数を利用して,適切な開発者にバグを割り当てる,Dependency-aware Bug Triaging(DABT)と呼ばれるバグトリアージ手法を提案する。
その結果,DABTは過度なバグを最大12%まで減らすことができることがわかった。
また、バグの修正時間の平均を半減します。
論文 参考訳(メタデータ) (2021-04-26T17:35:42Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。