Java ソフトウェア部品検索システム SPARS-J のための リポジトリ自動更新機能の実現

Slides:



Advertisements
Similar presentations
Trac と Eclipse の 便利な機能. プロジェクト管理システム: Trac 0. はじめに バージョン管理システム: Subversion 統合開発環境: Eclipse ・ Wiki による情報 管理 ・進捗状況の管理 ・プログラムの作 成 ・リポジトリに データを集める.
Advertisements

Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 1 ソフトウェア部品推薦のための.
blanco Framework ご紹介 DB版
スクリーンショットの取り方 コラボエンドポイントスクリーンショットの取得 シスコシステムズ合同会社 テクニカルソリューションズアーキテクト
最新ファイルの提供を保証する代理FTPサーバの開発
パネル型クエリ生成インタフェース画像検索システムの改良
[グループ名]向けウェブナー [所属機関名] [日付] [発表者の氏名] [発表者の敬称/肩書]
Novell ZENworks Desktop Management Starter Campaign
ソースコードの編集内容を用いた ソフトウェア部品の自動推薦手法
ソースコードの編集内容を入力とした ソフトウェア部品の自動検索
利用実績に基づくソフトウェア部品検索システムSPARS-J
情報爆発A01支援班 マイサーチエンジン開発環境支援グループ 中村聡史, 大島裕明, 田中克己, 喜連川優
簡単な画像処理 通信教育学部 コンピュータ演習 遠藤美純.
メールの利用 計算機実習室でThunderbird.
モバイルエージェントの応用 概要 モーバイルエージェントの応用分野 AgentSpaceシステム エージェント移動 応用:ソフトウェアの配信
バイナリ形式コンポーネントの 収集・解析・検索システムの開発
EBSCOhost 詳細検索 チュートリアル support.ebsco.com.
メソッド名とその周辺の識別子の 相関ルールに基づくメソッド名変更支援手法
ソースコードの利用関係を用いた 再利用性評価手法の提案
コンポーネントランクを用いた ソフトウェアのクラス設計に関する 分析手法の提案
川口真司 松下誠 井上克郎 大阪大学大学院情報科学研究科
プログラム実行履歴を用いたトランザクションファンクション抽出手法
ソースコードの変更履歴における メトリクス値の変化を用いた ソフトウェアの特性分析
静的情報と動的情報を用いた プログラムスライス計算法
Javaソフトウェア部品 解析・検索システムSPARS-Jの構築
類似するコーディングパターンの 利用状況調査ツールの提案
メソッド間の依存関係を利用した プログラム理解支援手法の提案と実現
Javaクラスの利用関係を用いた ソフトウェア部品のカテゴリ階層構築法
DNSトラフィックに着目したボット検出手法の検討
SPARS-J デモ 山本哲男 立命館大学 情報工学部 2018/12/1 SPARS-J デモ.
関数の変更履歴と呼出し関係に基づいた開発履歴理解支援システムの実現
Javaソースコード蓄積・ 検索システムSPARS-Jの概要
類似度を用いたプログラムの再利用性尺度の提案と実現
オブジェクト指向プログラムにおける エイリアス解析手法の提案と実現
オープンソース開発の履歴情報を用いたコミュニティ検索支援システム
動的情報を利用したソフトウェア 部品評価手法
シーケンス図を用いて実行履歴を可視化するデバッグ環境の試作
利用関係に基づく類似度を用いたJavaコンポーネント分類ツールの作成
ソフトウェア部品分類手法への コンポーネントランク法の応用
実行時情報に基づく OSカーネルのコンフィグ最小化
環境リスクマネジメントに関する 検索システム
Javaプログラムの変更を支援する 影響波及解析システム
利用実績に基づくソフトウェア部品検索システムSPARS-J
加工工程決定支援システム 電子情報通信学会 2010年総合大会 2010年3月18日 松江工業高等専門学校  情報工学科 越田 高志.
コンポーネントランク法を用いたJavaクラス分類手法の提案
Javaを対象としたソフトウェア部品 検索システムSPARS-Jの実験的評価
オープンソース開発支援のための ソースコード及びメールの履歴対応表示システム
オープンソース開発支援のための リビジョン情報と電子メールの検索システム
ソースコードの静的特性を用いた Javaプログラム間類似度測定ツールの試作
7-0.SWORD Client for WEKO インストールマニュアル Version 2.2
Webコミュニティ概念を用いた Webマイニングについての研究 A study on Web Mining Based on Web Communities 清水 洋志.
モバイルP2Pを用いた携帯電話 動画配信手法の提案 第2回 FM10019 種田研究室 古江和栄
Javaソフトウェア部品検索システムSPARS-Jの実験的評価
コードクローンの理解支援を目的としたコードクローン周辺コードの解析
コードクローン分類の詳細化に基づく 集約パターンの提案と評価
コーディングパターンの あいまい検索の提案と実装
設計情報の再利用を目的とした UML図の自動推薦ツール
保守請負時を対象とした 労力見積のためのメトリクスの提案
プログラムの差分記述を 容易に行うための レイヤー機構付きIDEの提案
メソッドの同時更新履歴を用いたクラスの機能別分類法
ソフトウェア理解支援を目的とした 辞書の作成法
エイリアス関係を考慮した Javaプログラム用静的スライシングツール
プログラムの一時停止時に 将来の実行情報を提供するデバッガ
ソースコードの利用関係を用いた 再利用性評価手法の提案
MPIを用いた 並列処理 情報論理工学研究室 06‐1‐037‐0246 杉所 拓也.
関数の変更履歴と呼び出し関係に 基づいた開発履歴理解支援システム
動的情報を利用したソフトウェア 部品重要度評価手法の提案と評価
オブジェクト指向言語における セキュリティ解析アルゴリズムの提案と実現
識別子の読解を目的とした名詞辞書の作成方法の一試案
Presentation transcript:

Java ソフトウェア部品検索システム SPARS-J のための リポジトリ自動更新機能の実現 井上研究室 木村 和正

Java ソフトウェア部品 検索システム SPARS-J 目的 ソースコードの再利用,理解の支援 特徴 大規模資産から自動的に部品を抽出 ソースコードに対する全文検索 利用関係とキーワード出現頻度を考慮した検索結果の順位付け 部品詳細情報の提供 類似部品,部品の利用関係など 使用法 公開サーバを設置 個人 PC で使用 本研究ではこちらの場合を想定 2018/11/7 平成17年度 特別研究報告

スクリーンショット 2018/11/7 平成17年度 特別研究報告

SPARS-J の問題点(1) リポジトリの更新 検索に利用するための部品情報を保持したリポジトリの構築が必要 ユーザが明示的に Java ソースコードを指定 ソースコードの更新が頻発 → 登録作業が頻発 リポジトリを最新の状態に保ち,適切な検索結果を得るために 2018/11/7 平成17年度 特別研究報告

SPARS-J の問題点(2) 検索対象の限定 ソースコード以外にもソフトウェア部品の再利用に有用な情報は存在する 開発に関するメール プログラムのドキュメント ソフトウェア部品の理解のためには,これらの情報を併せて参照する必要がある → SPARS-J と通常の全文検索ツールとの併用 2018/11/7 平成17年度 特別研究報告

研究の目的 リポジトリの自動更新機能の実現 ソフトウェア部品の詳細情報と関連情報の同時検索の実現 手法 → Java ソフトウェア部品の検索・再利用にかかる作業コストの軽減 手法 デスクトップ検索ツール Google Desktop を利用 プラグインとして SPARS Desktop を実装 2018/11/7 平成17年度 特別研究報告

デスクトップ検索ツール Google Desktop ウェブブラウザを通じてコンピュータに保存された様々な種類のファイルを全文検索する技術 Google Desktop の特徴 各種ファイルの検索 ファイルのインデックスの自動作成 プラグインによる機能拡張 ウェブ検索結果との統合 サイドバーによる各種情報へのアクセス 検索対象部品の 更新に利用 2018/11/7 平成17年度 特別研究報告

実現した機能 リポジトリの自動更新 Google Desktop による検索結果からソフトウェア部品の詳細情報を取得 新規作成・更新された Java ファイルを SPARS-J のリポジトリに登録 Google Desktop のクローラーを利用 部品の利用関係情報の登録,検索結果の順位付けも行う Google Desktop による検索結果からソフトウェア部品の詳細情報を取得 Google Desktop を利用した検索から,SPARS-J が持つ Java ソフトウェア部品情報を参照することが可能 →ソフトウェア部品の詳細情報と関連情報の同時検索が可能 2018/11/7 平成17年度 特別研究報告

システムの構成 SPARS-J SPARS Desktop ユーザ ローカルディスク Google Desktop 表示 加工部 登録部 検索クエリ Java ファイル情報 結果の表示 SPARS Desktop Java ファイル情報 結果の表示 表示 加工部 ユーザ 登録部 表示部 検索クエリ 監視 検索部 クローラー ローカルディスク Google Desktop Java ファイル情報 2018/11/7 平成17年度 特別研究報告

実装 登録部:2つの処理部から成る 表示加工部 Google Desktop 登録部 SPARS-J 登録部 プラグインとして実装 Java ファイル情報の取得,Google Desktop への登録,SPARS-Jへの登録を行う SPARS-J 登録部 デーモンとして実装 Java ファイルの SPARS-J への登録を行う 表示加工部 ファイルパスからの部品情報の取得 Google Desktop の検索結果からファイルパスを取得 ファイルパスをもとに SPARS-J から部品情報を取得 規定の表示処理の変更 2018/11/7 平成17年度 特別研究報告

スクリーンショット 2018/11/7 平成17年度 特別研究報告

評価 目的 方針 Java ソフトウェア部品の検索・再利用にかかる作業コストが軽減されることの確認 SPARS Desktop 導入時,未導入時の作業工程の比較 リポジトリの更新 関連情報の取得 未導入時:SPARS-J,Google Desktop はそれぞれ利用可 2018/11/7 平成17年度 特別研究報告

リポジトリの更新(未導入時) SPARS-J を起動 Javaファイルを更新 登録作業の発生 2018/11/7 平成17年度 特別研究報告

リポジトリの更新(導入時) SPARS Desktop が 自動的にリポジトリへの 登録処理を行う Javaファイルを更新 作業を続行 2018/11/7 平成17年度 特別研究報告

関連情報の取得(未導入時) 関連情報は検索されない 2018/11/7 平成17年度 特別研究報告

関連情報の取得(未導入時) 関連情報 詳しい情報が欲しい Java ファイル 2018/11/7 平成17年度 特別研究報告

関連情報の取得(未導入時) 余分な作業が発生 2018/11/7 平成17年度 特別研究報告

関連情報の取得(導入時) 関連情報 ワンクリックで情報を取得 Java ファイル 2018/11/7 平成17年度 特別研究報告

考察 SPARS Desktop の導入によって解決された問題 → Java ソフトウェア部品の検索・再利用にかかる作業コストを軽減 登録作業 リポジトリの更新作業の自動化 →ユーザの更新作業を除去 →登録漏れの防止 検索作業 関連情報の取得にかかる作業の統合 →余分な作業を除去 → Java ソフトウェア部品の検索・再利用にかかる作業コストを軽減 2018/11/7 平成17年度 特別研究報告

まとめと今後の課題 まとめ 今後の課題 Java ソフトウェア部品検索システムのためのリポジトリ自動更新機能を実現 評価によりその有効性を確認 今後の課題 削除されたファイルの除去処理の自動化 順位付け手法の統合 ソフトウェア部品の利用関係に基づく順位付け手法の反映 2018/11/7 平成17年度 特別研究報告

2018/11/7 平成17年度 特別研究報告

利用関係に基づく順位付け手法 Component Rank(CR)法 利用関係から部品の重要さを評価し,順位付けする 多くの部品から利用されている部品は重要 重要な部品から利用されている部品もまた重要 使用例が多く,汎用的な部品が上位に来る A C D B 2018/11/7 平成17年度 特別研究報告

CR 法の計算手法 部品群グラフをもとにした繰り返し計算 C1 C2 C3 C1 C2 C3 C1 C2 C3 C1 C2 C3 C1 C2 1. 各頂点の総和を1として適当な重みを与える 2. 頂点の重みを,出ていく辺で分配する 3. 入ってくる辺の重みの総和を,その頂点の重みとして再定義 4. 頂点の重みが収束するまで,2.3.を繰り返し計算 5. 収束した重みが部品群のCR値 C1 0.334 C2 0.333 C3 C1 0.334 C2 0.333 C3 v1×50% v2×100% v3×100% C1 C2 C3 0.167 0.333 C1 0.333 C2 0.167 C3 0.500 C1 C2 C3 0.1665 0.167 0.500 C1 0.500 C2 0.1665 C3 0.3335 C1 0.400 C2 0.200 C3 2018/11/7 平成17年度 特別研究報告