InaRIS フェロー (2023-)

亀井 靖高 Yasutaka Kamei

九州大学大学院システム情報科学研究院准教授※助成決定当時

2023InaRIS理工系

採択テーマ
機械と人のインタラクションによるソフトウェア開発様式の創出
キーワード
研究概要
オープンソースの普及に伴って、ソースコードを含めたソフトウェア開発に関連するデータが広く参照可能である。そのデータは、まさにソフトウェア開発の過程そのものであり、ときには開発プロジェクトの試行錯誤の様子も記録している。本研究では、データ駆動アプローチの完全自動化ではなく、機械(開発者のノウハウを学習したもの)とソフトウェア開発者が互いに学習し支え合う枠組みを創出する。

InaRISでは、10年という長期間にわたり,支援をしていただけます。他の研究助成プログラムでは、ついつい避けてしまうようなワクワクするけど挑戦的なテーマにじっくり取り組みたいと思い、応募しました。今後集まるInaRISフェローの方々とも議論を深め、ソフトウェア工学における機械と人のインタラクション実現に向けた研究をしていきたいと考えております。

フェロー紹介動画






情報公開





[概要]
本研究は,開発者と機械(AI)が⾃然⾔語で意図を共有しながら協調的にソフトウェアを開発する対話型⽀援枠組みの構築を⽬的とする.第1期(2023年度〜2025年度)では,⾃動バグ修正を中核に,多⾔語対応の脆弱性検知やファジング⽀援など,⼤規模⾔語モデルを活⽤した実践的⼿法を開発し,⾼精度な検出・原因予測を実現した.さらに,意図提⽰や視覚情報によるプログラム⽣成の精度向上,テストコードへのログ⾃動⽣成,深層学習モデル(DNN: Deep Neural Network)修復の副作⽤予測に取り組み,AIとの協調による開発⽀援の有効性を実証した.

[詳細]
本研究は,開発者の⾃然⾔語による要求や意図を機械(AI)と共有しながらソフトウェアを開発できる対話型の開発⽀援枠組みの構築を⽬的としている.完全な⾃動化を⽬指すのではなく,⼈と AI が互いに学習・補完し合う協調的な枠組みによって,個⼈単位での⽀援に加え,チームやソフトウェアエコシステム全体における開発スタイルの変⾰を⽬指している.
第 1 期の期間(2023 年度〜2025 年度)は,2023 年度の初回のアドバイザリ・ボード・ミーティングでのご助⾔(「インタラクション」の明確化と評価可能性の確保,対象の絞り込み)を踏まえ,⾃動バグ修正,特に脆弱性の検出と修正に焦点を当てて研究を推進した.さらに,AI との協調によるプログラム⽣成⽀援や,OSS エコシステムの継続性に関する課題にも取り組み始めた.以下に,現時点までの主要成果を3つ報告する.

1.脆弱性の検出と⾃動修正に向けた研究
本研究では,現実の開発環境における脆弱性検出とその⾃動修正の実現を⽬指し,2 つの観点から取り組んできた.1 つは,多⾔語コードベースにおける脆弱性検出能⼒の向上,もう 1 つは,ファジング(ランダムで予期しないデータを⼤量に送り込むことで、バグや脆弱性を検出するテスト⼿法)適⽤時のビルド・実⾏失敗とその修正⽀援である.従来の単⼀⾔語・静的分析に依存した技術では対応が難しかった課題に対して,⼤規模⾔語モデル(LLM)およびコード特化型モデル(PLM)を実装・応⽤⾯から活⽤した.
多⾔語に対応した脆弱性検知の性能評価 [LLMSC 2025] 従来の脆弱性検知⼿法は,特定のプログラミング⾔語に特化しており,多⾔語にまたがる実システムへの対応が困難であった.本研究では,7 つのプログラミング⾔語に対応したベンチマークを構築し,汎⽤ LLMとコード特化型 PLM(CodeT5P)による検出性能を体系的に⽐較した.その結果, CodeT5P は特に深刻度の⾼い脆弱性の検出において LLM を上回る性能を⽰し,プログラミング知識を学習した⼩型コード特化モデルの有効性を実証した.LLM の⾔語⾮依存性と PLM の専⾨性を組み合わせた今後の展開が期待される.
ファジング適⽤時のエラーの体系化と⾃動修正に向けた分析.脆弱性の分類整理に関する取り組み(TOSEM 2023)では,ファジング適⽤時に開発者が直⾯する 829 件の問題報告を⽬視で分類し,7 カテゴリ 22 種類のパターンに体系化した.実務者 109 名による評価を通じて,コードが正常にビルド・実⾏できなくなることが,現場における主要な障壁であることを明らかにした.そこで,その障壁の克服に向けた取り組みとして,ファジングビルドエラーの原因予測(TOSEM 2025-nourry)を⾏った.ビルドログを⼊⼒としてエラー原因を⾃動分類する⼿法を開発した.⼤規模⾔語モデルによるベクトル化とランダムフォレストによる学習により,F1 スコアは全体で 0.75,主要 3 カテゴリに対してはそれぞれ 0.98,0.97,0.73 と⾼精度を達成した.今後はこの分類結果を活⽤し,⾃動修正へと発展させる予定である.

2.開発者とAI の協調によるプログラム⽣成⽀援
ソフトウェア開発において LLM の活⽤が広がる中,開発者の要求や意図を AI にどのように伝えるか,また,LLM の出⼒をどのように制御するかが課題となっている.本研究では,⼈と AI が互いの知識・推論過程を理解しながらプログラム⽣成を⽀援する枠組みを構築した.
開発者と AI の協調によるプログラム⽣成精度の向上 [MSR 2024].開発者が機械(AI)にどのように意味や意図を追加し,精度向上を図るかについて研究を⾏った.競技プログラミングサイト AtCoder の 758 題に対して,開発者が⾃然⾔語でプログラムの概要だけ,⼊出⼒の仕様,出⼒例,制約と,段階的に意味や意図を追加することで,プログラムの⽣成成功率が 28%,37%,39%,35%と推移することを明らかにした.これにより,開発者からの情報提供が AI のプログラム⽣成精度に与える影響を定量的に⽰すことができた本成果をさらに発展させ,マルチモーダル LLM にフローチャートという視覚情報を追加することで,プログラム⽣成精度が最⼤ 10%向上することを定量的に⽰した.特に難易度の⾼い問題において効果が顕著であった.この結果は,AI 時代における「全体像を捉えた上でのプログラミング」という素養の重要性を実証的に⽰すものであり,開発者と AIの対話において,コードの構造的理解を共有する視点が有⽤であることを⽰唆している.
テストコードへのログ⽂⾃動⽣成 [TOSEM 2025-shu].ログ挿⼊は,実⾏時の振る舞いを観測・診断するために,プログラム中にログ出⼒⽂(例:log.info など)を挿⼊するタスクであり,保守性・デバッグ効率・可観測性の向上に寄与する重要な活動である.従来の研究では,ソースコードにおけるログ挿⼊が主な対象であったが,本研究では,ソフトウェア品質保証を担うテストコードにも同様の観点が求められると考え,テストコードへのログ挿⼊に注⽬した.GPT-3.5-Turbo を⽤いて,ログレベルの選定,ログ挿⼊位置の特定,ログメッセージの⽣成という 3 つのサブタスクに分けて評価を⾏った結果,特に挿⼊位置の特定タスクにおいては従来のコード特化型 PLM に対し 33.97%の精度向上を実現し,BLEU/ROUGE スコアにおいても有意な優位性を確認した.
DNN 修復予測に基づく協調型 AI の構築 [TOSEM 2025-ishimoto].DNN(Deep Neural Network)修復では,修復が成功しても別の正しい出⼒が破壊される副作⽤が⽣じるリスクがある.本研究では,修復前の出⼒に含まれる中間指標(Entropy,PCS,LPS,Loss)を⽤い,repair/break の発⽣を事前に予測する軽量モデル(LR,RF,LGB)を構築した.これにより,開発者は「修復すべきサンプル」や「壊してはいけない振る舞い」を⾒極めた上で,AI との対話を設計できる.

[主な発表論文]
研究の成果としては,論⽂誌 9 編,国際会議論⽂ 15 編(内訳 CORE A*:6,CORE A: 12,ACM SIGSOFT Distinguished Paper Award:1,その他受賞:5),招待講演が 10 件(組み込みシステム産業振興機構 2025 年総会での記念講演含む)であった.発表論⽂の⼀部(主に「現時点までの研究成果」で⽰した論⽂)を下記に⽰す.
[LLMSC 2025] J. Yu, H. Shu, M. Fu, D. Wang, C. Tantithamthavorn, Y. Kamei, J. Chen, “A Preliminary Study of Large Language Models for Multilingual Vulnerability Detection, ” In the Proceedings of The 1st International Workshop on Large Language Model Supply Chain Analysis (LLMSC), pp.161-168, 2025.
[TOSEM 2023] O. Nourry, Y. Kashiwa, B. Lin, G. Bavota, M. Lanza, and Y. Kamei, “The Human Side of Fuzzing: Challenges Faced by Developers during Fuzzing Activities,” ACM Transactions on Software Engineering and Methodology (TOSEM), Volume 33, Issue 1, Article No.: 14, Pages 1 ‒ 26, 2023. [CORE A*]
[TOSEM 2025-nourry] O. Nourry, Y. Kashiwa, W. Shang, H. Shu, and Y. Kamei, “My Fuzzers Wonʼt Build: An Empirical Study of Fuzzing Build Failures,” ACM Transactions on Software Engineering and Methodology (TOSEM), Volume 34, Issue 2, Article No.: 29, Pages 1 ‒ 30, 2025. [CORE A*]
[MSR 2024] K. Koyanagi, D. Wang, K. Noguchi, M. Kondo, A. Serebrenik, Y. Kamei, and
N. Ubayashi, “Exploring the Effect of Multiple Natural Languages on Code Suggestion Using GitHub Copilot”, In the Proceedings of International Conference on Mining Software Repositories (MSR), pp.481-486, 2024. [CORE A]
[TOSEM 2025-shu] H. Shu, D. Wang, A. Mastropaolo, G. Bavota, and Y. Kamei, “An Empirical Study on Language Models for Generating Log Statements in Test Code,” ACM Transactions on Software Engineering and Methodology (TOSEM), (to be published). [CORE A*]
[TOSEM 2025-ishimoto] Y. Ishimoto, M. Kondo, L. Ma, N. Ubayashi, and Y. Kamei, “Repairs and Breaks Prediction for Deep Neural Networks” ACM Transactions on Software Engineering and Methodology (TOSEM), Volume 34, Issue 4, Article No.: 94, Pages 1 ‒ 42, 2025. [CORE A*]










情報システムは、交通・電力・金融などの社会基盤として現代社会で広く活用されており、さらに、デジタルトランスフォーメーション(DX)、IoTやAIを高度に利用するSociety 5.0の実現など、その用途を拡大・変革し続けている。既存システムを保守・運用しつつ、新たなサービス、ビジネスモデルを創出し移行・展開することが産業界の課題であり、それを実現するためのソフトウェア開発は、専門性の高い高度ソフトウェア開発者のみならず、さまざまな業種で活躍する幅広い市民に求められるスキルともなりつつある。さらには、育児や介護との両立など多様な働き方を選択できる社会の実現が広く社会で求められており、ソフトウェア開発者の働き方改革も課題となっている。


亀井氏は、これらの問題を、ソフトウェア開発の効率化・自動化のみならず、ソフトウェア開発者の多様な働き方を実現するための開発スタイルの改革、ソフトウェア開発者のwell-beingの実現にまで踏み込んで解決しようとしている。目標とする新たなソフトウェア開発のスタイル創出では、ソフトウェア開発者個人、開発チーム、開発コミュニティという三つの観点で研究に取り組む。研究の核となるアイデアはインタラクションである。ソフトウェア開発者と機械(開発支援ツール)が会話し学習することで既存ツールの限界を超える開発支援を目指し、開発者間のコミュニケーションを支援することで開発効率の向上と開発者のwell-beingの実現の両立を目指している。これらは、さまざまなデータや知識・情報を利活用し知的生産活動につなげるにはどうすればよいかという情報学の本質的な問いにも応えようとする研究である。


亀井氏はこれまで、ソフトウェアの不具合であるバグの自動修正技術などの分野で大きな成果を挙げている。特に、開発者がソースコードを変更した直後にバグの混入可能性を予測するジャストインタイム検出手法は、ソフトウェアの開発効率を飛躍的に向上させる手法として高く評価されている。近年は、ソフトウェア開発チームのための新しい開発スタイルやオープンソースソフトウェア(OSS)の開発者コミュニティへの支援など、ソフトウェア開発支援の観点を拡大した研究を展開しているが、研究の展開が開発チームや開発コミュニティの抱えるさまざまな課題の気付きに繋がり、新たなソフトウェア開発のスタイル創出に挑戦する本研究の着想に至っている。


亀井氏は、国際的に活躍するソフトウェア工学研究を牽引する若手研究者であり、InaRISフェローシップの支援により、さらに飛躍し「水平線の彼方の情報学」を切り拓くために貢献することが期待される。


関連ニュース

領域が近い研究者を探す

理工系領域

PAGE TOP