2002 Fiscal Year Annual Research Report
オープンソースを対象とした大規模ソースプログラム・コーパスの開発とその応用
Project/Area Number |
14380148
|
Research Institution | Aichi Prefectural University |
Principal Investigator |
山本 晋一郎 愛知県立大学, 情報科学部, 助教授 (40240098)
|
Co-Investigator(Kenkyū-buntansha) |
直井 徹 岐阜大学, 工学部, 助教授 (10207699)
粕谷 英人 愛知県立大学, 情報科学部, 助手 (10295579)
大久保 弘崇 愛知県立大学, 情報科学部, 助手 (40295580)
蜂巣 吉成 和歌山大学, システム情報学センター, 講師 (30319298)
吉田 敦 和歌山大学, システム情報学センター, 講師 (50283495)
|
Keywords | ソフトウエア / オープンコース / 検索 / 関数呼出依存グラフ / コーパス |
Research Abstract |
プログラムはライブラリの組み合わせにより構成されるため,各々のライブラリは他のライブラリに依存している.これらの依存関係を表すために我々は既に関数呼出依存グラフを提案している.関数呼び出し依存グラフはライブラリ関数間,ライブラリ関数と条件式との間のデータ依存関係および制御依存関係のグラフ表現であり.これを用いる事により,ライブラリ関数を使用する上で,戻り値の検査の必要性や,他のライブラリ関数との組み合わせについての情報を取得できる. 今年度は,ライブラリ関数間の依存関係がライブラリの用法として重要な要素であることに着目し,部分関数呼出依存グラフの埋め込みに基づく検索方法について研究を行なった.具体的には,部分関数呼出依存グラフの埋め込みに基づいたイディオムの定義とその検索方法を提案した. これらの手法の有効性を確認するためにプロトタイプを作成し,FreeBSD4.7-RELEASEの/usr/src/usr.bin以下に存在する187個のプログラムを対象とした実験を行なった.実験により,ライブラリの戻り値の検査の必要性および引数に他のライブラリ関数の戻り値を与えているライブラリ関数の組み合わせパターンを取得する事ができる事を確認した.また,多くのプログラムで利用されているパターンを115個のイディオムとして抽出できることを示した.さらに,これらのイディオムの検索機能がプログラムの支援に有効であることを訂正的ながら確認した.
|
Research Products
(6 results)
-
[Publications] Atstumi Noritoshi, Yuen Shoji, Yamamoto Shinichiro, Agusa Koshi: "Library Evolution for Reliable Software"Proceedings of the workshop on Principles of software evolution. IWPSE02. 66-70 (2002)
-
[Publications] 吉田 一, 山本晋 一郎, 阿草 清滋: "XMLを用いた汎用的な細粒度ソフトウェアリポジトリの実装"オブジェクト指向最前線. 2002. 83-90 (2002)
-
[Publications] 新美 健一, 山本 晋一郎, 阿草 清滋: "diffを用いたソフトウェア構成要素の階層化差分"日本ソフトウェア科学会ソフトウェア工学の基礎. IX. 171-174 (2002)
-
[Publications] 星野 康, 山本 晋一郎, 阿草 清滋: "前バージョンの整合性を用いた設計復元"電子情報通信学会技術研究報告(ソフトウェアサイエンス). Vol.102,No.617. 49-52 (2003)
-
[Publications] 戸板 晃一, 山本 晋一郎, 阿草 清滋: "プログラムスライシングのための共通表現"電子情報通信学会技術研究報告(ソフトウェアサイエンス). Vol.102,No.704. 13-19 (2003)
-
[Publications] 大橋 良徳, 山本 晋一郎, 阿草 清滋: "ソフトウェアの大局的可視化のための組織化メトリクス"情報処理学会研究報告(ソフトウェア工学). No.140. 79-86 (2003)