2000 Fiscal Year Annual Research Report
ソフトウェアリサイクル支援環境の研究-Browser, Slicer, Specializerの設計と開発-
Project/Area Number |
10308008
|
Research Institution | Nagoya University |
Principal Investigator |
阿草 清滋 名古屋大学, 工学研究科, 教授 (90026360)
|
Co-Investigator(Kenkyū-buntansha) |
山本 晋一郎 愛知県立大学, 情報科学部, 助教授 (40240098)
濱口 毅 名古屋大学, 工学研究科, 助手 (90273284)
結縁 祥治 名古屋大学, 工学研究科, 助教授 (70230612)
|
Keywords | ソフトウェアリサイクル / Browser / Slicer / Specializer / 依存解析 / プログラムパターン |
Research Abstract |
本研究は,大量に蓄積されたソフトウェア資産を対象に, (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.汎用的な部品から特化したプログラムを自動的に抽出するための部分評価器方法について考察し,実際にツールを作成した.
|
-
[Publications] Fukuyasu Naoki,Yamamoto Shinichirou,Agusa Kiyoshi: "An Evolution Framework based on Fine Grained Repository"Proceedings of International Workshop on Principles of Software Evolution. IWPSE99. 43-47 (1999)
-
[Publications] 大橋洋貴,山本晋一郎,阿草清滋: "ソフトウェア空間をトラバースする柔軟な検索"日本ソフトウェア科学会 第16回大会論文集. 16. 149-152 (1999)
-
[Publications] 安原継二,山本晋一郎,阿草清滋: "オブジェクト属性を利用したソフトウェアの視覚化"日本ソフトウェア科学会FOSE2000. VII. 189-196 (2000)
-
[Publications] 尾崎憲幸,山本晋一郎,阿草清滋: "プログラムの正規化に基づいた差分抽出法の提案"日本ソフトウェア科学会FOSE2000. VII. 197-204 (2000)
-
[Publications] Shinichirou Yamamoto,Agusa Kiyoshi: "Source Program Archives Site : A Step toward Cooperation of Open-source Movement and Software Engineering"Proceeding of International Symposium on Principles of Software Evolution 2000. 213-222 (2000)
-
[Publications] Irek Ulidowski,Shoji Yuen: "Process Languaes for Rooted Eager Bisimulation"CONCUR2000,Lecture Notes in Computer Science. 1877. 275-289 (2000)