厚生労働省障害保健福祉部障害福祉課 障害児・発達 …217,413 10,465 166,766 10,511 9,605 31 50,471 24,724 6 (注)1.表中の「 」は「障害者」、「
ブースプレゼンテーション システム障害原因診断...
Transcript of ブースプレゼンテーション システム障害原因診断...
システム障害原因診断~障害のモデル化~
2014年11月21日
仙台高等専門学校 情報システム工学科
岡本 圭史
ET2014 IPAブースプレゼンテーション
目次
1. 背景(位置づけ)
2. 障害のモデル化の方針
3. シミュレータ+障害モデル
4. 障害模擬シナリオ
5. まとめ
背景
事後V&Vのフレームワーク中の位置づけ
障害事例の分析・整理STAMP/CASTによる体系的な解釈
教育コンテンツ
モデルの階層的表現による理解
システム要求仕様のモデル化
システム機能のモデル化
改善・水平展開
初動調査のガイドライン
組込み系の調査マニュアル
整理・データベース化
フィードバック
ハザード分析
STAMP/STPA
FTA、FMEA、HAZOP
障害再現手法(テストベット )゙
シミュレータによる模擬実行
故障注入
故障箇所特定
故障箇所特定・切り分け手法、ログ分析
ソフトウェア検証手法(形式検証、モデル検査ツール等の調査、適用)
仮説生成
事後V&V (妥当性確認と検証)技術
仮説検証
本発表
障害のモデル化の必要性
• 素朴なモデル:仕様・設計・ソースコードを忠実に再現• 利用方法:ソースコードが仕様を満たしているか?
• 障害原因診断に利用できるモデルへの要求• 障害を模擬できないと、障害原因診断に利用できない
• ≒故障を模擬できないと、耐故障性を検証できない
• 既存の類型化された障害を模擬するモデルの構築
• 「安全装置のソフトウェア」の障害原因診断• 安全装置が対象とする障害(例:バルブの閉故障)を模擬
• 安全装置自体(特にソフトウェア)の故障も扱いたい
• 「安全装置が対象とする障害+安全装置自体の故障」を模擬するモデル
障害のモデル化の方針
障害のモデル化の方針
• モデル=通常モデル+障害モデル
• 通常動作:開発者の本来の意図・設計通りの動作• 安全装置、緩和装置等は本来の意図・設計の範囲内のモデル化
• 障害動作:開発者の本来の意図・設計以外の動作• 想定した障害:安全系、緩和系等が想定する範囲内の障害
• 想定しない障害:安全装置のソフトウェアの障害等
• 通常モデルに依存して,障害モデルを構築
障害モデルのイメージ(コンポーネント)
水位=危険閉水位=安全
ソフトの不具合
排水弁の閉故障
運転員タンク排水弁
安全
閉
水位=危険閉水位=危険
運転員タンク排水弁
危険
開
水位=危険閉水位=安全
運転員タンク排水弁
危険
閉
障害モデルの構築法(コンポーネント)
水位=危険閉水位=危険
運転員タンク排水弁
開
危険 通常モデルの変更
• 既知障害のモデル化• ストップ障害等
• 通常モデルとの独立性低
障害を再現できる仕組みを追加
閉故障
障害モデルの実現(コンポーネント)
全体モデル
タンク1モデル閉故障
開度パラメータ=0
障害モデルのイメージ(システム)
水位=危険閉水位=安全
障害時の動作
通常時の動作
運転員タンク排水弁
安全
閉
水位=危険開水位=危険
運転員タンク排水弁
危険
開
水位=危険閉水位=安全
運転員タンク排水弁
危険
閉
ソフトウェアの不具合?
障害モデルの構築法(システム)
水位=危険閉水位=危険
運転員タンク排水弁
開
伝達情報の改竄
障害注入閉
危険 障害注入サブモデルの追加
• 伝達情報の改竄
• 改竄法:既存手法の活用• STAMPのガイドワード
• 通常モデルとの独立性• 追加・変更が容易
外部からは一体化して見える
STAMP(システム理論に基づく事故モデル)
• System-Theoretic Accident Model and Processes
• 特徴:システムを構成するサブシステムやコンポーネントに不具合がなくても、サブシステムやコンポーネントの組み合わせによって全体のシステムにおける不具合が発生する。
• 従来の安全解析手法との違い:STAMPはコントロールストラクチャ図とコントロールループ図にガイドワードを適用する。特徴として、複数の機器や組織が相互作用を行う複雑なシステムにおいて、相互作用のハザード要因を識別し、網羅的に分析できるとともにシステム全体の振る舞いを確認できる。
情報処理システム高信頼化教訓集(ITサービス編)障害対策手法・事例集, 障害分析手法・事例集 2013年度版,IPA(2014)
監視室 安全装置 プラントアクチュエータ
センサGUI
Not
Provided
障害モデルの実現(システム)
安全・緩和装置監視室
プラントからの情報
プラントへの命令
障害注入ブロック
情報伝達を意図的に阻害
シミュレータ+障害モデルMATLAB/Simulink(化学プラント)
化学プラントシミュレータ
プロセスシミュレータタンク1タンク2給水ポンプ制御弁排水弁止め弁安全系水位センサー
制御ロジック・起動制御・定常運転制御・緊急排水制御・緩和制御
人間系・起動指示・停止指示・緊急停止指示・緩和指示
Actuators
Sensors
Controls
Displays
Direct Controlとの矛盾は?
Direct Sensingとの矛盾は?
◇障害の再現
故障模擬排出止め弁の閉故障入口配管閉故障制御弁故障など
緊急排水機能:タンク1のアラームレベル越え、または、運転員指示で、タンク1の水を、排水弁経由で直接排水路に排水する。合わせて、ポンプ停止、止め弁を閉める。緩和機能:タンク1アラートレベル越え、または、運転員指示で、3秒間排水弁を開の、その後12秒だけ受付禁止とする。
化学プラントシミュレータ(障害例)
プラントからの情報プラントへの命令
監視室 安全・緩和装置
障害:緊急停止命令?
閉故障
プラント
化学プラントシミュレータ(障害模擬1)
全体モデル
タンク1モデル閉故障
開度パラメータ=0
閉故障
化学プラントシミュレータ(ガイドワード)
監視室 安全装置 プラントアクチュエータ
センサGUI
Not Provided:必要なコントロールアクションが供給されない例:緊急停止命令が無視される(常にemergency=0)
Incorrectly Provided:誤った非安全なコントロールアクションが供給される例:emergency=1の代わりにemergency=0が供給される
Provided Too Early, Too Late, or Out of Sequence:意図しないタイミングで供給される例:緊急停止命令が1秒遅れて送信される
Stopped Too Soon:途中で止まる(または必要以上に長く実施)例:緊急停止命令が常に1秒で止まる
障害:緊急停止命令?
化学プラントシミュレータ(障害模擬2)
安全・緩和装置監視室
プラントからの情報
プラントへの命令
障害注入ブロック
情報伝達を意図的に阻害
障害:緊急停止命令?
障害模擬シナリオ
障害模擬シナリオ1(安全装置が正常)
1. 初期状態「起動」⇒ 定常状態
2. 定常状態「障害発生」⇒ タンク1満水状態• 障害:「SV2閉故障」+「EV1固着」
3. タンク1満水状態「緊急停止」⇒ タンク2空状態• 緊急停止が正常作動(emergency命令が正常に到達)
• タンク1が満水になるとEV2が開く
定常状態 タンク1満水 タンク2空
障害模擬シナリオ2(安全装置が故障)
1. 初期状態「起動」⇒ 定常状態
2. 定常状態「障害発生」⇒ タンク1満水状態• 障害:「SV2閉故障」+「EV1固着」
3. タンク1満水状態「緊急停止」+障害 ⇒ タンク2満水状態• 障害:緊急停止(emergency)命令が NOT Provided
• タンク1が満水になってもEV2が開かない
定常状態 タンク1満水 タンク2満水
原因:安全装置のソフトウェア不具合等
まとめ
まとめ
• 障害のモデル化の方針• モデル:通常モデル(通常動作のモデル)+障害モデル(障害動作のモデル)
• 通常動作:開発者の本来の意図・設計通りの動作
• 障害動作:開発者の本来の意図・設計以外の動作
• MATLAB/Simulinkを用いて障害をモデル化• 障害モデル(コンポーネント):故障模擬の仕組みを追加
• 障害モデル(システム):ガイドワードを用いて情報伝達阻害の仕組みを追加
• 課題• 模擬する障害の拡充
• モデルの複雑化への対応
• 通常モデルの障害モデルからの独立性確保
ご清聴ありがとうございました
• IPA展示ブースNo. C-16
• パネル展示
• デモ(IPA/SEC事業成果の紹介等)
• 書籍等の成果物展示