システミグラムによるシステムの安全性説明文書の提案
宇都宮 浩之, 小林 展英
株式会社デンソークリエイト プロジェクトセンター 愛知県名古屋市中区3-1-1 広小路第一生命ビル
Proposal of safety description document of the system using Systemigram Hiroyuki Utsunomiya and Nobuhide Kobayashi
Software Development Dept. Denso Create Inc. Sakae, Naka-Ku, Nagoya Aichi Japan 概要 現在のシステム開発においては,開発成果の安全性を第三者に納得できる形で説明できることが重要視されてお り,説明文書の標準的な記述法としてGSN が普及しつつある.しかし,GSN はシステム開発者にとっては難解 である.一方,システミグラムは複雑なシステムを記述するためのシンプルで理解しやすい記述法である. 本稿では一度GSN で記述した説明文書をシステミグラムに変換する際の留意点,および説明文書をシステミグ ラムで表現した場合の利点,限界について述べる. Abstract
In the current system development, the safety of the development results is important on explaining to the third party. GSN is becoming popular as a standard notation of the safety description document.
However, GSN is difficult to understand for the system development engineers. Systemigram is a simple and an easy to understand notation to describe complex systems.
In this paper, considerations on the conversion from GSN document into Systemigram are mentioned. The advantages of the explanation document expressed in Systemigram and the limitations are also described. 1. はじめに 高品質で安全なソフトウェアを開発するためには, 開発に関連するステークホルダ間で品質や安全性に対 する共通理解が得られていることが不可欠であり,そ のためにはステークホルダが納得できる十分な情報が 文書化されている必要がある. 本稿では,自動運転システムを対象にその安全性(品 質の妥当性)を説明する文書をGSN で作成し,これ をシステミグラムに変換する.その後,両者を比較し てシステミグラムによる説明文書の利点と限界につい て述べる.2 章で GSN とシステミグラムの記法,3 章 でGSN を用いた自動運転システムの安全性の説明事 例について述べる.4 章で GSN 形式からシステミグラ ム形式への変換ルールと留意点を述べ,GSN 形式とシ ステミグラム形式との比較結果を5 章で述べる.6 章 で考察を加え,最後に7 章でまとめと今後の課題を明 らかにする. 2. 関連技法
2.1. GSN(Goal Structuring Notation)
GSN とは「議論」をモデル化,可視化するもので, 実用的には安全性(safety case),ディペンダビリティ (D-Case)などの主張とそれを支持する議論構造を表 すことを想定している.そのために,次の四つの基本 的な構成要素が準備されている. ・ 主張(Goal): 説明対象が達成すべき状態を示す
・ 戦略(Strategy): 上位主張を下位主張に分解する考え方を示す ・ 前提(Context): 主張や戦略が基づく前提条件を示す ・ 証拠(Solution): 主張が達成できていることを示す証拠を示す これらの構成要素を組み合わせ,開発しているシス テムが安全基準などの原則に従って開発されているこ とを説明できるようになる. 図 1 GSN の作成例 2.2. システミグラム記法 システミグラムはノードとノードの関係から構成さ れる図式であり,ノードは名詞句,ノードの関係は動 詞句で表現される.例えば,「機能A がデータ B を更 新する」という文に対するシステミグラムは図 2に示 すようになる.「機能A」,「データB」がノードであり, 「更新」がノードの関係に相当する. 図 2 システミグラムの作成例 3. GSN による自動運転システムの説明事例 3.1. 適用対象 自動運転システムを対象とするが,今回は車輌と携 帯電話端末,センタ,路側アンテナから構成される簡 易なシステムを対象とする.ただし,車輌は他の車輌 とも車車間通信をするものとする.システム構成を図 3 に示す. 図 3 自動運転システムの構成 3.2. システムの品質要件 自動運転システムの安全性をドライバなどエンドユ ーザに説明するため,自動運転システムの開発に関わ るパートナーメーカが,互いの製品の品質の確認,お よびシステム全体の品質を確認できる説明文書を作成 する.本事例における,システムの品質要件は下記二 点とする. ・ 想定されるハザードに対策できている ・ 想定される脅威に対策できている 3.3. 分析手順 自動運転システムの品質が妥当であるかを分析して いく.本稿では GSN による説明文書とシステミグラ ムに変換した結果との比較が主眼であるため,分析手 順の詳細は割愛する. 3.4. GSN による説明 最上位の主張を「自動運転システムの品質は妥当で ある」とし,システム構成やハザードのリストを前提 に分解し,揃えた証拠を紐付けて GSN で説明する. 説明結果を図 8 に示す. 4. システミグラムへの変換 4.1. 変換手順 本稿で採用した変換ルールを以下に記す.なお,こ の変換ルールは文献[2]に紹介される保証ケースとシス テミグラムとの対応付け(図 4)から構築した. 図 4 保証ケースとシステミグラムとの対応付け データ B 更新 機能 A
[手順 1] 主張に記述される自然言語から名詞句を抽出 して説明対象と特性とに分け,特性をノードとして内 包する名詞句のノードを作成する. [手順 2] 下位の主張に記述される自然言語に対し,[手 順1]と同様の処置を実施する. [手順 3] 主張を分解する戦略の記述と前提文書に従い, 上位主張の名詞句に下位主張の名詞句が含まれる(構 造に基づく分解)場合は[手順 1]で作成したノードの 内部に[手順 2]で作成したノードを配置する. 図 5 変換例:手順 1~手順3 [手順 4] 説明対象の構造に基づいて分解している戦略 の分だけ,[手順 1]~[手順 3]を繰り返す. [手順 5] 説明対象が満たすべき要件など,構造とは異 なる戦略で分解している部位をシステミグラムに変 換する.多くは説明対象が満たすべき特性に応じた分 解となる.ここでは文献[2]にて紹介される対象特性 についてのシステミグラムの例(図 6)に倣って, システミグラムを作成した. 図 6 対象特性についてのシステミグラムの例 図 7 変換例:手順 4~手順5 [手順 6] 準備された証拠を紐付ける. [手順 6]まで実施し,変換完了したシステミグラムに よる説明事例を図 9 に示す. 4.2. 変換時の留意点 (1) 前提導出に利用した技法の配置 ハザードや脅威を導出する際,HAZOP 分析や FTA 分析などの各種技法を用いており,GSN 形式では前提 として付加していた.システミグラムにおいては,ハ ザードに対して元となった HAZOP ガイドワードを “導出”で結び,またハザードに対してFTA 分析を“適 用”し,各対策を“導出”した過程が見えるように結 んだ.結果として,GSN では別文書にまとめられてい た,導出の過程が合わせて確認できるようになる(図 9 参照). (2) ノードの包含関係 自動運転システムに想定される“ハザード”および “脅威”が自動運転システムノードの内部に包含され るのか,外部に存在するのか迷う場面があった.結果 としてハザードはシステムノードに包含,脅威はシス テム外部に存在とした.脅威は悪意を持つ第三者に起 因するものであり,ハザードはシステム内部の構成要
素の故障に起因するためである.包含関係に迷う場合 には,その発生元がどこにあるかを押さえて記述する 必要がある. (3) 機械的に変換できない GSN 作成済みのGSN からシステミグラムへの変換は, 4.1 節の手順に従って機械的に実施できるはずである. しかし,GSN の各構成要素は自然言語で記述されるた め,ひとつの構成要素の中に名詞句が複数存在する場 合や特性相当が無い場合に機械的な変換ができないこ とがある.本稿では未検証であるが,これは文献[2]で 紹介されるようにGSN による説明の不備を検出でき たと考えられるため,GSN に立ち戻って説明不足を修 正する必要がある. 5. 評価 GSN 形式とシステミグラム形式とを比較する. 表 1 比較評価結果 観点 分類 評価 項目 GSN 形式 システミグ ラム形式 視認性 ①文字数 多い 少ない ②ノード数 多い 少ない 理解性 ③包含関係 直感性に やや欠ける 直感的 ④前提条件 厳密 厳密 ⑤証拠の妥当性 やや欠ける やや欠ける 評価項目①,②について,システミグラム形式では 名詞と動詞しか書けない制約があることと,GSN の戦 略に相当するノードが不要であることから文字数とノ ード数ともに少なくなり視認性が高い. 評価項目③についてシステミグラム形式ではノード の包含関係が直感的であり,GSN 形式より理解性が高 いことが考えられる. 6. 議論 評価結果から分かる通り,システミグラム形式は GSN 形式よりも視認性が高く包含関係も直観的であ る.このことから,システミグラム形式の方がシステ ム開発に関わるステークホルダ間での認識齟齬等が減 り,共通理解が得られやすくなる可能性がある.また, 文献[2]にて『レビュ手法』と紹介されている通り,GSN 形式の説明をシステミグラム形式で検証することが可 能となる. 以上のことから,GSN を使い慣れた開発者は GSN 形式で説明文書を作成し,これをシステミグラムに変 換することで検証,視認性と理解性の高いシステミグ ラムを用いてステークホルダ間で共通理解を得るとい う使い方が適切と考えられる. 7. まとめと今後の課題 本稿では,GSN に対する検証性も含めてステークホ ルダと共通理解を得るためにはシステミグラム形式の 方が良いと結論付けた.しかし,本稿の限界として一 度GSN で作成した説明文書をシステミグラムに変換 するという手順が前提となっている.従って,はじめ からシステミグラム形式で説明文書を構築する場合の 手順の比較や,開発コストを比較したうえで最適な手 順と記述形式を導出することが今後の課題である. 謝辞 システミグラムについての図の転載を許諾していた だくなど,本稿を執筆する上で懇切なご指導をいただ いた名古屋大学 山本修一郎教授に深謝いたします. 参考文献 [1] 山本修一郎, システミグラムとドメインクラス図, 連載 要求工学 第 123 回, 2015, http://www.bcm.co.jp/site/youkyu/youkyu123.ht ml [2] 山本修一郎, 保証ケースの客観的なレビュ方法, 名古屋大学, 2015 [3] 山本修一郎, 森崎修司, 渥美紀寿, 構成情報に基づ く保証ケースレビュ手法の提案, AI 学会, KSN 研 究会, 2015, http://www4.atpages.jp/sigksn/conf17/SIG-KSN-017-03-1.pdf
[4] Shuichiro Yamamoto, An assurance case review method using Systemigram, AAA2015, 2015
[5] 松野裕, 山本修一郎, 実践 D-CASE, ダイテック
オンデマンド出版, 2013
[6] 山本修一郎, 議論パターンポケットガイド, 名古 屋大学, 2014