Presentation is loading. Please wait.

Presentation is loading. Please wait.

Managing non-functional uncertainty via model-driven adaptivity

Similar presentations


Presentation on theme: "Managing non-functional uncertainty via model-driven adaptivity"— Presentation transcript:

1 Managing non-functional uncertainty via model-driven adaptivity
Carlo Ghezzi (Politecnico di Milano, Italy) Leandro Sales Pinto (Politecnico di Milano, Italy) Paola Spoletini (Università dell'Insubria, Italy) Giordano Tamburrelli (Politecnico di Milano, Italy) ・・・ と題しまして,ツノダが発表いたします. Carlo Ghezzi, Leandro Sales Pinto, Paola Spoletini, and Giordano Tamburrelli Managing non-functional uncertainty via model-driven adaptivity. In Proceedings of the 2013 International Conference on Software Engineering (ICSE '13). IEEE Press, Piscataway, NJ, USA,

2 適応型ソフトウェアは複雑になりがちである
D1 近年,サードパーティが提供するコンポーネントをリモートで用いるシステムが増えている. 利用時の実行時間などは不確定である. 不確定要素を考慮して,非機能要求を満たすようにソフトウェアを作成すると,非常に複雑になる. 非機能要求: 応答時間,ユーザビリティ,バッテリー使用量 AF付きカメラ? GPS付き端末? 検索時間? ソートして表示? 1. 商品のバーコード読み取り 2. ユーザの場所検知 3. 同じ商品をネットショップ/周辺の店から検索 4. 価格表示

3 ロジックの分割により保守性を高める 実行環境に適応するためのロジックと,各機能を分割する.
D1 実行環境に適応するためのロジックと,各機能を分割する. UMLのアクティビティ図を作成し,各機能のソースに非機能要求への影響を記述する(手動). マルコフ決定過程に変換し,各パスを通過した場合の非機能要求への影響をPRISMを用いて計算する(自動). 実行時に,確定している結果と,予測される結果に基づき,非機能要求が最大限満たされるパスを選択する(自動). 確定,予測される結果:応答時間,ユーザビリティ,バッテリー使用量 @Implementation(name=”ProductLookup”) @Impact(metrics={”responseTime” , ”energy” , ”usability”}, values={1, 2 , 1}) public String automaticProductLookup(String barcode) { / / invoke }

4 信頼性を高められ,オーバーヘッドも少ない
D1 従来法との違い 信頼性も高めることができる. あるコンポーネントで例外が発生すると,別のパスを選ぶ. 評価実験 ソフトウェアの規模や複雑度を変えて,提案方法適用時のオーバーヘッドを確かめた. 最大で9%実行時間が増えた. ツールが公開されている ADAM (Adaptive Model-driven execution) 感想 手法の説明はかなり具体的に記述されていた。 有用と思うが、他手法との比較は少し不十分に感じた。


Download ppt "Managing non-functional uncertainty via model-driven adaptivity"

Similar presentations


Ads by Google