Skip to main content
QUICK REVIEW

[論文レビュー] Connecting Software Metrics across Versions to Predict Defects

Yibin Liu, Yanhui Li|arXiv (Cornell University)|Dec 28, 2017
Software Engineering Research参考文献 57被引用数 7
ひとこと要約

本稿では、継続的なバージョンにおけるソフトウェアモジュールの時間的進化を捉えるために、メトリクスの歴史的バージョンシーケンス(HVSM)を用いた新しい欠际予測アプローチを提案する。HVSMシーケンスを再帰的ニューラルネットワーク(RNN)でモデル化することで、9つのオープンソースプロジェクトにおいて、ベースラインモデルと比較して著しく優れた作業効率に配慮した順位付け性能を達成した。

ABSTRACT

Accurate software defect prediction could help software practitioners allocate test resources to defect-prone modules effectively and efficiently. In the last decades, much effort has been devoted to build accurate defect prediction models, including developing quality defect predictors and modeling techniques. However, current widely used defect predictors such as code metrics and process metrics could not well describe how software modules change over the project evolution, which we believe is important for defect prediction. In order to deal with this problem, in this paper, we propose to use the Historical Version Sequence of Metrics (HVSM) in continuous software versions as defect predictors. Furthermore, we leverage Recurrent Neural Network (RNN), a popular modeling technique, to take HVSM as the input to build software prediction models. The experimental results show that, in most cases, the proposed HVSM-based RNN model has a significantly better effort-aware ranking effectiveness than the commonly used baseline models.

研究の動機と目的

  • 既存の欠际予測器—コードメトリクスおよびプロセスマトリクス—が、プロジェクトのバージョンを跨いでソフトウェアモジュールの時間的進化を捉えることの限界を是正すること。
  • ファイルの複数の連続的バージョンにわたる静的および変更メトリクスを統合する新しい欠际予測器、歴史的バージョンシーケンスメトリクス(HVSM)を提案すること。
  • 再帰的ニューラルネットワーク(RNN)を用いてソフトウェア進化の順序的性質をモデル化することで、欠际予測性能を向上させること。
  • コスト効率性および順位付け効果性に重点を置いた、プロジェクト内欠际予測(WPDP)シナリオにおける提案されたHVSM-RNNモデルの評価すること。
  • HVSM-RNNモデルが7つ広く使われているベースライン分類器よりも、作業効率に配慮した欠际予測において、統計的に有意に優れていることを実証すること。

提案手法

  • 各ファイルの連続的なソフトウェアバージョンに跨るコードメトリクスおよびプロセスマトリクスを収集することで、ファイルごとの歴史的バージョンシーケンスメトリクス(HVSM)を構築する。
  • コードメトリクス(例:CKおよび McCabe 特徴量)とプロセスマトリクス(例:変更頻度、所有者)を用いてHVSMを抽出し、時間的経過に伴う静的および動的特性を表現する。
  • RNNを用いてHVSMの順序入力をモデル化し、長期間にわたり続くファイルに一般的に見られる可変長シーケンスの処理を可能にする。
  • ファイルレベルの欠际ラベルを用いてRNNモデルをエンドツーエンドで学習させ、歴史的メトリクストレンドに基づく欠际感受性の予測を実現する。
  • AUCおよびACC(20%の作業効率閾値)といった標準的な評価指標を用いて、作業効率に配慮したシナリオにおける順位付け効果性を評価する。
  • 性能差の統計的有意性を検証するために、ノンパラメトリック検定(ウィルコクソン符号順位検定、クランプのδ、Scott-Knott検定)を適用する。

実験結果

リサーチクエスチョン

  • RQ1複数のソフトウェアバージョンに跨る歴史的メトリクスシーケンスの統合は、静的またはペアワイズの変更メトリクスと比較して、欠际予測性能を向上させることができるか?
  • RQ2RNNを用いてソフトウェアモジュールの時間的進化をモデル化することで、欠际予測における作業効率に配慮した順位付け効果性が向上するか?
  • RQ3HVSM-RNNモデルは、プロジェクト内欠际予測において、7つの確立されたベースライン分類器(例:ナイーブベイズ、ランダムフォレスト、スペクトルクラスタリング)と比較して、AUCおよびACCの観点でどのように差をつけるか?
  • RQ4複数のオープンソースプロジェクトに跨る非パラメトリック検定を用いて評価した場合、HVSM-RNNモデルの性能向上は統計的に有意であるか?
  • RQ5HVSMベースの特徴量は、従来のコードメトリクスやプロセスマトリクスだけでは捉えきれない、進化する欠际感受性パターンを効果的に捉えられるか?

主な発見

  • HVSM-RNNモデルは、全9プロジェクトにおいて最高の平均AUCを達成し、バグありファイルとクリーンなファイルの間の識別能力が優れていることを示した。
  • 作業効率に配慮した評価(20%の作業効率閾値におけるACC)において、Scott-Knott検定でRNNモデルが最上位にランクされ、ベースラインモデルよりも統計的に有意に優れていることが示された。
  • ウィルコクソン符号順位検定およびクランプのδを用いたWin/Tie/Loss分析により、HVSM-RNNモデルが順位付け効果性の観点で大多数のベースライン分類器を著しく上回っていることが確認された。
  • 本手法は、静的またはペアワイズメトリクスが表現できない、ファイルの長期的進化トレンドを捉える上で顕著な利点を示した。
  • RNNモデルは可変長のHVSM入力を効果的に処理でき、固定長入力を必要とする従来の分類器の主な制限を克服した。
  • 結果から、RNNフレームワークにおいてコードメトリクスを用いてHVSMを構築することが、プロセスマトリクスに依存する場合よりも優れた性能をもたらすことが示唆された。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。