• 研究課題をさがす
  • 研究者をさがす
  • KAKENの使い方
  1. 課題ページに戻る

2021 年度 実施状況報告書

自動修正適合性:新しいソフトウェア品質指標の創成と普及

研究課題

研究課題/領域番号 21K18302
研究機関大阪大学

研究代表者

肥後 芳樹  大阪大学, 情報科学研究科, 准教授 (70452414)

研究分担者 林 晋平  東京工業大学, 情報理工学院, 准教授 (40541975)
松本 真佑  大阪大学, 情報科学研究科, 助教 (90583948)
研究期間 (年度) 2021-07-09 – 2025-03-31
キーワード自動プログラム修正 / ミューテーションテスティング / テスト自動生成 / 自動修正適合性
研究実績の概要

2021年度はまず自動修正適合性を定義し,ソースコードのミューテーション技術を利用した自動修正適合性の計測手法を提案した.ミューテーション技術を利用して人工的なバグを含むソースコードを大量に生成し,その人工的なバグのうちどの程度を自動プログラム修正技術によって修正できたかを計測することにより,自動で人間の主観を入れることなく計測することができる.さらに,この計測手法の有効性を確かめるために,機能が等価であるがその構造が異なるJavaのメソッドのペアを数個用意し,それらの自動修正適合性を計測することにより,ソースコードの構造が自動プログラム修正技術によるバグ修正の成否に影響を与えうることを示した.また,この実験結果から,人間にとって良いとされているプログラム構造(「ネストが深くない」や「分岐が少ない」等)が必ずしも,自動プログラム修正にとっては良いとはいえないことがわかった.つまり,人間にとって扱いやすいプログラムは必ずしも機械にとって扱いやすいとは限らず,機械にバグ修正をさせるためには機械がバグ修正をしやすいようにソースコードを記述する必要があるかもしれないことがこの実験結果から伺えた.
2021年度の後半より,自動修正適合性の評価をするためのデータセットの構築についても準備を始めた.具体的には,同じ入力(引数)に対しては同じ出力(返値)を返すJavaのメソッド群をオープンソースソフトウェアから自動的に抽出する枠組みを構築している.これまでに,規模の小さいデータセットを試作して自動修正適合性の評価に使えるかを確かめるところまでは完了した.

現在までの達成度 (区分)
現在までの達成度 (区分)

2: おおむね順調に進展している

理由

当初の予定通り,2021年度はソースコードのミューテーション技術を利用した自動修正適合性の計測手法を考案し,その有用性を示すことができた.
また,自動修正適合性の評価のためのデータセットについても構築をはじめており,研究は順調に進んでいる.
新型コロナウイルスのため,成果発表が対面ではなくオンラインになってしまったが,研究の遂行に影響を与えるまでではない.
現在のところ,想定していなかった問題は起こっていない.

今後の研究の推進方策

2022年度については,2021年度の後半より開始したデータセットの構築を大規模なオープンソースソフトウェア群について行う.このデータセットの構築手順にはテストの自動生成や生成したテストを大量のメソッド群に対して実行する処理が含まれており,素直に全ての処理を行ってしまってはデータセットの構築ができない.そのため,うまく必要の無い処理を間引く経験則を導出する必要がある.この効率的なデータセットの構築と構築したデータセットの公開が2022年度の第一のタスクとして挙げられる.
さらに,構築したデータセットに対して,2021年度に提案した自動修正適合性の自動計測手法を適用し,ソースコードの構造と自動プログラム修正技術の関連性についての調査を始める.現時点でデータセットに含まれるメソッドの数が読めないため,このタスクが2022年度中に終了できるかは不明である.遅くとも2023年度の上半期までには終了したい.

次年度使用額が生じた理由

新型コロナウイルスの影響により,国際会議での発表を次年度に持ち越すことを決めたため,旅費を一部繰り越した.
半導体不足により,高性能計算機の購入を少し先延ばししたため,物品費を一部繰り越しした.

  • 研究成果

    (7件)

すべて 2022 2021

すべて 雑誌論文 (1件) (うち査読あり 1件、 オープンアクセス 1件) 学会発表 (6件)

  • [雑誌論文] Supporting Proactive Refactoring: An Exploratory Study on Decaying Modules and Their Prediction2021

    • 著者名/発表者名
      Natthawute Sae-Lim, Shinpei Hayashi, Motoshi Saeki
    • 雑誌名

      IEICE Transactions on Information and Systems

      巻: E104-D(10) ページ: 1601-1615

    • DOI

      10.1587/transinf.2020EDP7255

    • 査読あり / オープンアクセス
  • [学会発表] 自動修正適合性を用いた修正しやすいプログラム構造の評価2022

    • 著者名/発表者名
      前島葵
    • 学会等名
      電子情報通信学会ソフトウェアサイエンス研究会
  • [学会発表] ソースコード変更パターンのプロジェクト共通性を考慮した変更推薦2022

    • 著者名/発表者名
      安藤直樹
    • 学会等名
      電子情報通信学会ソフトウェアサイエンス研究会
  • [学会発表] 自動修正適合性:新しいソフトウェア品質指標とその計測2021

    • 著者名/発表者名
      九間哲士
    • 学会等名
      ソフトウェアエンジニアリングシンポジウム2021
  • [学会発表] ソースコードの時間変化がバグ限局に与える影響の調査2021

    • 著者名/発表者名
      三井亮称
    • 学会等名
      電子情報通信学会ソフトウェアサイエンス研究会
  • [学会発表] 細粒度履歴追跡のための増分的なリポジトリ変換ツールの設計と実装2021

    • 著者名/発表者名
      柴駿太
    • 学会等名
      日本ソフトウェア科学会第38回大会
  • [学会発表] 複合メトリクスのトレンド分析の効率化に向けて:モジュール腐敗度への適用2021

    • 著者名/発表者名
      林辰宜
    • 学会等名
      第28回ソフトウェア工学の基礎ワークショップ

URL: 

公開日: 2022-12-28  

サービス概要 検索マニュアル よくある質問 お知らせ 利用規程 科研費による研究の帰属

Powered by NII kakenhi