Enhancing Automated Software Evolution via Building and Utilizing Large-Scale Software Evolution Corpora
Project/Area Number |
23K24823
|
Project/Area Number (Other) |
22H03567 (2022-2023)
|
Research Category |
Grant-in-Aid for Scientific Research (B)
|
Allocation Type | Multi-year Fund (2024) Single-year Grants (2022-2023) |
Section | 一般 |
Review Section |
Basic Section 60050:Software-related
|
Research Institution | Institute of Science Tokyo |
Principal Investigator |
林 晋平 東京工業大学, 情報理工学院, 准教授 (40541975)
|
Co-Investigator(Kenkyū-buntansha) |
丸山 勝久 立命館大学, 情報理工学部, 教授 (30330012)
小林 隆志 東京工業大学, 情報理工学院, 教授 (50345386)
肥後 芳樹 大阪大学, 大学院情報科学研究科, 教授 (70452414)
|
Project Period (FY) |
2022-04-01 – 2026-03-31
|
Project Status |
Granted (Fiscal Year 2024)
|
Budget Amount *help |
¥17,290,000 (Direct Cost: ¥13,300,000、Indirect Cost: ¥3,990,000)
Fiscal Year 2025: ¥3,510,000 (Direct Cost: ¥2,700,000、Indirect Cost: ¥810,000)
Fiscal Year 2024: ¥4,160,000 (Direct Cost: ¥3,200,000、Indirect Cost: ¥960,000)
Fiscal Year 2023: ¥4,030,000 (Direct Cost: ¥3,100,000、Indirect Cost: ¥930,000)
Fiscal Year 2022: ¥5,590,000 (Direct Cost: ¥4,300,000、Indirect Cost: ¥1,290,000)
|
Keywords | リファクタリング / ソフトウェア進化 / 進化コーパス / アノテーション / 版管理システム |
Outline of Research at the Start |
プログラム変換の組合せによるソフトウェア自動進化の手法が精力的に研究されている.しかし,従来手法で扱われている変換は限定的であり,それらを組み合わせても現実のソフトウェア進化を表現しきれない.本研究課題では,現実のソフトウェア開発履歴から進化オペレータを効率よく抽出する方法を開発することで,類型化可能な変換とその実例集として大規模な進化コーパスを構築し,現実に行われる進化を表現・提案可能にすることを目指す.
|
Outline of Annual Research Achievements |
本研究は,リファクタリング等の類型化可能なプログラム変換の多くを表現可能な進化コーパスを作成し,ソフトウェア自動進化技術の適用可能範囲,進化分析技術の妥当性を改善させることを目指すものである.令和5年度では,主に以下の成果を得た.(1)アノテーションのスキーマおよび進化オペレータの概念階層の検討を進めた.また,これに基づき作成したリファクタリング事例の検索エンジンをより洗練させ,コミットのアノテーション環境とより接続しやすいよう改善した.(2)リファクタリングのアノテーション環境を整備し,コミット内に含まれる変更のうち類似箇所を特定して強調表示することでリファクタリングに相当する変更の捜索を支援するインタフェースを実装した.また,複数の種類の変更が混在したコミットに含まれるリファクタリング操作を特定しやすいよう,変更を分割する機能も実現した.変更分割においては,部分的に特定した変更のみを適用した中間状態となるソースコードの版を作成し,中間状態と最終状態の間から改めて差分を得て残りの変更の識別に用いることにより,変更全体の識別を効率化する.(3)多様なプログラミング言語への適用を想定し,抽象構文木に基づきソースコード変更をパターン化し,得られたパターンに基づきソースコードを自動適用するための基盤を開発した.(4)リファクタリングやバグ修正などの変更の適用支援,推薦,合成,ソースコード分析技術の開発を行った.
|
Current Status of Research Progress |
Current Status of Research Progress
2: Research has progressed on the whole more than it was originally planned.
Reason
本研究は,リファクタリング等のプログラム変換を表現可能な進化コーパスの作成及びその応用を目指している.令和5年度では,その重要な基盤でなる,変更アノテーション環境の大幅な改善を行った.また,変更の識別を効率的にすすめるための変更のパターン化の開発も進めた.
|
Strategy for Future Research Activity |
令和6年度では,令和5年度に開発を進めたアノテーションツールをより洗練させ,リファクタリング操作に対するアノテーションの実施を進める.その際には,類似する変更が効率よく特定できるか,また様々な変更意図が混在した複雑な変更に対してもアノテーションが行えるかの評価も実施する.さらに,アノテーション候補を自動で特定するための変更のマッチング技術の開発も引き続き進める.
|
Report
(2 results)
Research Products
(47 results)
-
-
-
-
-
-
-
-
-
[Journal Article] Classification of Changes Based on API2022
Author(s)
Iriyama Masashi、Higo Yoshiki、Kusumoto Shinji
-
Journal Title
Proceedings of International Conference on Product-Focused Software Process Improvement
Volume: 1
Pages: 61-70
DOI
ISBN
9783031213878, 9783031213885
Related Report
Peer Reviewed / Open Access
-
[Journal Article] Are NLP Metrics Suitable for Evaluating Generated Code?2022
Author(s)
Takaichi Riku、Higo Yoshiki、Matsumoto Shinsuke、Kusumoto Shinji、Kurabayashi Toshiyuki、Kirinuki Hiroyuki、Tanno Haruto
-
Journal Title
Proceedings of International Conference on Product-Focused Software Process Improvement
Volume: 1
Pages: 531-537
DOI
ISBN
9783031213878, 9783031213885
Related Report
Peer Reviewed / Open Access
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-