\「細かく追うほど誤検出が増える」を解決/多数決で誤検出を抑える細粒度バグ混入コミット特定技術

−AI時代の学習データ整備に貢献−

システム情報科学研究院
近藤 将成 助教 / 亀井 靖高 教授

ポイント

・ソフトウェアのバグの原因となった変更(バグ混入コミット※1)を高精度に特定する新技術「MV-SZZ」を開発
・トークン※2単位での詳細な変更履歴追跡と多数決に基づく仕組みを用いて最も妥当と思われる変更を選択する仕組みを組み合わせることで、従来手法の課題であった見逃しや誤検出の大幅な削減が可能に
・ソフトウェア開発コストの低減と品質向上への貢献と高品質なデータセットの構築が可能になることでのAI時代における学習データ整備への貢献に期待

概要

大阪大学大学院情報科学研究科の近藤偉成さん(博士前期課程)、肥後芳樹教授(コンピュータサイエンス専攻ソフトウェア工学講座)、九州大学大学院システム情報科学研究院の近藤将成助教、亀井靖高教授(情報理工学専攻)、およびカナダビクトリア大学のDaniel M. German教授の研究グループは、ソフトウェア開発において、不具合(バグ)の原因になった変更(バグ混入コミット)を高精度に特定する新技術「MV-SZZ」を開発しました。

ソフトウェア開発では、不具合が「いつ」・「どの変更によって」混入されたのかを特定することが、品質向上や開発効率の改善において極めて重要です。これまでにもバグ混入コミットを特定する技術は提案されてきましたが、精度面に課題がありました。

今回の新技術「MV-SZZ」は、ソフトウェアのソースコード※3をトークンの列として捉え、その変更(開発)履歴を詳細に追跡します。さらに、複数のバグ混入コミットの候補を発見した場合には、多数決に基づく仕組みを用いて、最も妥当と思われる変更をバグ混入コミットとして選択します。これにより、従来手法で問題となっていたバグ混入コミットの見逃しや誤検出を大幅に抑制し、高精度な特定を可能にしました。

この技術は、実用面ではソフトウェア開発現場におおける開発コスト削減と品質向上に貢献します。また研究面では、バグ混入およびバグ修正に関する高品質なデータセットの構築を可能にし、AI時代における学習データ整備に大きく貢献します。これにより、バグ予測やバグ自動修正といった研究分野のさらなる発展が期待されます。

本研究成果は、米国科学誌「Transactions on Software Engineering」に、2026年5月1日(金)(日本時間)にオンライン公開されました。

用語解説

※1 バグ混入コミット
ソフトウェアは多数のコミットを積み重ねて進化していくため、不具合の原因を調べる際には、どのコミットが不具合を引き起こしたのかを特定することが重要となる。本研究で扱うバグ混入コミットとは、そのような履歴の中で不具合の原因となったコミットを指す。

コミットとは、ソフトウェア開発において、プログラムの変更内容をひとまとまりとして記録する単位のこと。開発者は、機能の追加や不具合の修正などを行うたびに、その変更内容を「コミット」として履歴に保存する。各コミットには、「いつ」「誰が」「どのファイルを」「どのように変更したか」といった情報が記録されており、ソフトウェアの開発過程を時系列で振り返ることができる。これにより、過去の状態に戻したり、変更の理由を確認したりすることが可能になる。

※2 トークン
トークンとは、ソースコードを構成する最小単位の要素のこと。プログラムの中では、変数名や数値、演算子、記号(かっこやセミコロンなど)がそれぞれ意味を持っており、これら一つ一つがトークンとして扱われる。例えば、1行のプログラムであっても、内部的には複数のトークンに分解できる。ソースコードをトークン単位で捉えることで、「行全体」ではなく、「どの要素がどのように変化したか」をより細かく分析することが可能になる。

※3 ソースコード
ソースコードとは、ソフトウェアの動作内容を人間が理解できる形で記述したプログラムの設計図のこと。ソフトウェア開発者は、プログラミング言語を用いてソースコードを書き、それをコンピュータが実行できる形に変換することでソフトウェアを動かしている。

ソースコードには、計算処理の手順だけでなく、条件分岐やデータの扱い方など、ソフトウェアの振る舞いに関するすべての情報が含まれている。そのため、ソフトウェアの不具合(バグ)は、ソースコード中の記述ミスや設計上の問題として現れる。

本研究では、このソースコードがどのような変更履歴(コミット)を経て現在の形になったのかに注目し、過去のソースコードの変更を分析することで、不具合の原因となった変更を特定する技術を対象としている。

詳細

本件の詳細についてはこちら

お問い合わせ先

システム情報科学研究院 亀井靖高 教授

[5/26開催]令和8年度第2回I²CNER Seminar

“ヤゲン軟骨の秘密”を解明

関連記事

  1. 令和4年度第4回I²CNER Webinar

    令和4年度第4回I²CNER Webinarカーボンニュートラル・エ…

  2. 個々のマイクロバブルが従うサイズ変化の法則を解明…

    ~目に見えない気泡であるナノバブルの安定性解明に期待~ポイント・…

  3. リボソームはニワトリ筋肉細胞の増殖を亢進する

    〜細胞農業製品の効率的な産生に期待〜基幹教育院太田 訓正 教授ポ…

  4. 《3/7開催》ADAAクリエイターズトーク「明和…

    2023年にデビュー30周年を迎えた「明和電機」結成のストーリーや、オタマト…

  5. ビッグバン宇宙を実験室で再現できる理論を構築

    トポロジカル物質を使った極限宇宙シミュレータの理論 ポイント・…

  6. 【9/6開催】Kyushu University…

    オランダ・Twente 大学とのジョイントワークショップを開催2024年…

  7. 「はやぶさ2」ミッションによる世界初の小惑星から…

    〜リュウグウからのたまて箱〜概要 国立研究開発法人宇宙航空研究開…

  8. 保存則のもとでの量子操作の原理的制約に対する未解…

     ~ 量子デバイスへの応用に期待 ~ ポイント・エネルギー保…