デペンダム関係の整理
i*フレームワークではアクタ間の依存関係を分析するのだが、実際にはデペンダム間の関係で迷うことが多いものだ。i*フレームワークにおける関係には表2に示すように次の4種がある。
依存関係
受益者から提供者に対する意図や期待に関する依存関係。
相互依存関係
下位に対する洗練関係、上位に対する貢献関係。NFRフレームワークにおけるソフトゴール間の関係と同様である。
手段目的関係
達成すべき目的としてのソフトゴールやゴールと、そのために必要となる選択可能な手段としてのゴールやタスクとの関係。
タスク分解関係
タスクを、ソフトゴール、ゴール、タスク、資源に分解する関係。
デペンダム間で使うことのできる関係は貢献関係、目的手段関係、タスク分解関係の3つだ。この3種の関係をデペンダム間のどのような親子関係で使うことができるかを整理すると表3のようになる。
たとえば、ソフトゴールの子もソフトゴールにすることができるのは貢献関係と目的手段関係だけである。同様にゴールを親とした場合、子もゴールにすることができるのは目的手段関係だけだ。タスクが親の場合、タスク分解関係しか用いることはできない。
注の1)で示したように、ゴールをソフトゴールで洗練することはない。また注2)3)に示したように、資源が親になることはないし、(※)資源がタスク以外の親になることはないし、資源がソフトゴールやゴールに貢献したりその達成手段になることもない。
(※:2009/9/20 この部分の記述、および表3を訂正しました。編集部)
依存関係と他の関係
アクタの依存関係は図7に示すようにタスク分解関係や目的手段関係と同じような働きを持つ。つまり他のアクタから入ってくる依存関係によって目的手段関係と同じことを表現できる。また他のアクタへ出て行く依存関係を使うことでタスク分解関係と同じことを表現できる。こういうことを理解して使うのは便利なことだが、逆に知らないと分析する上では混乱する原因になるかもしれない。
図7 アクタ依存関係を用いた目的手段関係ならびにタスク分解関係
今回はi*フレームワークを利用する上での図の書き方のポイントとUMLの図式と対比することでSD図やSR図の役割を紹介した。
ところで、2007年5月15日に「ゴール指向による!!システム要求管理」を出版した[4]。この本ではゴール指向の基本概念だけでなく、本稿でも紹介したi*フレームワークやNFRフレームワークなど実務に役立つと思われる主要な手法を解説したので興味のある方はぜひごらん頂きたい。
■参考文献- [1] Eric S. K. Yu, Towards Modeling and Reasoning Support for Early-Phase
Requirements Engineering, http://www.cs.toronto.edu/pub/eric/RE97.pdf - [2] System Goal Modelling using the i* Approach in RESCUE,
http://www-hcid.soi.city.ac.uk/research/Rescuedocs/RESCUE_i_SR_tutorial.pdf
- 60:要求とアーキテクチャ
- 61:要求と保守・運用
- 62:オープンソースソフトウェアと要求
- 63:要求工学のオープンな演習の試み
- 64:Web2.0と要求管理
- 65:ソフト製品開発の要求コミュニケーション
- 66:フィードバック型V字モデル
- 67:日本の要求定義の現状と要求工学への期待
- 68:活動理論と要求
- 69:ビジネスゴールと要求
- 緊急:今、なぜ第三者検証が必要か
- 71:BABOK2.0の知識構成
- 72:比較要求モデル論
- 73:第18回要求工学国際会議
- 74:クラウド時代の要求
- 75:運用要求定義
- 76:非機能要求とアーキテクチャ
- 77:バランス・スコアカードの本質
- 78:ゴール指向で考える競争戦略ストーリー
- 79:要求変化
- 80:物語指向要求記述
- 81:要求テンプレート
- 82:移行要求
- 83:要求抽出コミュニケーション
- 84:要求の構造化
- 85:アーキテクチャ設計のための要求定義
- 86:BABOKとREBOK
- 87:要求文の曖昧さの摘出法
- 88:システムとソフトウェアの保証ケースの動向
- 89:保証ケースのためのリスク分析手法
- 90:サービス保証ケース手法
- 91:保証ケースのレビュ手法
- 92:要求工学手法の再利用
- 93:SysML要求図をGSNと比較する
- 94:保証ケース作成上の落とし穴
- 95:ISO 26262に基づく安全性ケースの適用事例
- 96:大規模複雑なITシステムの要求
- 97:要求の創造
- 98:アーキテクチャと要求
- 99:保証ケース議論分解パターン
- 100:保証ケースの議論分解パターン[応用編]
- 101:要求発展型開発プロセスの事例
- 102:参照モデルに対する保証ケース
- 103:参SEMATの概要
- 104:参SEMATの活用
- 105:SEMATと保証ケース
- 106:Assure 2013の概要
- 107:要求の完全性
- 108:要求に基づくテストの十分性
- 109:システムの安全検証知識体系
- 110:機能要求の分類
- 111:IREB
- 112:IREB要求の抽出・確認・管理
- 113:IREB要求の文書化
- 114:安全要求の分析
- 115:Archimate 2.0のゴール指向要求
- 116:ゴール指向要求モデルの保証手法
- 117:要求テンプレートに基づく要求の作成手法
- 118:ビジネスゴールのテンプレート
- 119:持続可能性要求
- 120:操作性要求
- 121:安全性証跡の追跡性
- 122:要求仕様の保証性
- 123:システミグラムとドメインクラス図
- 124:機能的操作特性
- 125:セキュリティ要求管理
- 126:ソフトウェアプロダクトライン要求
- 127:システミグラムと安全分析
- 128:ITモダナイゼーションとITイノベーションにおける要求合意
- 129:ビジネスモデルに基づく要求
- 130:ビジネスゴール構造化記法
- 131:保証ケース導入上の課題
- 132:要求のまとめ方
- 133:要求整理学
- 134:要求分析手法の適切性
- 135:CROS法の適用例
- 136:保証ケース作成支援ツールの概要