java spars j l.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Java ソースコード蓄積・ 検索システム SPARS-J の概要 PowerPoint Presentation
Download Presentation
Java ソースコード蓄積・ 検索システム SPARS-J の概要

Loading in 2 Seconds...

play fullscreen
1 / 18

Java ソースコード蓄積・ 検索システム SPARS-J の概要 - PowerPoint PPT Presentation


  • 126 Views
  • Uploaded on

Java ソースコード蓄積・ 検索システム SPARS-J の概要. 井上克郎 大阪大学大学院 情報科学研究科. ソフトウェアプロダクト管理システム. 開発したドキュメント,ソースコード,テストケースなどを保存・取り出しを行う 組織全体のソフトウェアプロダクトを資産として管理するのが理想 ソフトウェア開発を行う組織にとってのメリット: 再利用して生産性を向上 過去の信頼できるプロダクトの利用によって品質の向上 ユーザ組織にとってのメリット: 現状の把握(規模や品質 vs 投資) 緊急時の対応とりやすい 過去の資産の把握,整理. ソースコードの蓄積・検索.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Java ソースコード蓄積・ 検索システム SPARS-J の概要' - tarmon


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
java spars j

Javaソースコード蓄積・検索システムSPARS-Jの概要Javaソースコード蓄積・検索システムSPARS-Jの概要

井上克郎

大阪大学大学院

情報科学研究科

slide2
ソフトウェアプロダクト管理システム
  • 開発したドキュメント,ソースコード,テストケースなどを保存・取り出しを行う
  • 組織全体のソフトウェアプロダクトを資産として管理するのが理想
  • ソフトウェア開発を行う組織にとってのメリット:
    • 再利用して生産性を向上
    • 過去の信頼できるプロダクトの利用によって品質の向上
  • ユーザ組織にとってのメリット:
    • 現状の把握(規模や品質vs投資)
    • 緊急時の対応とりやすい
    • 過去の資産の把握,整理
slide3
ソースコードの蓄積・検索
  • ソースコードは最も信頼できるプロダクト?
    • 動いているシステムに対応
    • 他のドキュメントは更新がされていない場合も
    • ソースコードを核として他は関連付けて蓄積
  • しかし,誰が管理するの?
    • 開発,運用の要員だけで管理まで手が回らない
    • 常に最新の状態にしないと意味がない
    • いい加減な分類や索引付けでは探せない
slide4
ソースコード蓄積・検索システム
  • ソフトウェアプロダクトの自動収集・解析・検索システム
  • Asset Locator (IBM)
    • 各種ソース(Java, JSP, C++, HTML, XML, Cobol, Java ClassFile, Text)の収集,解析,検索システム
    • 計画倒れ?
spars j
SPARS-J
  • Software Product Archive, Analysis, and Retrieve System for Java
  • 新しい発想に基づいたソースコード蓄積・検索システム
  • Javaを対象に
  • 日々の管理は全自動
  • 静的解析技術を用いて広域の依存関係抽出
  • メトリクス技術を用いて類似部品抽出
spars j6
SPARS-Jの概要

検索

登録

ユーザー

Java

ファイル群

表示

依存関係

キーワード

解析・登録

キーワード検索

パッケージ階層

表示

レポジトリ

Webブラウザ

SPARS-J

spars j7
SPARS-Jの機能の概要(登録)
  • Javaの1クラス(*.java) = 検索単位 :部品
  • 指定したファイル群やディレクトリ群に含まれる部品の自動検索
  • クラス間の関係(継承,インターフェース,呼び出し,参照等)の解析
  • 部品内に含まれるキーワードの抽出
  • DB(BerkeleyDB)に登録
spras j
SPRAS-Jの機能(検索・表示)
  • キーワード検索/パッケージ木ブラウズ
  • 部品のソース,呼ばれている・呼んでいるクラス・メソドの表示や各種メトリクス表示
  • 条件付検索(クラス名,コメント,・・・)
  • 重要な部品を上位に表示
  • 部品間の類似度を計測―同一部品集約
  • 日本語/英語両用
spars j12
SPARS-Jの使い方
  • 一つの開発中のプロジェクトのソース管理
    • 他人が作った部品が見える
    • 前の版も調べられる
  • 過去の類似プロジェクトのソース管理
    • 部品の依存関係が分かる
    • 再利用率,新規開発率が分かる
  • 組織の全プロジェクトのソース管理
    • 何か使われて何がいらないか
    • 全資産量はどれだけあるか
slide13
適用例
  • JDKのライブラリ検索(約2000クラス)
  • 研究室内のJavaの資産管理(約2500クラス)
  • インターネット上から入手できるプログラムの検索(18万クラス)
  • あるソフトウェアハウスのJavaフレームワークにおける資産管理

...

spars j14
SPARS-Jの実行環境
  • UNIX版,Windows版
  • FreeBSD,Solaris,Windows-XP,...
  • C, Berkeley DB、BisonFlex、gettext、kakasi
  • 最小メモリ 100MB (多いほうがいい)
  • 最小ディスク100MB
slide15
DB構築時間
  • AがB,Cと同程度時間がかかっている
    • Aは索引キー数が多いため
    • Bは類似部品が多く,部品群化に時間がかかる
  • D,Eで極端に構築時間が大きくなる
    • メモリが尽きてスワップが生じた
  • 構築時間は索引キー数に依存
  • OS : FreeBSD 5.2-RC
  • CPU : Intel(R) Xeon2.80GHz(Dual)
  • Memory : 2.0 GB

3日

18万

slide16
構築したDBサイズ
  • 格納している情報はほぼ同じ割合
    • ファイル情報 : 1 %, 部品情報 : 30 %利用関係情報 : 10%, 索引情報 : 60~70 %
  • 索引キー数に依存
slide17
検索時間
  • 300件のクエリに対してCGIを経由せず検索
    • 実際には,結果表示の時間がプラス
  • 部品数の増加に従って検索時間も増加
    • 索引キー検索よりも,ヒットした部品のソートに時間がかかる
spars j18
SPARS-Jのライセンス
  • 基本動作を行う部分はオープンソース化(BSDライセンス)
    • 変更,再配布,商用利用可能
    • 大阪大学のクレジット表示義務
  • ランク付け機能(CR)は特許申請中
    • JST(科学技術振興機構)所有
    • なくても実用上支障はない