研究課題/領域番号 |
18K11251
|
研究機関 | 南山大学 |
研究代表者 |
青山 幹雄 南山大学, 理工学部, 教授 (40278073)
|
研究期間 (年度) |
2018-04-01 – 2021-03-31
|
キーワード | 機械学習 / ソフトウェア工学 / グラフモデル / プロパティグラフ / オープンソースソフトウェア / 表現学習 / ビッグデータ分析 |
研究実績の概要 |
2018年度の目標:ソフトウェア開発における開発組織とその成果物を表現する高い表現能力を持つ新たな言語としてプロパティグラフを基礎とするグラフ言語SEGL(Software Engineering Graph Language)の提案とそれを用いた開発組織の分析方法の提案にある. 具体的成果:オープンソースソフトウェア(OSS)開発を対象としてSEGLの具体的言語としてSCGM(Software Community Graph Model)を定義し,それを用いた開発組織と成果物のモデル化とその上で機械学習の一つである表現学習による特徴量分析方法を提案した.提案方法を実行するソフトウェアを開発し,主要な機械学習OSSを含む10種のOSS開発の過去10年間分の開発データに適用し,提案方法の有効性,妥当性を評価した. 成果の意義と重要性:従来困難であった大規模ソフトウェア開発組織の時間的変化を表現可能とし,グラフ理論に基づく局所的特徴分析方法と機械学習(表現学習)による広域的特徴分析方法を提案し,開発構造の変化に関して1)非中核,準中核,中核の3層進化モデル,2)3つの成長パターン,3)開発者間の相互作用の変化を明らかにした.さらに,開発者の行動のグラフ表現から抽出した特徴量のクラスタリングから開発者が3つのクラスに分類できることを発見した.提案方法は表現学習をソフトウェア開発構造分析に適用する新しい方法を提案し,実際の開発組織特性を明らかにした点で新規な成果である,また,ソフトウェア開発の組織構造をプロパティグラフに基づく表現を可能とした点で,ソフトウェア工学における新らたな成果と言える.
|
現在までの達成度 (区分) |
現在までの達成度 (区分)
2: おおむね順調に進展している
理由
2018年度の目標としたソフトウェア開発活動を表現可能とするグラフ言語SEGL(Software Engineering Graph Language)の具体化としてオープンソースソフトウェア(OSS)開発を対象としたSCGM(Software Community Graph Model)を定義し,それに基づく開発組織の分析方法として,グラフ理論に基づく局所的特徴分析方法と機械学習(表現学習)による広域的特徴分析方法を提案した. さらに,,実際に10種のOSS開発組織の過去10年間の開発活動をSCGMで表現し,従来知られていなかったOSS開発活動の準中核的開発者の存在の発見など,新たな特性を明らかにした点で新たな意義ある成果を得ている. 以上の成果から2018年度に計画していた目標を達成できていると言える.
|
今後の研究の推進方策 |
2019年度は,2018年度の成果を発展させ,次の課題に取り組む. 1.SCGMの一般化:SEGLの具体的言語として定義したSCGLを一般化し,SEGLの表現すべき内容とその言語仕様の研究を行う. 2.SCGM上での機械学習の方法の深化:近年のグラフニューラルネットワーク(GNN)やGraph2vecなどのグラフの離散構造化の方法を適用した,SEGMの新たな分析方法の研究と実際のデータに適用しその有効性,妥当性の評価を行う.あわせて,分析過程と結果の視覚化方法の研究を行う. 3.機械学習に学習過程を制御するプロセスの提案:機械学習において,適切なデータで効率的に学習するためのプロセスをソフトウェア工学のプロセス技術を基礎として研究し,実際のデータに適用し,その有効性,妥当性を評価する.
|
次年度使用額が生じた理由 |
2018年度末に入手予定であった書籍の発行が2019年度にずれ込んだため.
|