[学士論文] 形式概念分析を利用した動的機能識別のための機能関連性計算手法

小林研B4の中野さんが学士論文の発表を行いました.

論文題目:形式概念分析を利用した動的機能識別のための機能関連性計算手法
論文概要:

機能の修正や追加といった保守工程を行う上で必要となるプログラム理解を行う労力が増大している。この作業を効率よく行うための手法として動的解析を用いた機能識別が近年注目を浴びている。動的解析を用いた機能識別の一手法として、形式概念分析を利用した手法が存在する。この手法は多くの機能を同時に解析可能である点と、機能同士の関係性についても解析可能である点で他の手法より優れている。しかし解析対象が大きくなると解析結果である概念束が煩雑になってしまい、機能との関連性が低いモジュールも結果に含まれてしまうという問題点が存在する。

本研究ではこの問題点を解決するために、概念束中の機能に密接に関係する部分のみを抽出し機能識別を支援する手法を提案する。提案手法では欠陥特定で用いられる類似係数を計算比較することで、機能に密接に関係するかどうかを判別する。また概念束を解析者により理解しやすく伝える手法を提案する。この提案手法ではcaller-callee 関係を解析者に示すために静的解析情報を用い
依存関係トップのcaller を基準にcallee をグループ化する。また不要な形式概念を解析者に表示しないために外延も内包も空である形式概念を省略する。

オープンソースソフトウェアの13 個の機能に対し提案手法による機能識別を行った。その結果、単純に類似係数を閾値として用いる手法より、他機能の類似係数と比較して抽出する手法の方が精度が高いこと、また考案した手法により概念束をより簡潔に解析者に提示できることを示した。さらに、本手法によって正しく機能識別を行うことができない機能がどのような特徴を持つかについても明らかにした。