200 likes | 485 Views
G : Apps. G1 RERAN : Timing- and Touch-Sensitive Record and Replay for Android . 東京工業大学 権藤研究室 白倉賢人. 背景. スマートフォンやタブレットのような タッチスクリーンベースのデバイス やアプリ が普及 Record-and-Replay のツールはデバッグやテストに 有用だが、従来の手法では Android アプリの 多種多様な操作に対応しきれない. RERAN. Android の操作を記録し、 再現するツール.
E N D
G1 G : Apps G1RERAN: Timing- and Touch-Sensitive Record and Replay for Android 東京工業大学 権藤研究室 白倉賢人
G1 背景 • スマートフォンやタブレットのような タッチスクリーンベースのデバイスやアプリが普及 • Record-and-Replayのツールはデバッグやテストに 有用だが、従来の手法ではAndroidアプリの 多種多様な操作に対応しきれない
G1 RERAN • Androidの操作を記録し、 再現するツール Lorenzo Gomez, IulianNeamtiu, TanzirulAzim, Todd Millstein: RERAN: timing- and touch-sensitive record and replay for Android. ICSE 2013: 72-81 Fig4より抜粋
G1 従来手法との違い • 従来 「Click TextBox1」や「type “Test123”」のように記録し、再現 →GUIが必須、スワイプ等の操作やセンサーに非対応 • RERAN 低レベルのデバイスへの入力を直接記録し、 正確なタイミングで再生することで再現
G1 ここがすごい1! • Google Play の TOP 100 のアプリのうち、 86個のアプリについて操作を再現できる! →残りの14個は • 非決定的な動作をするアプリ • カメラやマイク等のセンサーを使用するアプリ
G1 ここがすごい2! • バグの再現ができる →デバッグの際に活躍! • 早送り実行ができる →デバッグやテストの 時間短縮! Lorenzo Gomez, IulianNeamtiu, TanzirulAzim, Todd Millstein: RERAN: timing- and touch-sensitive record and replay for Android. ICSE 2013: 72-81 TABLE V より抜粋
G1 動作 • 実際に動作させている動画がYoutubeにあがっている ⇛http://www.youtube.com/user/RERAN2012 「Angry Birds」で実際に操作を記録し、再現している 様子が確認できる
G2 : Inferring Likely Mappings Between APIs 東京工業大学権藤研究室子安貴一
G2 : Inferring Likely Mappings Between APIs 目的・貢献 • 目的 • アプリケーションの移植が大変 • マニュアル • 対応するAPI探し • 手助けしたい • 貢献 • 推論手法の提案 • Rosetta (プロトタイプツール)
G2 : Inferring Likely Mappings Between APIs 手法 • STEP 1 : データ(アプリケーション)収集 • STEP 2 : メソッド実行トレースを拾う • STEP 3 : トレースの解析、推論 • 呼ばれる頻度 • 呼ばれるタイミング • 呼ばれるコンテキスト • メソッド名 • STEP 4 : 複数トレース • Proceedings of the 35th ACM/IEEE International Conference on Software Engineering (ICSE 2013); pages 82-91; San Francisco, California; May 18-26, 2013.Fig. 2より抜粋 メソッド実行トレース(○×ゲーム起動→プレイ待ち)
G2 : Inferring Likely Mappings Between APIs 評価 • プロトタイプツール : Rosetta • JavaME → Android graphics の API • 筆者の考える対応とマッチするか • Top10に70% • Proceedings of the 35th ACM/IEEE • International Conference on Software • Engineering (ICSE 2013); pages 82-91; • San Francisco, California; • May 18-26, 2013.Fig. 6より抜粋
G2 : Inferring Likely Mappings Between APIs 所感 • 学習のオーバーヘッドが大きい • 両プラットフォームでの類似アプリケーション探し • メソッド実行トレースの取得 • 移植の際の労力低減 • 多数のプラットフォームがある今の時代にとって有用かも
Estimating Mobile Application Energy Consumption using Program Analysis 東京工業大学 権藤研究室 髙橋 一平
目的 • モバイルアプリの電力消費量の見積 • 主要な貢献 • コードレベルの電力消費量見積手法を提案 • Google Play storeのアプリを対象としたベンチマーク G3 目的と貢献
入力 • ワークロード • ユースケースのリスト • アプリのJVMバイトコード • プロファイル • 命令やハードウェアから消費電力を見積もる関数の集合 • 出力 • 電力消費量アノテーションが付加されたソースコード G3 入力と出力
ShuaiHao, Ding Li, William G. J. Halfond, Ramesh Govindan, Estimating Mobile Application Energy Consumption using Program Analysis, ICSE 2013, San Francisco, USA . G3 システムの概要
Workload Generator • バイトコードとワークロードから通るパスの集合を求める • Analyzer • パスの集合とプロファイルから電力消費量を見積もる • Source Code Annotator • 電力消費量をアノテーションとしてソースコードに付加する G3 手法の概要
評価項目 • 電力消費量の正確性 • システムの利便性 • 評価方法 • Google Play Storeのアプリをそのまま利用 G3 評価
ShuaiHao, Ding Li, William G. J. Halfond, Ramesh Govindan, Estimating Mobile Application Energy Consumption using Program Analysis, ICSE 2013, San Francisco, USA . G3 実験結果(正確性) • 大体誤差10%以内であり、よく見積もれている
Eclipseプラグインなんかも作ってて親切 • 電力消費量によるソースコードの色づけ • 入力(ユースケース、プロファイル)を作るのは大変そう • ボトルネックを知りたいときに役に立つ G3 所感