(前NTTデータ フェロー システム科学研究所長)山本 修一郎
昨年から参加しているJSTの研究プロジェクトでは、保証ケース(Assurance case)を拡張したDepenbable caseについて研究を進めている[1]。保証ケースについては本連載[2]でも紹介した。今回は、Depenbable caseの基礎となっている保証ケースの標準化動向について紹介しよう。
まず、ISO/IEC 15026のPart2保証ケース[3]を説明する。次いでOMGのARM(ARgument Metamodel)[4]と、SAEM(Software Assurance Evidence Metamodel)[5]について述べる。
ISO/IEC 15026
ISO/IEC 15026では、この標準の対象範囲、適合性、利用法、保証ケースの構造と内容、適用成果物などについて述べている。以下では、これらについて解説する。
◆対象範囲
ISO/IEC 15026では、保証ケースの構造と内容に対する最低限の要求を規定している。
保証ケースには、システムや製品の性質に対する主張(claim)、主張に対する系統的な議論(argumentation)、この議論を裏付ける証跡(evidence)と明示的な前提(explicit assumption)が含まれる。議論の過程で、補助的な主張を用いることにより、最上位の主張に対して証跡や前提を階層的に結び付けることができる。
ISO/IEC 15026では、保証ケースが持つべき構造と内容を規定対象としており、保証ケースの品質については規定していない。また保証ケースについて、これまでに提案されている用語や図式を制限しないように、保証ケースの基本概念だけを標準化している。
◆適合性
保証ケースがISO/IEC 15026に適合しているというためには、①保証ケースの構造と内容が標準に準拠していることと、②適用成果物が標準に準拠していることの2点が求められる。これらについては後述する。
◆利用法
保証ケースの用途は、環境と相互作用するシステムや、製品が持つ不確実性やリスクに対してシステムや製品が望ましい性質を持ち、危険な状況に陥らないことを保証することにある。したがって、保証ケースを作成した結果にも、主張が持つ性質の影響度とその不確実性が反映されることになる。
このように、保証ケースで確認される主張には不確実性が含まれているけれども、それを関係者が許容できるかどうかについて、保証ケースの作成を通じて議論できる点に価値がある。つまり、保証ケースを作成することでシステムや製品に含まれるリスクを分析して、対策が十分であるかどうかを議論できるようになる。さらに、議論した結果を論証関係によって客観的に記録できることから、問題事象の発生に際して第三者によって客観的に確認できる証跡を提供できる。
ISO/IEC 15026では、保証ケースの作成がシステムや製品の開発プロセスの中に組み込まれるべきだとしている。この場合、計画や人間活動、意思決定などに対しても保証ケースを作成できると考えられる。
また、システム開発者や提供者のような専門的な知識がない関係者が参加できるようにすることも保証ケースでは重要になる。このため、どのような関係者が参加して議論するかによって、保証ケースの内容が大きく変化する可能性がある。専門家だけが参加した保証ケースの場合、非専門家が利用するシステムでは、専門家では想定できないシステム利用に起因する問題事象が発生する可能性がある。そうした時に、非専門家から保証ケースで予め問題事象の考慮が不足していたことへの批判が発生する可能性がある。このように保証ケースの作成では、システムにかかわる多様な関係者が参加することが望ましい。
表1 主張の内容
表2 議論の特性
表3 前提の種類
◆保証ケースの構造と内容
保証ケースの要素には、主張、議論、証跡、正当化(justification)、前提がある。最上位の主張として何を選択するかが保証ケースの議論に大きな影響を与える。このため最上位の主張に対する選択理由として、正当化が必要になる。
主張が持つべき内容を表1に示す。
この表から、主張すべき内容には性質について値の範囲があり、値の範囲について制限があること、値が範囲の制限を満たすことについて不確実性があること、主張の適用性について持続期間とその制限ならびに不確実性があることなどが分かる。また、主張でシステムや製品の構成要素について言及する場合には、その版や実体を特定すべきであるとされている。帰結やリスクについても、主張に適合する場合には必須内容になる。
主張を立証するためには、表2に示す特徴を議論が持つ必要がある。このように、議論では下位の要素から上位の主張へ到達すべきことと、結論の不確実性について確定すべきであることが分かる。
証跡であることを示すためには情報の明白性が必要になる。したがって証跡情報には、定義、適用範囲、不確実性、情報源の信頼性、正確性が必要である。また、証跡についての前提条件を示すことも必要になる。
前提条件には、表3に示す3種類がある。最初の2種類には不確実性はないとされるが、最後の前提条件は、それ自体が主張であり、潜在的な不確実性があるとされている。
◆適用成果物
保証ケースについての成果物を表4に示す。
項番1では、保証ケースがシステムの一部であることが必要だという条件である。つまりISO/IEC 15026を用いるということが、システムの一部として保証ケースを作成することになるというわけである。マッピング表現は保証ケースを記述するための表記法による表現のことである。ISO/IEC 15026では、特定の表記法を指定していないので表記法に対する保証ケースのマッピング規定が必要になっている。
また、項番3、4は保証ケースを記述するだけでなく、標準への適合性についての情報が必要になることを示している。
続きは電子書籍(Kindle)でご覧頂けます。→Amazonで購入する
ご購入のお申込みは電話(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:保証ケース作成支援ツールの概要