(前NTTデータ フェロー システム科学研究所長)山本 修一郎
最近、REBOK(Requirements Engineering Body Of Knowledge)について数人の方から聞かれることがあった。これまでBABOK(Business Analysis Body Of Knowledge)については、この連載でも紹介したが、REBOKについてはまだ解説していなかった。今回は、要求工学に関係するこの2つの知識体系BABOKとREBOKを比較してみよう。
REBOKの概要
日本最大の情報サービス事業者団体であるJISA情報サービス産業協会では、要求工学研究会を2006年に発足させて、要求工学知識の体系化に取り組んできた。2009年には、REBOK WGとして活動を進め、2011年6月に、REBOK第1版(version 1.0)が出版された[1]。
REBOKでは要求獲得7個、要求分析5個、要求仕様化3個、要求の検証・妥当性確認・評価5個、要求の計画と管理7個、合計27個の要求工学の活動についての知識が定義されている。ただし、要求工学プロセスに含まれるのは、要求獲得、要求分析、要求の検証・妥当性確認・評価までである。要求の計画と管理は要求工学プロセスではなく、要求の計画と管理についての知識とされている。
REBOKの特徴は、日本の情報システム開発における「現場の視点から、現場の技術者が参画して、要求工学を実践するガイドライン」としてまとめられたことであろう。
比較の背景と方針
筆者も、REBOKの活動については以前から、REBOK執筆の中心メンバーである青山さんや中谷さんから話を伺って知っていた。REBOK第1版も出版社から献本されていたので手元にあった。REBOKは、索引をいれても214ページなのでコンパクトにまとまっている印象があり、いつでも調べられると思ってそのままにしていたところ、前述した機会があったので今回整理することにした。この理由は、BABOKとREBOKの差異と共通点を知らなければ、現場でいずれかを選択しようにも判断できないからである。
また知識体系を構築する場合、SWEBOK(SoftWare Engineering Body Of Knowledge)[2]やPMBOK(Project Management Body of Knowledge)[3]でもそうだが、体系内に閉じてすべての知識を新たに定義することはない。どのような知識体系でも既存の知識を参照して再構成することになる。また、それらの知識は、後から構築される知識体系を前提にしているわけではない。したがってBABOK[4][5]とREBOKでも、要素としての技術やそれを活用するプロセスとしてのタスクが、同じ先行する知識を利用していれば、どうしても類似することになる。
そこで今回の比較では、知識体系で用いられている構成要素ごとに比較することにした。比較対象は、ステークホルダ、タスク(プロセス)、技術(テクニック)の3種類である。知識体系では、知識の構成要素が明確に識別されているだろうから、BABOKとREBOKのどちらを基準にしてもよいだろうと考えていた。しかし実際に調べてみると、REBOKの方は具体的な知識の構成要素を数え上げることができなかった。この理由は次のとおりである。BABOKでは、36個の技術が明確に識別されてタスクの説明の中で番号によって参照されている。これに対してREBOKでは、技術が名称によってプロセス知識の説明で引用されていることと、技術名称の表現と内容が微妙に揺れているためである。したがって執筆者ではない一人の読者としては、同じ技術かどうか判断できなかったからだ。
このため、BABOKを基準として、対応するREBOKの知識が存在するかどうかを調査した。
ステークホルダの比較
BABOK 2.0[4][5]では、表1に示すように、10種類のステークホルダを挙げている。ビジネス分析者、分野専門家、実装専門家、プロジェクトマネージャ、テスト専門家が専門家ステークホルダである。顧客、スポンサー、エンドユーザー、規制者、サプライヤーが非専門家ステークホルダである。
表1の右列にREBOKのステークホルダをBABOKのステークホルダに対比して示している。この結果、非専門家ステークホルダのうち、規制者とサプライヤがREBOKでは考慮されていないことがわかる。また、専門家ステークホルダでは、テスト専門家がREBOKでは考慮されていないこともわかる。ただし、テスト専門家はソフトウェア開発者としてREBOKでは考慮している可能性もある。しかしその場合でも、明示的に開発専門家とテスト専門家を区別するBABOKと、そうでないREBOKではテストに対する考え方が異なると思われる。たとえば、第三者による検証確認を実施するのであれば、開発専門家とテスト専門家を明確に区別する必要がある。
また、細かいことだがREBOKの説明では、「要求仕様書に関与するアクタ」と「要求管理者」がステークホルダとして出現する部分がある。要求管理者はおそらく要求アナリストだと思われるが、「要求仕様書に関与するアクタ」の範囲はどうなるだろうか?
REBOKでは、要求あるいは要求が定めるビジネスや情報システムに関する人、あるいは、組織をステークホルダと定義している。これに対して、要求工学の活動に関与する人や組織をアクタだと定義する。したがって要求仕様書に関与するアクタとは、要求仕様書の作成活動に関与する人や組織になると解釈したが、どうであろうか?
REBOKでは、要求のスコープに運用要求が入るとしている。しかし、REBOKのステークホルダには運用担当者や運用組織が入っていないから、REBOKの運用要求は運用組織以外のステークホルダから獲得することになる。PMBOKでは運用マネジメントをステークホルダに入れている。TOGAFでも、システム運用組織をステークホルダに入れている。
規制者については、PMBOKではステークホルダではないが、TOGAFではステークホルダとしている。
いずれにしろ、これらの知識体系を現場で利用するときには、具体的にどのようなステークホルダを対象とするかを明確にすることが求められる。
表1 ステークホルダの比較(クリックで拡大)
タスク(プロセス)の比較
BABOKの知識分類に従って、BABOKタスクに対して、対応すると思われるREBOKのプロセス(副知識領域)を表2に示した。この比較表から次のことがわかる。
続きは本誌でご覧頂けます。→本誌を購入する
ご購入のお申込みは電話(03-3507-0560)でも承っております。
- 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:保証ケース作成支援ツールの概要