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

2022 年度 実施状況報告書

ソースコード編集履歴に基づくプログラム変更理解支援技術

研究課題

研究課題/領域番号 20K11762
研究機関立命館大学

研究代表者

大森 隆行  立命館大学, 情報理工学部, 准教授 (90532903)

研究期間 (年度) 2020-04-01 – 2024-03-31
キーワード操作履歴グラフ / ソフトウェア進化 / プログラム変更理解 / 視覚化 / 統合開発環境 / 細粒度変更 / プログラム理解 / ソフトウェア開発支援
研究実績の概要

【操作履歴グラフの実装とリファクタリング理解支援】今年度は、操作履歴グラフの実装改善を進めた。これにより、与えられたテストケースに対して誤りなくグラフを生成できるようになった。このように実現した最新版の操作履歴グラフFOHGを用いて、過去に行われたリファクタリング操作の理解支援が可能かどうかを検討した。結果として、自動リファクタリングに関しては、既存の操作履歴に基づく検出手法と比べて多くの種類を検出可能であることを確認した。手動リファクタリングに関しては、構文要素のカットアンドペーストやトークンの一部変更が行われた時に生成されるエッジを利用することでMoveやRenameを中心としたリファクタリングの理解支援が可能であることを確認した。この成果を国内論文誌において発表した。
【柔軟な視覚化機構を備えたコード変更再生器の構築】FOHGが持つ構文要素の移動や変更を示すエッジの情報を用いて、操作履歴再生器OperationReplayerの機能拡張を行った。より具体的には、操作履歴データにFOHGのエッジ情報を示すアノテーションを加え、OperationReplayerでこれを読み込み可能とした。さらに、アノテーション情報を従来の操作履歴情報に加えて表示できるよう、機能拡張を行った。OperationReplayerの視覚化機構であるタイムラインバー上での情報表示や、再生対象の絞り込みの際にもこのアノテーション情報を利用できる。この成果を国内学会において発表した。

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

3: やや遅れている

理由

昨年度から進めてきたFOHGの実装は完了したが、昨年度までの実装の遅れに加えて、今年度は所属機関異動の必要性が生じ、研究に使える時間が減ったため、引き続き、計画からはやや遅れている。現時点で未達成である履歴要約の生成やリファクタリング以外の操作パターン検出に関してはすでに検討を進めており、大きな遅れではないと考える。

今後の研究の推進方策

3年間で達成できなかった当初目標の達成のため、1年間事業期間を延長する。
具体的には、操作履歴グラフが持つ情報に基づく変更履歴要約の生成、リファクタリング以外の編集パターンの検出、今年度実現したOperationReplayerの拡張の評価実験が残されている。変更履歴要約生成や編集パターンの検出においては、適切な履歴理解のシチュエーションの想定に基づいて手法を洗練していくことが必要だと考えられる。特に、要約生成に関しては、これまでに構文要素やグラフのエッジの生成・削除イベントに基づく手法を考案したが、履歴理解において不要な情報が数多く含まれることが問題点であった。今後はこの課題の解決に向けて手法を改善する。

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

【次年度使用額が生じた理由】進捗の遅れにより当初予定より実験と成果発表が遅れていること、および、コロナ禍により諸学会がオンライン開催となり旅費が不要になったため。
【使用計画】実験に伴い必要となる機器および成果発表に使用する予定である。

  • 研究成果

    (2件)

すべて 2023 2022

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

  • [雑誌論文] 拡張操作履歴グラフによるリファクタリングの理解支援2023

    • 著者名/発表者名
      大森 隆行、大西 淳
    • 雑誌名

      コンピュータ ソフトウェア

      巻: 40 ページ: 1_97~1_116

    • DOI

      10.11309/jssst.40.1_97

    • 査読あり / オープンアクセス
  • [学会発表] ソースコード編集履歴再生器の履歴アノテーションによる拡張2022

    • 著者名/発表者名
      大森 隆行
    • 学会等名
      日本ソフトウェア科学会 第29回ソフトウェア工学の基礎ワークショップ (FOSE2022)

URL: 

公開日: 2023-12-25  

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

Powered by NII kakenhi