View
171
Download
0
Category
Preview:
Citation preview
LOIS 2012/11/21 @静岡CS27 Lab. Kobe University
ライフログ可視化フレームワークMashMap の実装と評価
神戸大学大学院システム情報学研究科
高橋 昂平柗本 真佑中村 匡秀
2
ライフログとそのマッシュアップ ライフログ
人間の行いをデジタルデータとして記録したもの様々な目的に利用されている
ex. 自己の振り返り , 生活改善 , 意思決定 ...それらに応じた多くのライフログサービスが提供されている
ライフログのマッシュアップ集約・連携することで更に付加価値が上がる
食事の写真 + 体重ログ = 食習慣の振り返り・改善先行研究 : ライフログマッシュアッププラットフォーム [1]
ライフログ標準データモデル( LLCDM )マッシュアップ API ( LLAPI )
まつ本真佑,下條彰,鎌田早織,中村匡秀,“異種ライフログ統合のための標準データモデルとマッシュアップ api” 電子情報通信学会論文誌, vol.J95-D , p.758–768 , April 2012 .
FoodLogBETAManage your photos of foods LLCDM
TransformAggregate
LLAPI
PerlLifeLoggerPerlLifeLogger
BodyLog
3
位置付きライフログ位置情報
緯度・経度の組や住所ライフログの種類に依らない汎用的なデータ様々なライフログに紐付けできる
位置付きライフログ ライフログの内,位置情報を含むもの
[34.729198, 135.234526]” 神戸市灘区六甲台町 1-
1”
4
位置付きライフログを用いたサービス誰がいつどこで何をしたかを地図上で振り返ることができる
ウェザーリポート Ch.→エンドユーザによるピンポイントな天気
みんなでつくる放射線量マップ→ 参加型センシングによる放射線量測定
5
先行研究: MashMap フレームワーク ライフログを束ねて (Mashup) ,地図 (Map) 化する 様々な形式の位置付きライフログを地図上に可視化する
ための汎用的な枠組み ライフログを地図上に可視化する際の共通した処理をフ
レームワークで処理する様々な形式の位置付きライフログを標準形式 (LLCDM) で保存,
アプリケーションに必要なデータを選別して,地図上へ可視化する.
地図上での容易なライフログマッシュアップを実現効率的なサービス開発を支援
MashMap FrameworkMashMap1
MashMap2
MashMap3
6
MashMap フレームワークのアーキテクチャ
LLCDM
Map Renderer
MashMap API
DisplayFormatFilter
DataSource 1
MashMap1
LLAPI
DisplayFormatFilter
DataSource 2…
1.DataSource を定義 Filter: 可視化するログを選別す
る DisplayFormat: どのような
表示形式で地図上に表示するかを定義
…2.MashMap オブジェクト作
成 同一地図上に表示する
DataSource を紐付ける3.GoogleMap 上に可視化 MashMap Renderer から
MashMapAPI を利用
MashMapFrameWork
0.位置付きライフログのインポートと変換
7
現状の課題 フレームワークの提供する API を実行するプログラム自
体を,開発者が自ら作成しなければならず,手軽に試すことができない.
先行研究において,実際に開発を行った検証がされておらず,どの程度の効果が得られるのか評価されていない.
?
8
研究の目的とアプローチ 目的
MashMap API を気軽に使い,試せるような仕組みを開発することで MashMap フレームワークを便利に使えるようにする
MashMap フレームワークの有用性を確かめる
アプローチMashMap Builder の開発
MashMap API を介して提案フレームワーク上に既に作成したオブジェクトを一覧しながら,各オブジェクトを画面上の簡単な操作で作成できる GUI フロントエンド
評価実験を行う複数の種類の位置付きライフログを地図上に可視化する「旅行振り
返りマップ」を開発する.提案フレームワークを用いる場合,用いない場合とでの開発工数の差を比較する.
9
MashMap Builder MashMap API の開発者向け GUI フロントエンド 既に作成された MashMap フレームワーク上のオブジェ
クトを一覧しながら,各オブジェクトを画面上の簡単な操作で作成できる
利用例シナリオ「ユーザ (koupe) が 2012年 9 月 13日に GARMIN で取得したGPS ログを,赤色の線で地図上に可視化したい」場合
2012年 9 月 13日 koupe
10
MashMap Builder 利用例 : Filter の作成 Filter 作成ページ
Filterは DB からデータを選別するクエリを持つ
各フォームに以下のように値を入力し, createボタンを押す
description: “沖縄旅行 3 日目の GARMIN ログ” start date : “2012-09-13” end date : “2012-09-14” start time : “00:00:00” end time : “00:00:00” user : “koupe” application: “GARMIN”
既に作成した Filterはフォームの下に表示されている
11
MashMap Builder 利用例 : DataSource 作成Filter 同様,それぞれの作成ページのフォームを利用する DisplayFormat 作成
DiplayFormatは,各データの表示形式を定義する今回の例では,フォームには以下のように入力するDisplayType : “Line”Options : “StrokeColor:red”
Options項目には GoogleMapsAPI の知識を要する
DataSource 作成Filter と DisplayFormat の組み合わせにより定義される作成した Filter, DisplayFormat の ID を同一ページに表示され
ているリストを見て入力するFilterID : “f1”DisplayFormatID : “d1” DataSource
12
MashMap Builder 利用例 : MashMap完成 MashMap オブジェクト作成
MashMap オブジェクトは,同一の地図上へ可視化するDataSource を持つ
まずは,その MashMap オブジェクト自体の情報を入力し,新たな MashMap オブジェクトを作成する
Name : “沖縄旅行 3 日目” description: “2012年 9 月 13日分の沖縄旅行時ログまとめ”
MashMap オブジェクトへの DataSource追加
作成した MashMap オブジェクトと DataSource の ID を入力する MashMapID : “mm1” DataSourceID : “ds1”
⇒リストから MashMap を確認できる
クリック
13
デモ : MashMap BuilderWeb アプリケーション
HTML+JavaScript で作成以下の JavaScript ライブラリを使用
jQuery 1.8.2MashMap Renderer (提案フレームワークに含まれる)
有効行数HTML:761 行 (7 ファイル )JavaScript:334 行
デモ映像「ユーザ (koupe) が 2012年9 月 13日に GARMIN で取得したGPS ログを,赤色の線で地図上に可視化したい」場合に必要な操作
14
「旅行振り返りマップ」 振り返り地図の目的
沖縄旅行に行った中の 1 日分、 2012年 9 月 13日分のログを一つの地図上に可視化したい。
可視化したいログLogG: 2012年 9 月 13日にユーザ koupe が GARMIN で取得
した GPS ログLogT: 2012年 9 月 13日にユーザ koupetiko が Twitter で取得したツイートのログ
可視化の方法LogG :移動した軌跡を赤色の線で表示したいLogT :フキダシで表示したい
ツイートした地点にフキダシアイコンを表示それをクリックすると大きなフキダシが現れ,アカウント名とア
イコン、ツイート内容が表示される
15
評価実験 目的
MashMap フレームワークを使う・使わない場合で,どれだけ開発工数に差が出るかを確かめる
被験者 システム開発経験はあるが, GoogleMaps API については経験
のない男性 1 名 内容:「旅行振り返りマップ」を二つの方法で開発
<提案手法> <従来手法>LLCDMLLAPI
MashMapRenderer
MashMap API
MashMap
MashMapBuilder
LLCDMLLAPI
MapsAPIGoogle
MapsAPIGoogle
16
実験の結果A+B:開発工数
0
1000
2000
3000
4000
5000
6000
7000
8000
9000
10000
提案法 従来法
秒
実施後アンケート提案手法により開発が楽になりましたか?( 5 段階)5(とても楽になった)
⇒ 大幅な工数削減ができた
評価項目 提案手法 従来手法
A: 学習に要した時間 57分 43秒 92分 57秒
B: 開発に要した時間 26分 53秒 64分 37秒
A+B: 開発工数 84分 37秒 157分 34秒
C:ソースコード行数 8行 139 行
D: 可視化されたデータレコードの正確性 100% 100%
A
A
B B
←←←←
17
実験の結果(アンケート結果) 肯定的な意見
GoogleMaps API をほとんど覚えなくてよかったLLAPI からのデータ取得のために RPC の方法を覚えなくてよかった作成した地図をクリックで確認できてよかった更に別のライフログを組み合わせる場合でも,提案法であれば煩わ
しいプログラミングが不要で,楽だと感じた慣れればもっと工数が削減できそうだ
⇒ 学習コスト・コーディング量の削減に貢献できた
否定的な意見MashMap Builder で作成したオブジェクトが ID番号で管理されて
いたため,番号を直接入力しなければならず,混乱がある過去に作ったオブジェクトの手直しができず,作り直さなければな
らなかった
⇒ MashMap Builder の機能改善により対応可能
18
まとめと今後の課題 まとめ
MashMap Builder を実装したMashMap API を介して画面上の簡単な操作で提案フレームワーク上
のオブジェクトを一覧・作成できる開発者向け GUI フロントエンド提案フレームワークの評価を行った
「旅行振り返りマップ」開発実験⇒大幅な開発工数削減を実現した
今後の課題MashMap Builder の操作性向上
ID入力をクリックで行う既に作成したオブジェクトの編集機能
フレームワークのもつ機能の強化位置付きライフログと位置情報を含まないライフログとのマッシュ
アップと可視化を実現する機能地域による絞込みや,データの集計・分析を支援する機能
Recommended