研究課題/領域番号 |
14380144
|
研究機関 | 大阪大学 |
研究代表者 |
井上 克郎 大阪大学, 大学院・情報科学研究科, 教授 (20168438)
|
研究分担者 |
松下 誠 大阪大学, 大学院・情報科学研究科, 助手 (60304028)
楠本 真二 大阪大学, 大学院・情報科学研究科, 助教授 (30234438)
|
キーワード | プログラム部品 / 類似度 / プログラムメトリクス / 再利用 / 検索 |
研究概要 |
本年度は、ソースプログラムを効率良く分類、保存するためのプロダクトモデルの構築とそれに基づく解析方法の考案を行った。 これには、メトリクスデータに基づいたソースプログラムの定量的な分類方法と、我々が以前、提案したシステムの類似度による分類方法が考えられる。後者は、それぞれのプログラムの間の文字列間対応の計算を行うため、詳細な分類は可能であるが計算量が大きく、我々が目指す大規模なシステムの分類、保存には適応しにくいことが判明した。従って、ソフトウェアメトリクスを用いた方法を採用することにした。 本研究では、Javaを対象とし、トークン数、演算子数、サイクロマティックス数、メソド定義数、メソド呼出数、クラス宣言数、ネストの深さ、インターフェースの宣言数などをメトリクスとして選び、それらを用いて類似プログラムを効率良く検索する方法を考案した。これらのすべてのメトリクスを同様に用いて比較するのではなく、特定の一部のメトリクスを種メトリクスとして選び、それをキーにしてハッシュ検索することにより、高速で実用的な類似ソフトウェア分類、保存システムを構築することができた。 作成したシステムを用いて、ソフトウェア部品の重要度計算システムSPARS-Jのプロトタイプを作成することができた。このプロトタイプでは、インターネットなどから入手できるJavaプログラムを、本分類、保存システムで、それぞれの類似度を計り、分類する。そして、ユーザーが適当なキーワードを与えることによって、最も良く利用され重要とみなされたソフトウェア部品が、ユーザーに提示される。
|