研究概要 |
本研究は,大量に蓄積されたソフトウェア資産を対象に, (1)大規模なソフトウェアを効率的に参照・検索・トラバースする機能を持つBrowser (2)大規模なソフトウェアから必要な部分を容易に抽出するためのSlicer (3)抽出したソフトウェアを使用環境に適応させるためのSpecializer からなる,ソフトウェアリサイクル支援環境を作成することを目的とした研究である.本研究の成果を以下に示す. 1.ハイパーテキストを用いたソースプログラムBrowser SPIEを開発した.SPIEは,ソースプログラムをHTMLに変換すると共に,File(ファイル),Function(関数),Argument(引数),Global variable(大域変数),Local variable(局所変数),Type(typedefされた型),Tag(構造体,union型,列挙型のタグ),Member(構造体メンバー),Enum(列挙子,すなわち列挙型の要素),Constant(定数),Macro(マクロ)の11種類のオブジェクトに関して詳細なクロスリファレンスを提供する. 2.ある関数fを指定すると,関数をコンパイルするのに必要となる ・関数fの定義とプロトタイプ宣言 ・関数fが呼び出している関数f′の定義とプロトタイプ宣言 ・関数f中で参照・代入している大域変数・構造体などの定義 ・関数f中で使われている型の宣言 ・関数f中で使われているマクロの定義 などを同定しプログラム部品として抽出する関数スライスの手法を提案し,実現の詳細を示した. 3.汎用的な部品から特化したプログラムを自動的に抽出するための部分評価器方法について考察し,実際にツールを作成した.
|