研究課題/領域番号 |
19K11897
|
研究機関 | 東京工業大学 |
研究代表者 |
権藤 克彦 東京工業大学, 情報理工学院, 教授 (50262283)
|
研究期間 (年度) |
2019-04-01 – 2024-03-31
|
キーワード | ソフトウェア解析 / 一貫性 / 命名規則 / 原始データ型 / 決定木分類器 |
研究実績の概要 |
本研究の目的は,時中型(prospective)な追跡子とソフトウェア解析の技術を組み合わせることで,ソフトウェア追跡の情報量とソフトウェア解析の精度を向上させ,ソフトウェアの保守コストを大幅に減少することである.今年度の主な成果は次の2つのソフトウェア解析手法である: ・ソースコードからプログラマの意図を抽出し,その変数名の意味的な一貫性をチェックする新しい手法を提案し実装した.このシステムはソースコードだけからその役割に基づいて変数に対する,そのプロジェクト独自の命名規則を学習する.この手法を12のオープンソースに適用し,その結果を複数の人間が評価したところ,1080個の変数名のうち,39%の416個で別のより良い変数名を提案できた.この変数名を修正するパッチをもとの開発者に送ったところ3つのプロジェクトで採用された. ・プログラマが原始データ型を使ってパス名や座標などの高レベルな概念をどのように表現するかの調査を行うために,APIの呼び出しを調べることにより,ある既定義の概念に対する表現を正確に識別する新しい方法を提案した.具体的にはJava標準APIで使われる12の概念的な型を定義し,26のオープンソースプロジェクトからそれぞれの概念型に対する表現を抽出した.得られた表現に基づき,決定木分類器の訓練を行ったところ,83%のFスコアで,正しく概念型を予測できた.この結果は十分な例が与えられれば,ソースコードから概念型を自動推論できることを示している.
|
現在までの達成度 (区分) |
現在までの達成度 (区分)
2: おおむね順調に進展している
理由
本質的に時中型追跡子とソフトウェア解析の技術の組み合わせは困難である.今年度は時中型追跡子の成果はなかったものの,ソフトウェア解析技術で2つの成果を上げることができた.
|
今後の研究の推進方策 |
これまで通り,時中型追跡子とソフトウェア解析の双方の技術について研究を進め,それにより技術の組み合わせ方法を検討していく.
|