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 | Tokyo Institute of Technology |
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 |
本研究は,リファクタリング等の類型化可能なプログラム変換の多くを表現可能な進化コーパスを作成し,ソフトウェア自動進化技術の適用可能範囲,進化分析技術の妥当性を改善させることを目指すものである.令和4年度では,主に以下の成果を得た.(1)アノテーションのスキーマおよび進化オペレータの概念階層の基礎検討を行った.また,これに基づきリファクタリング事例の検索エンジンを試作した.この検索エンジンは,複数のリファクタリング検出ツールの検出結果に対して,リファクタリングの特徴やリファクタリングが含まれるコミットの特徴に基づくクエリを用いて事例を検索できる.(2)アノテーション付き進化コーパスの構築のため,リファクタリングを自認しているコミットをコミットメッセージから自動特定し,収集した.具体的には,コミットメッセージの規約であるConventional Commitsに従っているGitHubリポジトリを特定し,それに含まれるコミットのうちリファクタリングと分類されたものを収集した.(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
本研究は,リファクタリング等のプログラム変換を表現可能な進化コーパスの作成及びその応用を目指している.令和4年度では,その初歩となる,アノテーションのスキーマの基礎検討を行い,またその内容に基づきリファクタリング事例の検索エンジンの試作を行っている.また,リファクタリング事例を効率よく収集するためのリファクタリングコミット識別手法の開発も進んでいる.
|
Strategy for Future Research Activity |
令和5年度では,令和4年度に設計した進化オペレータのアノテーションスキーマを,多くのリファクタリング操作を表現可能になるようより洗練させる.また,アノテーションツールの開発を進め,リファクタリング操作に対するアノテーションの実施を進める.その際には,類似する変更を効率よく特定できるよう,また様々な変更意図が混在した複雑な変更に対してもアノテーションが行えるよう工夫する.さらに,アノテーション候補を自動で特定するための変更のマッチング技術の開発も進める.
|
Report
(1 results)
Research Products
(21 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
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-