2009 splc-relating requirements and feature configurations a systematic approach
DESCRIPTION
TRANSCRIPT
発表論文
• タイトル
「Relating Requirements and Feature
Configurations: A Systematic Approach」
(関連する要件と機能の設定:体系的アプローチ)
• 著者– Thein Than Tun, Quentin Boucher, Andreas Classen,
Arnaud Hubaux, Patrick Heymans
• 出典– 13th International Software
Product Line Conference
(SPLC 2009) 0
year accept rate
2009 30%
2010 31%
2011 29%
• ICSEはもうなさそう
→ ICSEのSPL系の論文(でわかりそうなもの)は大体読んだ
• SPLCには未来がある
→ SPLに特化した、提案レベルの新技術が多そう
選定理由
1
概要
• 目的
→ SPLの機能選択を要件レベルで行えるようにする
ため
• 手法
→ フィーチャモデル(FM)を要求(RFM)・問題(WFM)・
仕様(SFM)の3つのフィーチャモデルに分離し
関連付ける
• 結論
→ 要件レベルの取捨選択で、要件を満たす定量的な
制約を生成できた2
SPLの機能選択
再利用資産は、必須フィーチャと
任意フィーチャで構成されている
任意フィーチャは顧客の要求に合うものだけを
残し、それ以外は取り外す
どの任意フィーチャが顧客の要求に合うかを
選択する必要がある3
• 要件レベルの問題(R)
– その部分のコードは、ある利害関係者の要求は
満たしていても、別の利害関係者の要求は
満たしていないかもしれない
• ハードウェアレベルの問題(W)
– その部分のコードは、CPUやメモリに負荷を
かけているかもしれない
• 仕様レベルの問題(S)
– その部分のコードは、他のコードに依存していて
それだけでは機能しないかもしれない
各レベルの問題を考慮した機能選択が必要4
コードレベルの機能選択だけではわからない問題
• 「RとW」、「WとS」を関連付ける
• 要件を満たしていて、かつ余分な機能がない
「最適な構成(s)」を見つける
提案手法
5
3つのレベルのフィーチャモデル
• RFM
–利害関係者に関する非機能要求に特化
• WFM
–ハードウェア構成に関する非機能要求に特化
• SFM
–再利用資産のすべての機能を備えたフィーチャモデル
※RFMとWFMは要件定義書をもとに作成6
Xlinks
• RW
– 「RFMの要件」と「WFMのハードウェア構成」の
関係性
• WS
– 「WFMのハードウェア構成」と
「SFMのソフトウェア機能」の関係性
Disambiguating the documentation of variability
in software product lines: A separation of concerns,
formalization and automated analysis.
(RE’07)7
Q制約
• guard条件をつけることで、機能選択の際にxlinksより細かい制御ができる
→ Q制約は [ガード条件] と <定義> で成り立つ
→ ガード条件は ”選ぶ” か ”選ばないか” の2つしかない
→ 定義は <名前> = <機能> で成り立つ (?)8
フィーチャの最適な構成
1. RFMのなかでフィーチャを選択
2. XlinksとQ制約にしたがってWFMの機能が取捨選択される
3. WFMの機能が取捨選択されると、推移的にSFMの機能も取捨選択される
フィーチャの最適な構成が決まる
9
取捨選択の推論原理 (?)
10
実例実験
• 惑星間でファイルを転送する
プロトコル(CFDP)
11
PFM
12
ファイルサイズが大きいか小さいか
2者間通信か3者間通信か
信頼性があるかないか
WFM
13
3者間通信だったら
宇宙船にはType1とType2がある
SFM
14
Q制約1(定義)
15
2者間通信か3者間通信か
リモートユーザなら信頼性を考慮
送信者はUplink
受信者はDownlink
宇宙船とNCCには受信と送信の機能を
Q制約2(ガード条件)
16
メモリを使う場合消費量 4
フィーチャが葉じゃないとき
宇宙船Type1の上限は15
宇宙船Type2の上限は25
Pure::Variants
17
必須フィーチャ
任意フィーチャ(オプション)
任意フィーチャ(EX-OR)
任意フィーチャ(OR)
まとめ
コードレベルの機能選択では
不確定要素が多い
フィーチャモデル(FM)を
要求(RFM)・問題(WFM)・仕様(SFM)
に分離し関連付けた
要件レベルの取捨選択で、
要件を満たす定量的な制約を生成できた 18
私見
• 長所
–コードレベルの機能選択での問題点を示している
–コードレベルの機能選択ではわからない部分を明確化しようとしている
• 短所
–粒度の粗い取捨選択から、細かい機能の取捨選択を推論できるのか?
19