A - qwik.jp

A. Composition
担当 : 阪大 井上研
崔 恩瀞,山中 裕樹,後藤 祥
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
A1
Automatic Synthesis of Modular
Connectors via Composition of
Protocol Mediation Patterns
Paola Inverardi, Massimo Tivoli
(University of L'Aquila, Italy)
担当:崔恩瀞(阪大 井上研)
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
A1
背景
 ユビキタス・コンピューティングでは,異なるシステムを
接続してサービスを提供する.
 この際,異なるシステム間のプロトコル不整合を解決
する必要がある.
 プロトコル不整合を解決するためのコネクタの作成・
保守が困難である.
►作成して終わりではなく,システムの改修に応じて,コネク
タの保守を行う必要がある
3
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
A1
本論文の概要
 コネクタを自動的に導出する方法を定義
►入力
 2システムのプロトコル
 ドメイン・オントロジー
►出力
 複数のモジュール化されたコネクタ
インターフェース・オートマトン
既存研究は,保守が難しい
モノリシックコネクタを導出
 ドメイン・オントロジーが変更された場合を想定し,提
案する方法の有用性を議論
4
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
A1
提案する方法の概要(Fig.4)
プロトコルの
対
オントロジーを基に
プロトコル間の表記を統一
アクションの発生順序の変更や
入出力の追加・削除を行う
コネクタ群を導出
オントロジー
5
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
A2
Robust Reconfigurations of
Component Assemblies
Fabienne Boyer, Olivier Gruber, Damien Pous
(Université Joseph Fourier, France; CNRS, France)
担当:山中 裕樹(阪大井上研)
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
A2
研究概要
 再コンフィギュレーションプロトコルの提案
► 安全に再コンフィギュレーションするための規約を定義
► 規約を順守してアーキテクチャを変更
⇒ 再コンフィギュレーション中に発生する障害に対応可能
Apache
サーバ
Tomcat
サーバ
データ
ベース
再コンフィギュ
レーション
現状のコンポーネントアセンブリ
(カレントアーキテクチャ)
理想的なコンポーネントアセンブリ
(ターゲットアーキテクチャ)
7
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
A2
再コンフィギュレーションの規約
 Architectural Invariants ( Definition 1 )
► オペレーションを実行する際に満たすべきアーキテクチャの条件
► 実行すべきオペレーションを決定するために必要
再コンフィギュレーション
に必要なオペレーション
Construct/Destruct:コンポーネントの構築・破棄
Wire/Unwire:コンポーネント間の関連付け
Start/Stop:コンポーネントの開始・停止
 Reconfiguration Grammar ( Fig. 1 )
► 再コンフィギュレーションの際のオペレーションの文法
Fig.1
状態遷移機械を満たすように
オペレーションを実行
8
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
A2
プロトコルの概要
1. カレントアーキテクチャとターゲットアーキテクチャのdiffを計算
2. diffから実行すべきオペレーションを決定・順序付け
 Architectural Invariantsを満たすようにオペレーションを決定(Fig.3)
 Reconfiguration Grammarに従ってオペレーションを順序付け(Fig.4)
3. オペレーションを順に適用(Down Phase → Up Phase の順序)
 安全にアーキテクチャを変更することが可能
カレントアーキテクチャ (Fig.7)
オペレーション
diff
Down Phase
Stop: A2, T2
Unwire: (T2,DB1)
Down Phase
Unwire(T2, DB1)
ターゲットアーキテクチャ (Fig.7)
STEP1
Up Phase
Construct(DB2)
Start(DB2)
Wire(T2,DB2)
STEP2
Up Phase
Construct: DB2
Wire: (T2,DB2)
Start: DB2, T2, A2
再コンフィギュレーション中の新たな障害へ対応可能(詳細は略)
9
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
A2
評価実験
 プロトコルの性能評価
►プロトコルのアルゴリズムを形式化
►Coq*を用いてプロトコルのアルゴリズムを検証
 ケーススタディの実施
►ウェブアプリケーションサーバのアーキテクチャ変更例の紹介
*Y. Bertot and P. Cast´eran. Interactive Theorem Proving and Program Development. Coq’Art:
The Calculus of Inductive Constructions. Texts in Theoretical Computer Science. Springer, 2004.
10
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
A3
Drag-and-Drop Refactoring:
Intuitive and Efficient
Program Transformation
Yun Young Lee, Nicholas Chen, Ralph E. Johnson
(University of Illinois at Urbana-Champaign, USA)
担当:後藤 祥(阪大井上研)
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
A3
研究概要
 リファクタリングツールはあまり使われていない
►UIの問題,設定項目が多い
 ドラッグ&ドロップでリファクタリングを行うツールを提案
►Javaエディター,パッケージエクスプローラ上で動作
Print文の引数を選択して
メソッドの外にドロップ
Extract Method
12
“Drag-and-Drop
Refactoring:Intuitive
andofEfficient
Program
Fig.
1 より引用
Software
Engineering Laboratory, Department
Computer Science,
GraduateTransformation”,
School of Information Science
and Technology,
Osaka University
A3
主要な貢献
 Approach
►ドラッグ&ドロップによるリファクタリング操作
 Mappings
►被験者実験を行い,ドラッグ&ドロップとリファクタリン
グパターンのマッピングを作成
 Tool
►Eclipseプラグイン(DNDRefactoring)を公開
 Evaluation
►controlled user study で有用性を確認
13
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
A3
マッピング作成のための実験(RQ1)
 D&D操作とリファクタリングのマッピングを作成
►74名の被験者へマッピングに関する質問を行った
被験者の解答を分類して
マッピングを作成
14
“Drag-and-Drop Refactoring:Intuitive
andDepartment
Efficient
Program
Fig.Science
2, Table.
2 より引用
Software Engineering Laboratory,
of Computer
Science,Transformation”,
Graduate School of Information
and Technology,
Osaka University
A3
ツールの評価実験(RQ2, RQ3)
 Eclipseのリファクタリング機能と比較
►被験者にリファクタリングのタスクを与える
►作業を録画して,実験終了後に解析
 RQ2 : Efficiency (作業時間)
►Extract Method 以外は提案ツールの方が早い
 RQ3 : Usability (作業中に障害に遭遇した回数)
►障害・・・作業の中断,間違った機能の呼び出しなど
►提案ツールを用いることで障害数は平均して半分になった
15
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University
A3
所感
 提案内容の優れた点が上手く述べられている
►提案内容でいかに現状の問題点を解決できるか
►問題点の解決以外の利点
 多くのリソースが公開されている
►ツール,実験タスク,実験結果
16
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University