研究課題/領域番号 |
20K11762
|
研究種目 |
基盤研究(C)
|
配分区分 | 基金 |
応募区分 | 一般 |
審査区分 |
小区分60050:ソフトウェア関連
|
研究機関 | 立命館大学 |
研究代表者 |
大森 隆行 立命館大学, 情報理工学部, 准教授 (90532903)
|
研究期間 (年度) |
2020-04-01 – 2024-03-31
|
研究課題ステータス |
交付 (2022年度)
|
配分額 *注記 |
2,990千円 (直接経費: 2,300千円、間接経費: 690千円)
2022年度: 1,170千円 (直接経費: 900千円、間接経費: 270千円)
2021年度: 780千円 (直接経費: 600千円、間接経費: 180千円)
2020年度: 1,040千円 (直接経費: 800千円、間接経費: 240千円)
|
キーワード | 操作履歴グラフ / ソフトウェア進化 / プログラム変更理解 / 視覚化 / 統合開発環境 / 細粒度変更 / プログラム理解 / ソフトウェア開発支援 |
研究開始時の研究の概要 |
ソフトウェアを効率よく、誤りなく開発するため、開発者が行った操作の履歴に基づく開発支援手法について研究を行う。特に、変更履歴理解のために、履歴はどのような情報を含むべきか、それらの情報をいかに獲得するか、変更そのものをどのように保管・提示するべきかを明らかにする。 初年度においては基盤となる履歴のグラフ表現についての研究を進める。その後、履歴の視覚化や要約といった支援手法の研究を行う。
|
研究実績の概要 |
【操作履歴グラフの実装とリファクタリング理解支援】今年度は、操作履歴グラフの実装改善を進めた。これにより、与えられたテストケースに対して誤りなくグラフを生成できるようになった。このように実現した最新版の操作履歴グラフFOHGを用いて、過去に行われたリファクタリング操作の理解支援が可能かどうかを検討した。結果として、自動リファクタリングに関しては、既存の操作履歴に基づく検出手法と比べて多くの種類を検出可能であることを確認した。手動リファクタリングに関しては、構文要素のカットアンドペーストやトークンの一部変更が行われた時に生成されるエッジを利用することでMoveやRenameを中心としたリファクタリングの理解支援が可能であることを確認した。この成果を国内論文誌において発表した。 【柔軟な視覚化機構を備えたコード変更再生器の構築】FOHGが持つ構文要素の移動や変更を示すエッジの情報を用いて、操作履歴再生器OperationReplayerの機能拡張を行った。より具体的には、操作履歴データにFOHGのエッジ情報を示すアノテーションを加え、OperationReplayerでこれを読み込み可能とした。さらに、アノテーション情報を従来の操作履歴情報に加えて表示できるよう、機能拡張を行った。OperationReplayerの視覚化機構であるタイムラインバー上での情報表示や、再生対象の絞り込みの際にもこのアノテーション情報を利用できる。この成果を国内学会において発表した。
|
現在までの達成度 (区分) |
現在までの達成度 (区分)
3: やや遅れている
理由
昨年度から進めてきたFOHGの実装は完了したが、昨年度までの実装の遅れに加えて、今年度は所属機関異動の必要性が生じ、研究に使える時間が減ったため、引き続き、計画からはやや遅れている。現時点で未達成である履歴要約の生成やリファクタリング以外の操作パターン検出に関してはすでに検討を進めており、大きな遅れではないと考える。
|
今後の研究の推進方策 |
3年間で達成できなかった当初目標の達成のため、1年間事業期間を延長する。 具体的には、操作履歴グラフが持つ情報に基づく変更履歴要約の生成、リファクタリング以外の編集パターンの検出、今年度実現したOperationReplayerの拡張の評価実験が残されている。変更履歴要約生成や編集パターンの検出においては、適切な履歴理解のシチュエーションの想定に基づいて手法を洗練していくことが必要だと考えられる。特に、要約生成に関しては、これまでに構文要素やグラフのエッジの生成・削除イベントに基づく手法を考案したが、履歴理解において不要な情報が数多く含まれることが問題点であった。今後はこの課題の解決に向けて手法を改善する。
|