研究課題/領域番号 |
22H03567
|
配分区分 | 補助金 |
研究機関 | 東京工業大学 |
研究代表者 |
林 晋平 東京工業大学, 情報理工学院, 准教授 (40541975)
|
研究分担者 |
肥後 芳樹 大阪大学, 大学院情報科学研究科, 教授 (70452414)
小林 隆志 東京工業大学, 情報理工学院, 教授 (50345386)
丸山 勝久 立命館大学, 情報理工学部, 教授 (30330012)
|
研究期間 (年度) |
2022-04-01 – 2026-03-31
|
キーワード | ソフトウェア進化 / リファクタリング / アノテーション / 進化コーパス / 版管理システム |
研究実績の概要 |
本研究は,リファクタリング等の類型化可能なプログラム変換の多くを表現可能な進化コーパスを作成し,ソフトウェア自動進化技術の適用可能範囲,進化分析技術の妥当性を改善させることを目指すものである.令和5年度では,主に以下の成果を得た.(1)アノテーションのスキーマおよび進化オペレータの概念階層の検討を進めた.また,これに基づき作成したリファクタリング事例の検索エンジンをより洗練させ,コミットのアノテーション環境とより接続しやすいよう改善した.(2)リファクタリングのアノテーション環境を整備し,コミット内に含まれる変更のうち類似箇所を特定して強調表示することでリファクタリングに相当する変更の捜索を支援するインタフェースを実装した.また,複数の種類の変更が混在したコミットに含まれるリファクタリング操作を特定しやすいよう,変更を分割する機能も実現した.変更分割においては,部分的に特定した変更のみを適用した中間状態となるソースコードの版を作成し,中間状態と最終状態の間から改めて差分を得て残りの変更の識別に用いることにより,変更全体の識別を効率化する.(3)多様なプログラミング言語への適用を想定し,抽象構文木に基づきソースコード変更をパターン化し,得られたパターンに基づきソースコードを自動適用するための基盤を開発した.(4)リファクタリングやバグ修正などの変更の適用支援,推薦,合成,ソースコード分析技術の開発を行った.
|
現在までの達成度 (区分) |
現在までの達成度 (区分)
2: おおむね順調に進展している
理由
本研究は,リファクタリング等のプログラム変換を表現可能な進化コーパスの作成及びその応用を目指している.令和5年度では,その重要な基盤でなる,変更アノテーション環境の大幅な改善を行った.また,変更の識別を効率的にすすめるための変更のパターン化の開発も進めた.
|
今後の研究の推進方策 |
令和6年度では,令和5年度に開発を進めたアノテーションツールをより洗練させ,リファクタリング操作に対するアノテーションの実施を進める.その際には,類似する変更が効率よく特定できるか,また様々な変更意図が混在した複雑な変更に対してもアノテーションが行えるかの評価も実施する.さらに,アノテーション候補を自動で特定するための変更のマッチング技術の開発も引き続き進める.
|