プログラム自動修正に向けた行レベルのバグ予測手法LineVul+の提案

DOI オープンアクセス

書誌事項

タイトル別名
  • LineVul+: Towards Automated Program Repair via Line-level Defect Prediction

この論文をさがす

説明

<p>近年,デバッグ作業のコスト削減のために自動バグ修正の研究が行われている.自動バグ修正を行う際にはバグの箇所を特定するバグ限局を行う必要があるが,多くのバグ限局手法はテストケースの網羅性に依存した方法であり,テストケースが不十分で網羅性が低い場合に適用が難しい.そこで我々は,テストケースを必要としない行単位のバグ予測をバグ限局の代わりに用いることで,この問題の解決を目指している.行単位のバグ予測は,既存のバグ限局手法と同じ粒度のバグを対象とするため,バグ限局の代わりとして使用できると考えた.本論文では,行単位の脆弱性予測を行う既存手法LineVulを改良した手法LineVul+を構築・評価し,自動バグ修正への適用可能性について考察する.LineVul+はGitの差分で与えられるコード片(ハンク)に対してバグ予測を行い,バグと予測された場合,行レベルで予測を行う2段階のステップで構築されている.実験の結果,ハンクレベルの予測では,precisionは低いが,recallが高いモデルを構築できた.行レベルの予測では,Top-5 Accuracyが0.84,IFAの中央値が0と高い精度で予測することができた.一方,自動バグ修正へ提案手法を応用するためには,偽陽性を減らす必要があるという課題が明らかになった.</p>

収録刊行物

関連プロジェクト

もっと見る

詳細情報 詳細情報について

  • CRID
    1390021149549326848
  • DOI
    10.11309/jssst.41.4_14
  • ISSN
    02896540
  • 本文言語コード
    ja
  • 資料種別
    journal article
  • データソース種別
    • JaLC
    • KAKEN
  • 抄録ライセンスフラグ
    使用不可

問題の指摘

ページトップへ