Post on 22-Apr-2015
description
発表論文
• タイトル
– 「Goal-Driven Software Product Line Engineering」
(ゴール駆動型ソフトウェアプロダクトラインエンジニアリング)
• 著者
– Mohsen Asadi, Ebrahim Bagheri, Dragan Gašević,
Marek Hatala, Bardia Mohabbati
• 出典
– SAC’11, March 21-25, 2011, Taiwan.
– pp.691~698 0
概要
• 目的:ソフトウェアファミリの中で、
最も重要な機能を選択するため
• 手法:ゴールモデルにフィーチャモデル
をマッピング
• 結果:目的の機能を選択するための
枠組みを提案した
1
選定理由
• プロダクトラインとゴール指向の研究が
具体的にどのように行われているのか、
雰囲気をつかむため
2
ソフトウェアプロダクトライン(SPL)
• 既存ソフトウェアの機能(ソフトウェアファミリ)を組み合わせて、新しいソフトウェアを開発
• ドメインエンジニアリング
– ソフトウェアファミリ(フィーチャモデル)の開発
• アプリケーションエンジニアリング
– ソフトウェアファミリに基づいてソフトウェア開発
に分けられる
3
フィーチャモデル
• 類似既存ソフトウェアの特性(機能)をモデル化
• 子の機能は親の機能に含まれる
4
コンフィグレーションプロセスの問題フィーチャーモデルの中から、
適切な機能を選択したい
• 技術的制限、実装コスト、ステークホルダーの
期待などを考慮する必要がある
• ステークホルダーはフィーチャモデルの
構造と利用可能な機能に慣れていない
ステークホルダーがフィーチャモデルから
適切な機能を選択することは困難 5
ゴール指向要求工学(ゴール生成)
• 利害関係者からの要求をゴールとして獲得
6
ゴール指向要求工学(ゴール分析)
• 伝搬アルゴリズムによりゴールの満足度を分析
前方推論
–下位のゴールに4段階(FS,PS,FD,PD)で満足度を設定
–それをもとに上位のゴールの満足度を推定
後方推論
–上位のゴールに4段階で満足度を設定
–それをもとに下位のゴールの満足度を推定7
ゴールモデルからフィーチャーモデルを導出1
1. 機能抽出とグループ分け
–ゴールモデルの葉はフィーチャモデルの機能に
–ゴールモデル上で親が同じなら、その機能同士は関連している(同一のグループである)
8
ゴールモデルからフィーチャーモデルを導出2
2. 必須機能を特定
–ゴールモデル上で、子ゴールがないと親ゴールが実現不可能なとき、その子ゴールは必須機能である
9
マッピングのインフラストラクチャ
• FDならfalse、それ以外(FS,PS,PD)ならtrue
• 最終的に必要な機能はtrueになる
10
ツールサポート
• ゴールモデルからフィーチャモデルを導出
→fmp2rms(Rational Software Modeler +
Feature Modelプラグイン)を使用
• マッピングの可視化
→FMPとOpenMEを使用
11
ケーススタディ
• E-shopの
ケーススタディに適応
• 必要な機能を特定した
12
まとめ
ゴールモデルからフィーチャモデルを導出
ゴールモデルの満足度から目的の機能を推定
フィーチャモデルから目的の機能を特定できた
13
私見
• 長所
– プロダクトラインとゴール指向を組み合わせた研究の
雰囲気がわかる
• 短所
– どこまでが既存でどこからが提案手法なのかわからない
– どの部分が手動でどの部分が自動なのかがわからない
– アプローチの手順が理解できない
– 伝搬アルゴリズムによる上位ゴールからの推論がイメージできない
– 論文中の説明が下手(整理されていない・不十分)
– ケーススタディを評価していない14