More Related Content
Similar to フィーチャモデルの描き方 (20)
フィーチャモデルの描き方
- 5. 前提となる基本用語:フィーチャ
• フィーチャ
• 広義
• 「ユーザ視点でのシステムの特性である」(SQuBOK V2.0)
• SPLD(ソフトウェアプロダクトライン開発)での定義
• 各ドメインのユーザから見たシステムの特性
• 「広義のフィーチャ」「環境構成」「ドメイン技術」「実装技法」なども含めた、製品の特
性・機能・構成情報を指す
• 共通フィーチャ
• プロダクトラインで共通するフィーチャ
• 可変フィーチャ
• 製品仕様に応じて取捨選択できるフィーチャ
2016/9/01 5
- 11. フィーチャツリーの主要なバリエーション
手法・文献 概要 記法の特徴
FODA(Feature-Oriented
Domain Analysis)
・分析手法
FORM(Feature-Oriented
Reuse Method)
※今回はFORMを紹介
・開発手法
・FODAを拡張した記法を用
いる
・親子ノードの関係を具体化
CBFM(Cardinality Based
Feature Model)
・モデリング手法
・FORMを拡張した記法を用
いる
・親子ノード、兄弟ノードの
記法を詳細化
ファインダー
光学
ファインダー
電子
ファインダー
・フィーチャを枠で囲む
・排他の記法追加
ファインダー
光学
ファインダー
ファインダー
光学
ファインダー
・必須フィーチャの記法追加
・ORの記法追加
・多重度の記法追加
[1:1]
2016/9/01 11
・フィーチャを枠で囲わない
- 15. フィーチャモデルの関係(親子ノードの関係)
関係 内容 関係性の例
composed of
包含・コンポジションの
関係
・親フィーチャが子フィー
チャを保持する
・親フィーチャが子フィー
チャを必要とする
is a
継承(一般化・具体化)
関係
・親フィーチャを具体化し
たものが子フィーチャであ
る
implemented by
クラス・オブジェクトの
関係
・親フィーチャのインスタ
ンスが子フィーチャである
※上記の違いは明記しない。親子関係は3種類のいずれかで統一されていなければならない(e.g.兄弟ノードの
うち、Is aとComposed ofが共存してはならない)
ラーメン
麺
ラーメン
温度 麺量
ラーメン
家系ラーメン
二郎系
ラーメン
ラーメン
昨日食べた
Aのラーメン
2016/9/01 15
- 16. フィーチャモデルの関係(親子ノードの可変関係)
関係 内容 記法の例
必須 ・親フィーチャにとって子
フィーチャは必須である
選択 ・親フィーチャにとって子
フィーチャと関係するか選
択できる
XOR ・親フィーチャは子フィー
チャのどれかから1つ選べ
る
ラーメン
麺
ラーメン
海苔トッピング
白丸を記述
ラーメン
豚骨
スープ
味噌
スープ
線を曲線で囲む
2016/9/01 16
- 30. フィーチャモデルのツール
• 有償/無償複数存在
• Eclipseプラグイン
• EMF Feature Model/Feature Diagram Editor, Xfeature, FeatureMapper等
• 有償ツール
• ZIPC Feature等
• 開発はあまり活発ではない
• ソフトウェアプロダクトライン開発は世界的にも根強いテーマ
• フィーチャモデリングツールはキラーアプリ不在
• 日本ではZIPCが精力的にツール開発
• プロセスや方法論のサービス・ツールチェーンの一部としてフィーチャツリー
ツールを提供。ただし、かなり高価で個人では手を出せない
2016/9/01 30
- 31. 参考文献
• Kang, K.他, Feature-Oriented Domain Analysis (FODA) Feasibility
Study
• Kang, K.他, FORM: A Feature-Oriented Reuse Method with Domain-
Specific Reference Architectures
• Quinton, C.他, Cardinality-Based Feature Models With Constraints:
APragmatic Approach
• 野田夏子他, プロダクトライン開発における可変性のモデル化手法
2016/9/01 31
Editor's Notes
- 2min
- 1.5m
- 0,5m
- 3min
- 1.5min
- 実際の製品成果物も紹介する
- 他にも用途はある。
- 様々ある。
根強い研究テーマのため、拡張記法が続々と提唱されている。
今回扱うのは主要なもののみ