ソフトウェア理解支援のための 閲覧状態復元機能付き web ...

18
2005/2/24 1 Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University ソソソソソソソソソソソソソソ ソソソソソソソソソソ Web ソソソソソソソ ソソソソソソソソソソソソソソ ソソソソソ ソソ ソソ

Upload: gwendolyn-colon

Post on 30-Dec-2015

43 views

Category:

Documents


0 download

DESCRIPTION

ソフトウェア理解支援のための 閲覧状態復元機能付き Web ブラウザの試作. 大阪大学基礎工学部情報科学科 井上研究室 今枝 誉明. ソフトウェア開発の背景. ソフトウェア開発の際には,様々な情報を調べ,理解する必要がある リファレンス・マニュアル 過去のソフトウェアの開発情報 版管理システムのリポジトリ メーリングリストでの議論 バグ追跡システムに報告された バグ情報や解決法 複数の情報を同時に調べることが必要 メーリングリストの議論とバグ追跡システムの報告,等 情報は複雑に関わり合っている. Web インターフェースを備えた - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: ソフトウェア理解支援のための 閲覧状態復元機能付き  Web  ブラウザの試作

2005/2/24

1Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

ソフトウェア理解支援のための閲覧状態復元機能付き Web ブラウザの試

大阪大学基礎工学部情報科学科井上研究室今枝 誉明

Page 2: ソフトウェア理解支援のための 閲覧状態復元機能付き  Web  ブラウザの試作

2005/2/24

2Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

ソフトウェア開発の背景ソフトウェア開発の際には,様々な情報を調べ,理解する必要がある

リファレンス・マニュアル過去のソフトウェアの開発情報

版管理システムのリポジトリメーリングリストでの議論バグ追跡システムに報告された

バグ情報や解決法

複数の情報を同時に調べることが必要メーリングリストの議論とバグ追跡システムの報告,等

情報は複雑に関わり合っている

Web インターフェースを備えた情報閲覧システムは多い

Page 3: ソフトウェア理解支援のための 閲覧状態復元機能付き  Web  ブラウザの試作

2005/2/24

3Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

問題点目的に応じて複数の閲覧システムを使い分ける必要がある階層が深くなったり,分岐が多くなったりすると,「同時に調べていた」という情報が失われてしまう

情報閲覧をサポートするインターフェースが必要

Page 4: ソフトウェア理解支援のための 閲覧状態復元機能付き  Web  ブラウザの試作

2005/2/24

4Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

目的と方針複雑かつ多数の情報を効率良く閲覧するためのツールを提供する

「同時に調べていた」という情報を失わないようにしたい

方針複数のシステムを同時に扱える Web ブラウザ

Web インターフェースを備えた閲覧システムが多く存在しているため

ブラウザ上の全てのウィンドウの閲覧状態を記録しておく

「同時に調べていた」情報を失わないため– 過去の閲覧状態を復元出来る

Page 5: ソフトウェア理解支援のための 閲覧状態復元機能付き  Web  ブラウザの試作

2005/2/24

5Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

システムの概要複数の情報を同時に閲覧するための Web ブ

ラウザMDI(Multiple Document Interface )を採用

主な機能閲覧状態の記録閲覧状態の復元閲覧状態に対するマーク付け閲覧状態に対するキーワード検索

Page 6: ソフトウェア理解支援のための 閲覧状態復元機能付き  Web  ブラウザの試作

2005/2/24

6Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

閲覧状態の記録ページの移動時等に,以下の項目を記録しておく

起こった事柄ページの移動ウィンドウの開閉・移動・サイズ変更

操作対象となったウィンドウ時刻開いていた各ウィンドウに関する情報

表示しているページの URL ,タイトル位置,サイズ,スクロール位置

ページから自動で抽出したキーワード

Page 7: ソフトウェア理解支援のための 閲覧状態復元機能付き  Web  ブラウザの試作

2005/2/24

7Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

各機能の詳細閲覧状態の復元

1 つ前の閲覧状態に戻る /1 つ先に進む記録した閲覧状態を,リスト一覧から選択して復元する

閲覧状態に対するマーク付けマーク一覧から選択して復元する

閲覧状態に対するキーワード検索指定されたキーワードをもつ閲覧状態を検索する検索結果から選択して復元する

Page 8: ソフトウェア理解支援のための 閲覧状態復元機能付き  Web  ブラウザの試作

2005/2/24

8Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

現在の閲覧状態にマークを付ける

名前を付けて"OK" を押すことで

マーク付け完了先ほど付けたマークを選択

マーク付けしたときの閲覧状態を復元出来る

検索キーワード "csh" で検索"csh" をキーワードにもつ閲覧状態が見つかった

"csh" をキーワードにもつ閲覧状態を復元出来る

ページをどのように辿ってきたかを示す

ツリービュー

Owner
Page 9: ソフトウェア理解支援のための 閲覧状態復元機能付き  Web  ブラウザの試作

2005/2/24

9Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

使用例開発経験の浅い人がソフトウェア理解を試みる

SPARS の Parser 部分をサンプルとするmain 関数から,以下の流れで辿っていく1. コードのある部分 A を, A に関するマニュアルと共に

参照マニュアルの必要な部分に目を通し,閉じた

2. コードを読み進め,別の部分 B を, B のマニュアルと共に参照

コード A をまた参照する必要がでてきた3. A を再び参照

A に関するマニュアルはもう閉じてしまった !

4. 1 .の状態に戻り, A の再調査5. その後, 2 .の状態に戻り B の調査を再開

閲覧状態の復元機能を用いる

Page 10: ソフトウェア理解支援のための 閲覧状態復元機能付き  Web  ブラウザの試作

2005/2/24

10Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

これまでの閲覧状態の一覧を表示「 yyparse とマニュアルを同時に見ていた状

態」を復元「 DB 書き出し関数の定義とマニュアルを同時に見ていた状態」を復元し,作業を再開する

Page 11: ソフトウェア理解支援のための 閲覧状態復元機能付き  Web  ブラウザの試作

2005/2/24

11Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

使用例に対する考察情報閲覧の際に,閲覧状態復元機能を用いることで,同時に調べていた情報を失うことなく,作業を再開することができた

従来のブラウザでは,履歴が上書きされてしまうために,作業の再開が不可能

Page 12: ソフトウェア理解支援のための 閲覧状態復元機能付き  Web  ブラウザの試作

2005/2/24

12Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

まとめと今後の課題まとめ

ソフトウェア理解の際に必要となる情報を効率良く閲覧するための,閲覧状態を復元できる Web ブラウザを試作した実際の使用例を挙げ,閲覧状態の復元機能が有効に働くことを示した

今後の課題定量的な評価ページ間の関連抽出

内容を考慮する,閲覧時間により重み付けをする,等不要な閲覧状態記録の削除機能

Page 13: ソフトウェア理解支援のための 閲覧状態復元機能付き  Web  ブラウザの試作

2005/2/24

13Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

終わり

Page 14: ソフトウェア理解支援のための 閲覧状態復元機能付き  Web  ブラウザの試作

2005/2/24

14Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

キーワード以下のものをキーワードとして扱っている

ページのタイトルアンカーのテキスト

<a href=“foo.html”>foo</a>– “foo.html” に対して “ foo” と付ける ( リンク元のドキュメント

ではない )

アンカーの name 属性<a name=“bar”>bar</a>

meta タグが存在し, name 属性が keywords あるいは description の場合の content 属性の値

<meta name=“keywords” content=“baz”><meta name=“description” content=“qux”>

Page 15: ソフトウェア理解支援のための 閲覧状態復元機能付き  Web  ブラウザの試作

2005/2/24

15Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

ページの推薦機能他の閲覧履歴を利用してページを推薦「ブラウザを起動してから閉じるまで」で,1 つの閲覧履歴データベースを作成推薦値の算出には協調フィルタリングの手法を用いる

閲覧履歴データベース

Web ブラウザ

サーバ閲覧ページ情報(URL ,タイトル )

推薦ページ情報( 推薦値, URL ,タイトル )

閲覧情報書き出し

閲覧履歴参照

推薦値算出

Page 16: ソフトウェア理解支援のための 閲覧状態復元機能付き  Web  ブラウザの試作

2005/2/24

16Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

協調フィルタリング大まかな流れは以下の通り1. 利用者の評価の取得

• 評価 : ページを参照していたら 1 ,いなければ02. 相関係数の算出3. 推薦値の算出4. 推薦の実行

Page 17: ソフトウェア理解支援のための 閲覧状態復元機能付き  Web  ブラウザの試作

2005/2/24

17Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

相関係数の算出2ユーザの「どちらか」が評価したページと,どちらも評価していないページについて計算

Ijijiaja

Ijijiaja

Ijjii

i

iji

dia

dd

i

ji

vvvv

vvvv

iac

vI

v

Ij

Ijvv

IIII

IiaI

iI

jiv

ia

2,

2,

,,

,

,

,

)'()'(

)')('(

),(

'||

1

if

if

0

'

)10000|(|ない部品集合のどちらも評価してい,ユーザ :

)( :

:

ユーザ:,

した部品集合表示が評価ユーザ

に対する評価値の部品ユーザ

Page 18: ソフトウェア理解支援のための 閲覧状態復元機能付き  Web  ブラウザの試作

2005/2/24

18Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University

推薦値の算出相関係数の 2乗を重みとして加重平均U:ユーザ aとの相関係数が 0 より大きい全てのユーザ

Ui

Uiji

ja iac

viacp

iac

iaciaciac

|),('|

'),('

0),( if

0),( if

0

),(),('

,

,