Research and development of a hierarchical multi-scale software analysis platform
Project/Area Number |
21H03416
|
Research Category |
Grant-in-Aid for Scientific Research (B)
|
Allocation Type | Single-year Grants |
Section | 一般 |
Review Section |
Basic Section 60050:Software-related
|
Research Institution | Nara Institute of Science and Technology |
Principal Investigator |
飯田 元 奈良先端科学技術大学院大学, 先端科学技術研究科, 教授 (20232126)
|
Co-Investigator(Kenkyū-buntansha) |
藤原 賢二 東京都市大学, メディア情報学部, 講師 (80782622)
崔 恩瀞 京都工芸繊維大学, 情報工学・人間科学系, 助教 (90755943)
|
Project Period (FY) |
2021-04-01 – 2024-03-31
|
Project Status |
Granted (Fiscal Year 2023)
|
Budget Amount *help |
¥13,650,000 (Direct Cost: ¥10,500,000、Indirect Cost: ¥3,150,000)
Fiscal Year 2023: ¥4,550,000 (Direct Cost: ¥3,500,000、Indirect Cost: ¥1,050,000)
Fiscal Year 2022: ¥4,290,000 (Direct Cost: ¥3,300,000、Indirect Cost: ¥990,000)
Fiscal Year 2021: ¥4,810,000 (Direct Cost: ¥3,700,000、Indirect Cost: ¥1,110,000)
|
Keywords | ソフトウェア分析基盤 / ソフトウェア・アナリティクス / リポジトリ・マイニング / ソフトウェアリポジトリマイニング / データマイニング / コード解析 |
Outline of Research at the Start |
ソフトウェア・リポジトリを対象とした分析(ソフトウェア・アナリティクス)において、作業同士を関連付けた「より深化した分析」や、プロジェクト間を横断した「より広範囲の分析」などの試行を容易にするために,異なるスケールによるリポジトリデータの抽象化手段と分析機構を統合して高速に実行できる「多階層マルチスケール・ソフトウェア分析基盤」を提案・開発し、ソフトウェアやプロジェクトの多面的分析・理解に貢献する
|
Outline of Annual Research Achievements |
本研究では、複数の異なる抽象化階層の定量的指標を横断的に組み合わせた分析を可能とする「多階層マルチスケール・ソフトウェア分析基盤」の確立を目指して、「ソフトウェアを解釈する異なる抽象化レベルごとにその変更履歴と依存関係を蓄積し、ソフトウェア・アナリティクスに従事する実務者や研究者からのクエリ要求に基づき、条件に合致するデータを容易に引き出し可能な基盤」の構築に取り組んでいる。本期間中には下記3課題を並行してすすめた。 課題1)多階層マルチスケール型データモデルおよびクエリ言語HMSQL の設計:ソフトウェアが本来有する論理的モデルから物理的実装までに至る抽象的階層構造を自然に表現可能な多階層マルチスケール型データモデルの設計を行うために、各階層別のデータ構造と相互依存関係について調査し、概要設計を行った。 課題2)大規模並列分散HMSQL クエリ実行エンジンの設計・実装:既存の並列分散処理フレームワークとしてDaskを題材に、分散クエリエンジンを用いたソフトウェア・アナリティクスへの応用可能性について調査・試作を行った。また、問い合わせ処理で用いる索引データ構造を設計するために、GitHub等でホスティングされている各プロジェクトの特性を示すためのメトリクスについて調査・検討を行なった。 課題3)多階層融合型ソフトウェア・アナリティクス手法の実証:本分析基盤でのユースケース作成の一環として、深化型アナリティクスと横断型アナリティクスの事例として、複数のプロジェクト分析を実践した。 具体的には、深化型分析として、ファジングがプロジェクトに及ぼす影響やコードレビュー支援技術の効果を特定プロジェクトについて評価し、横断型分析として:リファクタリング、ラピッドリリース、OSS開発者の属性がプロジェクトに及ぼす効果を横断的に評価するなどの事例を蓄積した。
|
Current Status of Research Progress |
Current Status of Research Progress
2: Research has progressed on the whole more than it was originally planned.
Reason
課題1においては、初年度目標である多階層マルチスケール型データモデルおよびクエリ言語HMSQLの概要設計について、課題2、課題3の成果をにらみながらの作業となったため、若干の遅れはあるものの、サンプルシナリオにそったスクリプトを作成できたため、これに基づいた言語仕様を具体的に策定する直前の段階に達することができた。多階層マルチスケール型データモデルの設計についても概要設計を行った。次年度以降に、各階層別のデータ構造と相互依存関係に基づいた詳細設計を進める予定である。 課題2においては、既存の並列分散処理フレームワークとしてDaskを題材に、分散クエリエンジンを用いたソフトウェア・アナリティクスへの応用可能性について調査・試作を行い、良好な可用性を確認できており、計画通りに進捗している。次年度以降にはメトリクスについて調査・検討結果を基に、クエリデータの詳細設計を進める予定である。 課題3)深化型アナリティクスと横断型アナリティクスの事例として、複数のプロジェクト分析を実践し、予定通りに本プラットフォームのユースケースの蓄積を行なうことができた。次年度以降も引き続き分析事例の蓄積を行なうと同時に、試作プラットフォームにおけるレプリケーションの実施方法の検討に着手する予定である。
|
Strategy for Future Research Activity |
進捗は概ね順調であり、今後は各課題間の連携をより強化した上でプラットフォームの実装に向けた作業に着する予定である。具体的には、課題1においては各階層別のデータ構造と相互依存関係に基づいた言語仕様の詳細設計を、課題2においては、クエリデータの詳細設計を、課題3においては、引き続き分析事例の蓄積を行なうと同時に、試作プラットフォームにおけるレプリケーションの実施方法の検討に着手する予定である
|
Report
(1 results)
Research Products
(6 results)