Comments
Description
Transcript
ソフトウェア組込み製品における非機能要求の定義について
ソフトウェア組込み製品における 非機能要求の定義について 2012年12月18日 三瀬 敏朗 自己紹介 1977年 松下電工株式会社 入社 綜合技術研究所 マイコンを応用した制御システムの開発 ・ ハードウェア開発 ・ 組込み用OSの開発 ・ ドライバ開発 ・ ミドルウェア開発 ・ アプリケーション開発 ・ 開発マネジメント 2004年 ソフトウェア子会社出向 2006年 品質部 転籍・・現在に至る 全社ソフトウェア仕組み革新プロジェクト 全社ソフトウェア品質行政 ソフトウェア火消し役 社内アカデミー制度 システム商品開発学科長 2004年 社会人ドクター入学 © Panasonic Corporation 2 説明の流れ 1. 対象とするソフトウェア組込み製品の特性 2. ソフトウェア組込み製品における非機能要求 3. 障害分析手法に対する先行研究 4. 分析対象の概念モデル 5. 逸脱要因の抽出 6. 障害シナリオの抽出(非正常系分析マトリクス) 7. 障害シナリオ分析手法(ESIM) © Panasonic Corporation 3 1. 対象とするソフトウェア組込み製品の特性 1.1 対象ソフトウェア組込み製品の特徴 5 対象とする家電などのソフトウェア組込み製品とは 生活に密着した家電や電機設備機器 調光設備 ビル防災・設備監視・放送 血圧計 カーナビ バスユニット アルカリ 浄水器 マッサージチェア 温水便座 ホームエレベータ HEMS (ホーム・エネルギ・マネジメント・システム) © Panasonic Corporation 1.1 対象ソフトウェア組込み製品の特徴 1) 専任オペレータの不在 ・ マニュアルに従わない操作 ・ イタズラ操作や誤った運用 ・ 再起動などの回復操作を期待できない © Panasonic Corporation 6 1.1 対象ソフトウェア組込み製品の特徴 2) 制限できない使用環境 様々な悪環境での使用 電源環境 電磁波環境 ノイズ、放送局アンテナ、違法無線移動局 気候的環境 雨や霧、雷、高温・低温、振動、直射光、気圧 負荷環境 化学的環境 © Panasonic Corporation 瞬時停電、長期停電,広域停電、電圧低下 過負荷、軽負荷(スリップ、負荷はずれ) 海沿い(塩害)、火山の近く(硫黄) 7 1.1 対象ソフトウェア組込み製品の特徴 3) 部分的な故障時における使用 製品の利用が生活に密着し, 安易なシステム停止が許されない 可能な機能の維持を期待 寿命末期における使用 © Panasonic Corporation 8 1.1 対象ソフトウェア組込み製品の特徴 9 4) ハードウェアの適正コスト 頻度の高い使用状況に最適な設計 例外的な使用では、 ・ 利用者に障害を与えてはいけない ・ 完全な機能や性能は期待されないが可能な維持を期待 ・ 通常に回復した場合には、完全に復帰が必要 © Panasonic Corporation 1.1 対象ソフトウェア組込み製品の特徴 5) リアルタイム並行処理システム (ハードウェアや操作処理) システム内のタイミング的な動作が複雑 © Panasonic Corporation 10 1.2 安全に対する要求 11 製品に起因する不安全障害は, 利用者の重大な過失以外はメーカ責任 消費生活用製品安全法 電気用品安全法 重大製品事故の発生 製造事業者・輸入事業者の事故報告 (重大事故を知った日から10日以内) 主務大臣(経済産業大臣)による公表 製品に疑いがある場合は、直ちに事業社名と製品品番 主務大臣(経済産業大臣)による命令 立ち入り検査、回収指示、体制整備など 罰則 (指示に違反した場合) © Panasonic Corporation 消費者への 情報提供 独立行政法人 製品評価技術基盤機構 による調査 1.3 ソフトウェア組込み製品の開発課題 12 製品の市場不具合は, ソフトウェア起因の比率が大きい その他の不具合(2.5%) 運用・保守の不具合(6.7%) ハードウェアの不具合 (13.8%) 製造上の不具合 (6.6%) 製品企画・仕様の不具合 (17.4%) ソフトウェアの不具合 (53.0%) ソフトウェア組込み製品における市場出荷後の全不具合 経済産業省:2007 年版組込みソフトウェア産業実態調査報告書 © Panasonic Corporation 1.3 ソフトウェア組込み製品の開発課題 13 ソフトウェア開発において, 要求仕様定義が最大の課題 技術者のスキル 要求仕様 プロジェクトマネージャのスキル 経営者の理解 開発予算 開発期間 品質向上への取り組み コミュニケーション 技術者の人数 システムの安全性への配慮 開発計画 開発プロセス 成果物の定義 技術者の製品知識 工数見積もり 外部委託先の能力 ドキュメンテーション 人員配置と役割 作業標準 拠点間の連携 開発スペース 開発の難易度 開発機材 要求仕様 1番目 2番目 3番目 0% 10% 20% 30% 40% 50% 60% プロジェクトの遂行に一番重要となる項目(アンケート調査) 経済産業省:2007 年版組込みソフトウェア産業実態調査報告書 © Panasonic Corporation 1.3 ソフトウェア組込み製品の開発課題 14 業務系と組込みの違いによるソフトウェア要求仕様書の 記載レベルの違い 業務系の件名受託システム 発注側 発注側 受注側 RFP 品質責任 品質責任 品質は、 設計制約条件 企画書 動的分析 静的分析 機能分析 要件抽出 ※ 仕様書の本 設計制約を 記載しては いけないとう 記述あり。 動的分析 静的分析 機能分析 要件抽出 要 求 仕 様 書 時間 受注側が、発注者の要求を明確にする。 動作仕様は、あまり重要ではない © Panasonic Corporation ソフトウェア組込み製品 受注側 要 (ソフトウェア開発会社) 求 仕 様 書 時間 発注側が、受注者に要求を明確にする。 動作仕様は、品質と直結し、重要である。 2.ソフトウェア組込み製品における非機能要求 2.1 ソフトウェア組込み製品開発の調査 16 商品開発のシステムテストにおいて発生した不具合の中で 仕様に関わる不具合の要因分析 比率 20 % 40 % 16 % 15 % 6% 2% 22 % 9% 9% © Panasonic Corporation ケアレス ミス 機能間の関係検討不足 詳細な機能,通信の詳細検討不足 性能を考慮した処理の検討不足 ハードウェアの詳細な特性に対する動作 関連知識 や技術の 不足 製造・施工・メンテナンス時の検討不足 正常な動作から逸脱した場合の振舞いの検討不足 停電,過負荷などの例外的な環境時の検討不足 例外操作・異常な設定・運用に対する検討不足 部分的な障害発生時の処理や障害回復後の検討不足 対策なし 着 目 1% 40 % 仕様の記述ミス 基本的な仕様の曖昧な記述、記述漏れ 正常な動作の詳細な振舞いに対する検討不足 対策有り 20 % 仕様変更要因 2.2 障害分析の必要性 17 「正常な動作から逸脱した場合の振舞い」 の課題と対策 製品の要求 ex. ブレーキが安全に働く 非機能要求 (品質要求) 曖昧性が 高い 品質向上のための 機能の追加 ex. 機能要求 ※ 実際のブレーキ制御は, 極めて複雑であり,あく 機能要求に対する まで説明用イメージです. 製品の振る舞い アクセルとブレーキの 同時操作はブレーキ優先 妥当性検証 (障害分析) 悪環境や誤操作などに起因する 製品の例外的な振る舞いの抽出 ex. 運転者がパニック フロアマットにアクセルが 引っかかる. アクセルとブレーキが 同時に踏まれる ソフトウェアの要求仕様 © Panasonic Corporation 衝突事故 2.3 障害分析により明確化可能な非機能要求の領域 18 正常でも異常でもない領域の要求工学の検討があまり行われていない 製品の振る舞い 動作条件 正常な振る舞い 逸脱した振る舞い 停止 カタログに記載された 動作環境からの逸脱 カタログに記載された 過負荷、施工不良、イタズラなど異常操作 動作環境 異常環境、設定不良、ハード誤動作、 経年劣化、故障など 安全性を確保しつつ, 製品に期待された要件を 製品への期待 可能な機能を活かし、 安全な停止 すべて確保 早く正常に復帰 100% 機能要求と 非機能要求の 充足性 0% 領域 © Panasonic Corporation 非機能要求グレード 非機能要求とアーキテクチャなど 「あんばい」 「想定外」が発生する領域 領域A 領域B 領域C 2.3 障害分析により明確化可能な非機能要求の領域 品質特性 顧客 機能性 信頼性 使用性 効率性 保守性 移植性 有効性 生産性 安全性 満足度 要求 (カタログ記載) **できる 品質値QQを 保持している システム・ソフトウェア アーキテクチャ **の状況で XXにならない (例) YYが故障しても 最低ZZ機能を 維持する ロバスト性 実運用で起こりうる状況可能性と そのときの好ましい振る舞いは要求 © Panasonic Corporation 19 2.3 障害分析により明確化可能な非機能要求の領域 障害の定義 製品のステークフォルダーが不満と認識する事象 (安全性だけでなく,可用性,保守性,満足性などすべての品質) 品質項目 機能性 セキュリティ 信頼性 使用性 効率性 保守性 安全性 例 黄色のインクがないだけなのに、白黒のコピーができない 操作ミスを放置したら、データがオープンになっていた センサーが故障しているのに間違い値を正常のように表示 些細な周辺機器が故障していたが、主要機能が使えなくなった 末端の機器が故障していたが、全体にスピードが遅くなった 一部のデータが壊れたが、全てのデータが代替装置に入らない 一部のセンサーが壊れていたので、電源を入れた途端急速回転 障害は、利用者から見た品質問題であり、ソフトウェアの正常からの 乖離度ではない © Panasonic Corporation 20 2.3 障害分析により明確化可能な非機能要求の領域 21 目標 現状より要求仕様の曖昧性を少しでも削減すること 可用性 性能・拡張性 運用・保守性 移行性 セキュリティ システム環境・エコロジー 製造業は、 社内に 専門部署 + 社内規定 非機能要求 あんばい 製造業における曖昧な領域 カタログに記載された 使用状況から逸脱時の 非機能要求 機能要求や非機能要求間の 最適なバランス 機能要求 事業企画 商品企画 デザイン © Panasonic Corporation 製造業は、 社内に 専門部署 コスト 機能要件 非機能要件 安全性 (不安を感じない) 2.3 障害分析により明確化可能な非機能要求の領域 22 正常でも異常でもない領域に、利用者の期待からのギャップが 発生しやすい。 EX. 新幹線の高い品質 事故がない 早い、時間に正確 サービスも充実 雨が強くなってきた 運行停止 例外に対する対応 日常の良い品質は当たり前に感じ 1回ではあっても、明確な自分の行動 に対する阻害は、記憶に残り、品質が 低いと感じやすい © Panasonic Corporation 遅れてもいいけど 止まらないで 不満 2.4 ソフトウェア組込み製品における障害分析に必要な要件 製品開発における不具合要因の調査結果と, 製品の特性から障害分析に必要な要件を抽出 [要件1] 製品だけでなく,環境や利用者等も分析対象として含むこと [要件2] 複合的な要因による障害を分析できること [要件3] 障害が発生するシナリオ過程の分析が行えること 運用 環境 連鎖 逸脱 連鎖 逸脱 ハードウェア 複合 逸脱 © Panasonic Corporation 逸脱 障害 23 3. 障害分析手法に対する先行研究 3.1 障害分析手法に対する先行研究 25 安全性分析 STPA(STAMP‐Based Process Analysis) Nancy Levesonらの研究 事前準備 トップダウン分析 ・ ハイレベルの安全要求,安全制約の識別 ・ ハザードの識別 ・ 制御構造図の作成 重要安全に特化しているため、障害の結果は既知 制御構造図における不適切な制御の振る舞いによる ハザードシナリオの識別 Not Provided 提供されない Incorrectly provided 誤った提供 Provided Too Early,Too Late,Out of Sequence Stopped too soon 急停止 早い,遅れた,逸脱した提供 シナリオ検討手順は、明示されていない ハザードシナリオにつながる潜在原因の識別 © Panasonic Corporation 3.1 障害分析手法に対する先行研究 26 UMLの構造図,ユースケースシナリオ,シーケンス図,状態遷移図など から逸脱と障害を抽出する手法 ガイドワードや故障モードを適用し,逸脱を想定 EX. Frederickらの手法 データに対して故障モード 「incorrect value」,「absent value」, 「wrong timing」,「duplicated value」 イベントの故障モード 「halt/ abnormal termination」,「omission」, 「incorrect logic/event」,「timing/order」 設計図面から逸脱を想定するため、複合要因の抽出は 明示されていない(逸脱からの連鎖の過程で複合する障害) 設計図の精度が高いことが必要であり,ソフトウェアアーキテクチャの逸脱分析を対象 © Panasonic Corporation 3.1 障害分析手法に対する先行研究 27 コンピュータによるモデル検証 モデル検証 要求仕様をモデルで記述 障害は、利用者の問題 モデルをコンピュータ解析し モデルの矛盾や障害を抽出 モデルに矛盾や障害の 条件の定義が必要 色々な逸脱の存在の中で 未知の障害を抽出すること が目的 検討している障害分析との開発フェーズが異なる © Panasonic Corporation 3.2 先行研究のまとめ 28 ソフトウェア組込み製品の特徴 ・ 稼働台数が多い(確率が低くとも,どこかで発生) ・ 過酷な環境や使用で機能を維持(逸脱した状況での使用) 逸脱を利用者の不満と広く捉える 逸脱要因の複合確率が高い ソフトウェア組込み製品に適した障害分析が必要 ・障害に至る時間変化に対する影響を陽に含むシナリオ過程を分析 ・複合的な要因が相互に影響する障害の分析 ・アーキテクチャ設計段階で予見できなかった障害の抽出 ・部品故障や誤操作など広く影響要因を捉えた分析 © Panasonic Corporation 4. 分析対象の概念モデル 4.1 静的構造モデル 30 [要件1]環境や利用者等も分析対象として含むこと 静的構造モデル メッセージの集合,電気信号, 及び温度,圧力などの影響 を含む 通信路 構成要素1 構成要素2 構成要素4 構成要素3 構成要素5 独立した機能を持ち 独立した動作を行う 単位 システム構造図 (構成要素をノード,通信路をアークとする有向グラフ) 分析対象となるシステムを構成する要素と各要素間の関係を示す © Panasonic Corporation 4.2理論的な動的モデル 31 communicating state machines 理論的な動的モデル (リアルタイム並行処理システム) 構成要素U2 構成要素U4 S41 S21 構成要素U1 S23 S11 内部イベント S12 S13 S14 S25 E11 E12 S15 S42 S24 S22 E31 E32 E21 E22 S43 S44 E41 E42 S45 構成要素U3 構成要素U5 S31 S32 E13 E14 伝播イベント © Panasonic Corporation S34 S51 S33 S35 E33 E34 S52 S53 S54 S55 4.2理論的な動的モデル 構成要素Ui x番目の状態 32 Six ある時点のシステムの状態 Sa = [ S1P,S2q,・・・・,Snr ] 構成要素U2 構成要素U4 S41 S21 構成要素U1 5状態を持つ構成要素5個のモデル S23 S11 S12 S13 S14 S15 S32 E13 E14 © Panasonic Corporation E31 E32 E21 E22 S45 S43 S44 E41 E42 構成要素U3 構成要素U5 S31 55=3125 ・・・論理的な状態の数 S25 E11 E12 S42 S24 S22 S34 S51 S33 S35 E33 E34 S52 S53 S55 S54 4.2理論的な動的モデル 実際のアーキテクト 33 正常な状態における理解 「ヒータがONしている」 ポットの容器 温度センサ 温度制御 ヒータ 水が入っている 保温温度以下 加熱を指示 ヒータがON ・意味のある状態は,僅かである。 ・アーキテクトは,全体を掴みながら,局所的な分析を行う 構成要素の状態で,システムの状態を代表することが可能 © Panasonic Corporation 4.2理論的な動的モデル 34 構成要素U2 構成要素U4 S41 S21 構成要素U1 モデルの状態遷移表 S23 S11 S12 S25 S13 E11 E12 S14 S15 E31 E32 S32 S34 構成要素間の イベント E21 E22 S45 S43 S44 E41 E42 構成要素U3 S31 E13 E14 S42 S24 S22 S33 S35 構成要素U5 E33 E34 S51 S52 S53 S54 S55 構成要素の状態で 代表されたシステムの状態 状態欄(システムの状態) イベント欄 (構成要素間 のイベント) © Panasonic Corporation 代表された 構成要素に 入ってきた イベントに 対する振舞い に着目 4.3 周辺環境の動的モデルへの統合 構成要素 イベント コンピュータ機器,構造, 人,環境などを含む メッセージだけでなく物理的な 光、圧力、温度などを含む 連続的特性と離散的特性が混在 同値分割法 EX. お風呂の温度 離散的特性に統一 36度 温度 状態 同様の特性と 見なせる領域 イベント 状態の境界を 越した時,一過 性のイベント © Panasonic Corporation 35 ぬるい 42度 適温 熱い 適温に上がった 熱くなった ぬるくなった 適温に下がった 4.4 逸脱の扱い 36 逸脱が連鎖する過程の振る舞い 悪環境 部品故障 いたずら操作 誤動作 劣化 ・・・・・ 構成要素Ui Si1 非正常内部イベント 逸脱要因 構成要素Uj Si2 Sj1 非正常イベント Si3 EiX Sj2 Si4 Si6 非正常状態 正常な動作特性から変化した特性 © Panasonic Corporation Sj3 Sj4 Si5 Sj5 非正常状態への遷移 4.4 逸脱の扱い 37 逸脱には、絶対的な逸脱と相対的な逸脱が存在 逸脱は,明確にシステムとして記述する (できる限りの簡略化を行う) 絶対的な逸脱 ポットの容器 温度センサ 150度を検出 油が入っている 相対的な逸脱 © Panasonic Corporation ポットの容器 温度センサ 温度制御 沸騰温度の湯 故障 加熱を指示 ヒータ ヒータがON 4.4 逸脱の扱い 38 逸脱は,分析者の視点により記述 ポットの容器 温度センサ 温度制御 沸騰温度の湯 故障 加熱を指示 「信号が来ない」という 非正常イベント © Panasonic Corporation ヒータ ヒータがON 「信号を受けていない」 という非正常状態 5. 逸脱要因の抽出 逸脱要因 (非正常内部イベント) の抽出 5. 障害分析手法 ESIM 逸脱要因を起点とする 障害シナリオの抽出 (非正常系分析マトリクス) 6. 7. 5.1 故障モードとガイドワードの拡張 40 既存の障害要因を抽出するための手法の活用 構成要素 釘,ネジ釘 (部品共通故障パターン) 項目 曲がり 折れ サビ ・・・ 部品 構成要素 パラメータ 故障モード (FMEA) 例 剥離,抜け,緩み,詰まり,外れ, 断線,短絡,折損,摩耗・・ 特徴 ・利点:具体的であり、抽出が容易 ・欠点:ハードウェアが対象であり, 適用範囲が狭い 拡張方法 ハードウェア部品だけでなく、 運用や環境も部品と捉え、 故障モードを整理 © Panasonic Corporation ガイドワード (HAZOP) no、 not 、 more、less 、 as well as other than, part of , reverse, early Late, before, after ・利点:抽象的で幅広い要因に対応 ・欠点:ガイドワードが分かりにくい 分かりやすい表現にし、 シンタックス的な表現と セマンティックス的な整理 5.1 故障モードとガイドワードの拡張 41 故障モードを拡張 種別 CPU周辺 電気回路 機構 © Panasonic Corporation 項目 割り込み 故障モード 割り込み消失,多重割り込み,誤割り込み,ノンマスカブル割り込み レジスタ、メモリ レジスタデータ化け,誤書き込み デジタル回路 ラッチミス,データ化け,ポートリセット,チャタリング,停止 アナログ回路 アンダーフロー,オーバーフロー,発振,劣化による値ずれ,劣化遅延 LSI モードリセット,誤動作,無応答、 コネクタ 短絡,断線,接触不良,アース開放 スイッチ ON故障,OFF故障,中間位置,チャタリング センサ 更新中読み出し,オーバーフロー,アンダーフロー,誤読出,停止 周辺機器 機器故障無応答,通信中のリセット,ローカルモード 駆動部 詰まり,挟まれ,バックラッシュ,こすれ 移動体 衝突,スリップ,ブレーキ故障,初動負荷 筐体 汚れ,割れ,ずれ 動力伝達 たるみ,ねじれ,グリス切れ,ベルト切れ,磨耗 接続部 緩み,ずれ,接触不良,固着 5.1 故障モードとガイドワードの拡張 42 故障モードを運用の視点から拡張 種別 初期化 操作 負荷 通信 使用 メンテナンス 環境 施工 © Panasonic Corporation 項目 故障モード 周辺機器同期 周辺機器と接続遅延,初期化中の通信 入力操作 無効操作,連続操作,同時操作(リモート/ローカル,多箇所,自動/手動) いたずら操作 連続操作,スイッチ(二度押し・渡り押し・同時押し),矛盾操作 登録・設定 登録箇所漏れ,重複登録,無効設定,範囲外設定,矛盾値設定 操作対象機器 機器異常,未接続,誤接続,誤機種接続,範囲外登録,矛盾設定 過負荷 急負荷,連続過負荷,限界をわずかに超えた過負荷,異常過負荷 軽負荷 負荷はずれ,スリップ 通信機器 接続台数オーバー,接続先停止,応答拒否,異機種接続 プロトコル ネゴシエーションリセット,未定義プロトコル,通信中中断 通信線 通信高負荷,断線,接続不安定, 無線 ハンドオーバー 用途 適正外用途による使用 周辺機器 機器整備不良(プリンタ紙切れなど) 電源 瞬時停電,連続瞬時停電,長期停電,広域停電,電圧低下 加速度 ゆれ,振動,衝撃 温度 高温,低温,急激な温度変化 電磁波 ノイズ,強電磁波,放送設備近隣,違法移動無線局 湿度 結露,水蒸気 天候 雨,雷,ヒョウ 虫 ハエ,蚊,蟻,蜘蛛 障害物 壁,段差,鉄製ドア 配線 誤結線,重複アドレス,アドレス設定ミス, 設置 位置ずれ,ゆがみ,方向ずれ 5.1 故障モードとガイドワードの拡張 ガイドワードの拡張 シンタックス 大量のイベント ガイドワード 有/無 強/弱 大/小 厳しい/緩い 激しい/穏やか 急/ゆっくり 精/粗 長/短 正/逆 余分/不足 遅く/早く 同期/非同期 前に/後に 多く/少なく 正/偽 一致/不一致 © Panasonic Corporation 43 セマンティックス 断線復帰により 同時に大量のイベント ガイドワード 境界値 断線/復帰 同時・多重 電源変動・瞬停 競合・衝突 初期化 優先 放置 公差 設定変更 無効 順序変更 輻輳 範囲外 構成変更 重複 過負荷・集中 再起動 例外・意地悪 モード移行 失敗 処理切替 中断 意図外 5.1 故障モードとガイドワードの拡張 44 参考 意地悪テストが閃くまで、意地悪漢字マンダラを「じっと」見る (引用:鈴木三紀夫 氏((株)TIS) 曼陀羅(まんだら)は仏教において聖域、仏の悟りの境地、世界観などを視覚的・象徴的に表したもの。 © Panasonic Corporation 5.2 逸脱要因の抽出手順 イベントが持つパラメータ ガイドワードを適用し 逸脱を想定 想定した逸脱をトップ事象に FTAで逸脱要因を分析 45 構成要素 故障モードを当てはめ 逸脱要因を抽出 抽出した逸脱を非正常内部イベントとする © Panasonic Corporation 6. 非正常系分析マトリクス 逸脱要因 (非正常内部イベント) の抽出 5. 障害分析手法 ESIM 逸脱要因を起点とする 障害シナリオの抽出 (非正常系分析マトリクス) 6. 7. 6.1 構造と記述 47 非正常系分析マトリクス 構成要素U2 構成要素の状態で 代表された システムの状態 状態番号 送り先 イベント 構成要素 番号 Ui Ejm Uk Ein Ui Sil 状態の記述 イベント の記述 状態の言葉に よる記述 イベントの 言葉による 記述 Sil' S41 S21 構成要素U1 S23 S11 S12 S25 S13 E11 E12 S14 S42 S24 S22 S15 構成要素 構成要素U4 E31 E32 E21 E22 S43 S44 E41 E42 S45 構成要素U3 構成要素U5 S31 Ui Sil' E13 E14 S32 S34 S33 E33 E34 S51 S52 S53 S54 S35 S55 構成要素間の イベント Ein → Uk ※ 非正常状態や非正常イベントは,非正常の理由を特定できる記述を行う © Panasonic Corporation 7. 障害分析手法 ESIM 逸脱要因 (非正常内部イベント) の抽出 5. 障害分析手法 ESIM 逸脱要因を起点とする 障害シナリオの抽出 (非正常系分析マトリクス) 6. 7. 7.1 事前条件とESIM 実施後のプロセス ( 事前条件 ) 正常な振る舞いに関するシステムアーキテクチャ設計完了 ・ 構成要素間の接続関係 ・ 正常な動作における状態遷移モデル ・ 正常な通信シナリオ ・ 構成要素における固有の故障 ・ 利用者の誤操作の種類と性質 © Panasonic Corporation 49 7.2 システム構造図の作成 50 事例の電気ポット ・容器内の水を温度センサで検知 ・温度センサの情報から温度制御部が,ヒータに指示 ・ヒータが,ポット容器内の水を一定範囲の温度に保つ (一定温度に保つだけの単機能とする) システム構造図 構成要素として 負荷も分析対象 U1ポット内の水 U2 © Panasonic Corporation 温度センサ U3 温度制御部 U4 ヒータ 7.3 イベントと状態の抽出 51 各構成要素の状態と構成要素間のイベントを抽出 構成要素 U1 U2 U3 U4 ポット内の水 温度センサ 正常状態 S11 保温温度を下回る温度 E11 保温温度を下回る温度になった S12 保温温度 E12 保温温度になった S13 保温温度を上回る温度 E13 保温温度を上回る温度になった S21 保温温度を下回る温度を検知している E21 保温温度を下回る温度を検知した S22 保温温度を検知している E22 保温温度を検知した S23 保温温度を上回る温度を検知している E23 保温温度を上回る温度を検知した S31 保温温度内と判断し,加熱制御を 停止している E31 加熱停止を制御指示 S32 保温温度を下回ったと判断し, 加熱制御を実行している E32 加熱を制御指示 S41 加熱している E41 加熱した S42 加熱を停止している E42 加熱を停止した 温度制御部 ヒータ © Panasonic Corporation 正常イベント 同値分割法 7.4 逸脱の要因となる非正常系イベントの抽出 ガイドワードの適用 イベント E12 保温温度に なった © Panasonic Corporation ガイドワード 有無 有,なし 符号反転 正,負 速度 速く,遅く 幅 長く,短く 同期/非同期 同期,非同期 間隔 長く,短く,同時に 回数 多く,少なく 順序 前に,後に 量 大きく,小さく 送信元 異なった タイミング 矛盾した データ構造 不一致部分 抽出した逸脱 温度が変化しない 温度が急激に変化する 温度が異常高温になる 水温以外の温度を受ける 52 7.4 逸脱の要因となる非正常系イベントの抽出 FTAの適用 温度が急激に変化する 高温の水を 投入 © Panasonic Corporation 水がない 53 7.4 逸脱の要因となる非正常系イベントの抽出 54 故障モードの適用 No U1 構成要素 種別 ポット内の 負荷 水 項目 故障モード 過負荷 急負荷,連続過負荷,限界をわずかに 超えた過負荷,異常過負荷 水が溢れる 軽負荷 負荷はずれ,スリップ 水がなくなる 更新中読み出し,オーバーフロー,アン ダーフロー,誤読出,停止 誤った値を読み出す 故障により異常に低い値を示す 故障により異常に高い値を示す センサ停止 割り込み消失,多重割り込み,誤割り込 み,ノンマスカブル割り込み センサ値を読み飛ばす U2 温度センサ 電気回路 センサ 割り込み 逸脱要因 U3 温度制御部 CPU周辺 レジスタ, レジスタデータ化け,誤書き込み メモリ U4 ヒータ © Panasonic Corporation 電気回路 アナログ 回路 アンダーフロー,オーバーフロー,発 振,劣化による値ずれ,劣化遅延 誤ったセンサ値を書き込む ヒータの加熱が低下する 7.5 分析開始時の非正常系分析マトリクスの作成 構成要素 状態番号 送り先 イベ 構成 ント 要素 番号 状態の説明 保温温度を 下回る温度 イベント の説明 E11 保温温度を下回る 温度になった U2 E12 保温温度になった E13 保温温度を上回る 温度になった E21 保温温度を下回る 温度を検知した U3 E22 保温温度を検知し た E23 保温温度を上回る 温度を検知した E31 加熱停止を制御 指示 E32 加熱を制御指示 E41 加熱した U4 U1 E42 U4 温度センサ 温度制御部 U1 S12 U2 S22 U3 S13 S21 保温温度 保温温度を 範囲の温度 上回る温度 S23 S31 S32 保温温度を 保温温度を 加熱制御を 保温温度を 下回る温度 上回る温度 停止してい 加熱制御を 検知してい 実行してい を検知して を検知して る る る いる いる ポット内の水 S41 加熱して いる S42 加熱を停止した E14 急激に温度が 上昇した E15 急激に温度が 下降した 非正常内部イベント E24 急激な温度上昇を 検知した (分析開始時の逸脱) E25 急激な温度下降を 検知した 急激な温度上昇を E33 により加熱停止を 指示 急激な温度下降に より加熱を指示 © Panasonic Corporation Ei11 S14 U1 S15 S16 保温温度を 保温温度範 保温温度を 加熱を停止 下回る温度 囲において,上回る温度 において水 している において水 水がない がない がない 分析開始時の 非正常系分析マトリクス 水が空になった E34 ヒータ U4 Ei11 U2 U3 S11 ポット内の水 55 水が空になった U2 U2 S24 S25 S33 S34 急激に温 度が下降 を検知し ている 急激な温度 上昇を検知 し,加熱を 停止してい る 急激な温度 下降を検知 し,加熱し ている 急激に温 度が上昇 を検知し ている U3 U3 7.6 非正常系分析マトリクスの作成 構成要素 状態番号 送り先 イベ 構成 ント 要素 番号 S11 状態の説明 保温温度を 下回る温度 イベント の説明 ポット内の水 温度センサ 温度制御部 U1 S12 U2 S22 U3 S13 S S ポット内の水 保温温度 保温温度を 範囲の温度 上回る温度 21 23 S31 56 ヒータ S32 U1 保温温度を 保温温度を 加熱制御を 保温温度を 下回る温度 上回る温度 停止してい 加熱制御を 検知してい 実行してい を検知して を検知して る る る いる いる S41 加熱して いる S42 S24 U S22 E22→U3 S23 E23→U3 - - S22 E22→U3 S22 E22→U3 S22 E22→U3 S23 E23→U3 - - - - S23 E23→U3 保温温度を下回る 温度を検知した U3 E22 保温温度を検知し た E23 保温温度を上回る 温度を検知した E31 加熱停止を制御 指示 S42 E42→U1 - - E32 加熱を制御指示 - - S41 E41→U1 E41 加熱した S32 E32→U4 - - - - - - - - - - S31 E31→U4 S31 E31→U4 - - S16 E14→U2 S16 E14→U2 - - 加熱を停止した - - S11 E11→U2 S12 E12→U2 S14 E15→U2 S14 E15→U2 Ei11 水が空になった S14 S15 S16 - - - - - - - - E14 急激に温度が 上昇した E15 急激に温度が 下降した - - - S25 E25→U3 - - - - S24 E24→U3 S25 E25→U3 S25 E25→U3 - - 非正常内部イベントの 送信先は,自構成要素 S33 E33→U1 - - 制御が発振 [障害] S34 E34→U1 - - 制御が発振 [障害] - - 急激な温度上昇を 検知した E25 急激な温度下降を 検知した E33 急激な温度上昇を により加熱停止を 指示 S42 E42→U1 - - E34 急激な温度下降に より加熱を指示 - - S41 E41→U1 © Panasonic Corporation - - - - - - 24 U1 U - - S13 E13→U2 S24 S24 E24→U3 E24→U3 急激な温度 上昇を検知 下降を検知 し,加熱を し,加熱し 停止してい ている ヒータ る 4 S32 E32→U4 S12 E12→U2 ポット内の水 E S34 - - E21 U2 S33 S21 E21→U3 保温温度を上回る 温度になった - S25 S21 E21→U3 E13 - U3 S21 E21→U3 保温温度になった U1 E42 U3 - - U2 E12 U4 S16 U2 非正常内部イベント 急激な温度 保温温度を 急激に温 急激に温 U 保温温度を下回る 温度になった U3 S14 U1 S15 保温温度を 保温温度範 加熱を停止 下回る温度 囲において,上回る温度 度が上昇 度が下降 において水 を検知し している を検知し において水 水がない 温度センサ 温度制御部 ている がない ている がない 2 3 E11 U4 U1ポット内の水 U2 ポット内の水 U4 7.6 非正常系分析マトリクスの作成 ポット内の水 構成要素 状態番号 送り先 イベ 構成 ント 要素 番号 U1 S12 S11 状態の説明 保温温度を 下回る温度 イベント の説明 E11 保温温度を下回る 温度になった S11 S12 S13 保温温度になった S13 保温温度 保温温度を 範囲の温度 上回る温度 U1 ポット内の水 S21 温度制御部 U2 S22 U3 S23 保温温度をE 13 保温温度を 下回る温度 検知してい を検知して る いる S31 ヒータ ポット内の水 U4 S32 保温温度を 加熱制御を 上回る温度 停止してい 加熱制御を 実行してい を検知して る る いる S41 加熱して いる S42 S23 E23→U3 - - - - S23 E23→U3 S32 E32→U4 - - - - - - - - - - S31 E31→U4 E33→U1 - - 制御が発振 [障害] - - 制御が発振 [障害] - - - - S41 E41→U1 E41 加熱した S31 E31→U4 拡張された 領域 S12 E12→U2 S13 E13→U2 - - S16 E14→U2 S16 E14→U2 - - 加熱を停止した - - S11 E11→U2 S12 E12→U2 S14 E15→U2 S14 E15→U2 Ei11 水が空になった S14 S15 S16 - - - - - - - - E14 急激に温度が 上昇した E15 急激に温度が 下降した E24 急激な温度上昇を 検知した E25 急激な温度下降を 検知した E33 急激な温度上昇を により加熱停止を 指示 E i S24 S24 E24→U3 E24→U3 - - S25 E25→U3 11 水が空になった - - - - S24 E24→U3 S25 E25→U3 S25 E25→U3 - - - - S34 E34→U1 U1ポット内の水 U4 ヒータ U3 - - 加熱を制御指示 - U3 S32 E32→U4 E32 © Panasonic Corporation - - - - S22 E22→U3 - - U3 温度制御部 急激に温 度が下降 を検知し ている S22 E22→U3 S42 E42→U1 より加熱を指示 急激に温 度が上昇 を検知し ている S22 E22→U3 加熱停止を制御 指示 温度センサ E34U2急激な温度下降に S34 急激な温度 下降を検知 し,加熱し ている - - E31 U4 S33 急激な温度 上昇を検知 し,加熱を 停止してい る S22 E22→U3 S23 E23→U3 保温温度を上回る 温度を検知した U2 S25 - - E23 - S24 S21 E21→U3 保温温度を検知し た - U2 S21 E21→U3 U3 E22 U1 E42 U2 S21 E21→U3 保温温度を下回る 温度を検知した U3 S16 保温温度を 保温温度範 保温温度を 加熱を停止 下回る温度 囲において,上回る温度 において水 している において水 水がない がない がない E21 U4 S14 U1 S15 - - 保温温度を下回る温度 保温温度範囲の温度 保温温度を上回る温度 保温温度を上回る 温度になった 温度センサ U2 E12 57 US1 ポット内の水 33 S14 保温温度を下回る温度において水がない S15 保温温度範囲において,水がない S16 保温温度を上回る温度において水がない S42 E42→U1 - - - - S41 E41→U1 7.6 非正常系分析マトリクスの作成 ポット内の水 構成要素 S11 状態番号 送り先 イベ 構成 ント 要素 番号 状態の説明 保温温度を 下回る温度 イベント の説明 E11 保温温度を下回る 温度になった U2 E12 保温温度になった E13 保温温度を上回る 温度になった U1 S12 S13 ポット内の水 U1 温度センサ 温度制御部 U2 S22 U3 S21 S23 S31 ヒータ S32 S16 保温温度を 保温温度を 加熱制御を 保温温度を 下回る温度 上回る温度 停止してい 加熱制御を 検知してい 実行してい を検知して を検知して る る る いる いる - - S22 E22→U3 S23 E23→U3 S21 E21→U3 ポット内の水 U4 S14 保温温度を下回る温度に おいて水がない 保温温度 保温温度を 範囲の温度 上回る温度 58 S41 加熱して いる S42 U1 S15 S14 S16 保温温度を 保温温度範 保温温度を 加熱を停止 下回る温度 囲において,上回る温度 において水 している において水 水がない がない がない S21 E21→U3 保温温度を上回る温度 S - E →U - において水がない S 22 22 23 E23→U3 3 - - U2 U2 U3 U3 S24 S25 S33 S34 急激に温 度が上昇 を検知し ている 急激に温 度が下降 を検知し ている 急激な温度 上昇を検知 し,加熱を 停止してい る 急激な温度 下降を検知 し,加熱し ている S21 E21→U3 S22 E22→U3 - - S22 E22→U3 - - S23 E23→U3 E21 保温温度を下回る 温度を検知した S32 E32→U4 - - S32 E32→U4 - - U3 E22 保温温度を検知し た - - - - - - E23 保温温度を上回る 温度を検知した - - S31 E31→U4 - - - - E31 加熱停止を制御 指示 S42 E42→U1 - - E32 加熱を制御指示 - - S41 E41→U1 E41 加熱した E41 E42 U4 S13 E13→U2 - - S16 E14→U2 S16 E14→U2 - - 加熱を停止した - - S11 E11→U2 S12 E12→U2 S14 E15→U2 S14 E15→U2 Ei11 水が空になった S14 S15 S16 - - - - - - - - E14 急激に温度が 上昇した E15 急激に温度が 下降した E24 急激な温度上昇を 検知した - - S33 E33→U1 E25 急激な温度下降を 検知した S34 E34→U1 - - E33 急激な温度上昇を により加熱停止を 指示 E34 急激な温度下降に より加熱を指示 U2 U4 加熱を停止した S12 E12→U2 U1 E42 U3 加熱した E14 E15 - - - S24 S24 E24→U3 E24→U3 - - S25 E25→U3 急激に温度が上昇した 急激に温度が下降した © Panasonic Corporation - - - - S25 E25→U3 S25 E25→U3 U2 S42 E42→U1 - - - E41→U1 温度センサ S - S31 E31→U4 拡張された - 領域 - S24 E24→U3 U1ポット内の水 - - 制御が発振 [障害] 制御が発振 [障害] - - 41 U2 温度センサ U3 温度制御部 U4 ヒータ 7.6 非正常系分析マトリクスの作成 構成要素 状態番号 送り先 イベ 構成 ント 要素 番号 E11 温度センサ 温度制御部 U1 S12 U2 S22 U3 S11 状態の説明 保温温度を 下回る温度 イベント の説明 U2 ポット内の水 S13 保温温度 保温温度を 範囲の温度 上回る温度 温度センサ 保温温度を下回る 温度になった S21 保温温度を下回る温度を E検知している S23 E保温温度を上回る温度 U Eを検知している U2 E12 保温温度になった 13 保温温度を上回る 温度になった 21 保温温度を下回る 温度を検知した 22 保温温度を検知し た E23 保温温度を上回る 温度を検知した E31 加熱停止を制御 指示 E32 加熱を制御指示 E41 加熱した 3 S21 S23 S31 ヒータ S32 保温温度を 保温温度を 加熱制御を 保温温度を 下回る温度 上回る温度 停止してい 加熱制御を 検知してい 実行してい を検知して を検知して る る る いる いる 加熱して いる S42 S14 - - - - S23 E23→U3 - - U2 S32 E32→U4 - - - - - - - - - 温度センサ - S31 E31→U4 急激に温度が下降を 検知している S25 S42 E42→U1 - - - - S41 E41→U1 E12→U2 E 水が空になった S15 S16 E14 急激に温度が 上昇した E15 急激に温度が 下降した - S24 S24 E24→U3 E24→U3 - - S25 E25→U3 - - U2 E24 E25 - - 温度センサ - - S - 24 U3 温度制御部 E24→U3 U4 - S33 E33→U1 急激な温度下降を 検知した ヒータ - - - - - - 急激な温度上昇を 検知した S31 E31→U4 S14U1ポット内の水 E15→U2 S25 E25→U3 S34 E34→U1 - - - - - - S25 E25→U3 - - 急激な温度上昇を 検知した E15→U2 U3 S23 E23→U3 S24 急激に温度が上昇を 検知している E11→U2 © Panasonic Corporation S32 E32→U4 S22 E22→U3 S14 急激な温度下降に より加熱を指示 急激に温 度が下降 を検知し ている S22 E22→U3 S14 E34 急激に温 度が上昇 を検知し ている S22 E22→U3 - - - - 急激な温度上昇を により加熱停止を 指示 S34 急激な温度 下降を検知 し,加熱し ている - - S12 E33 S33 急激な温度 上昇を検知 し,加熱を 停止してい る S22 E22→U3 S23 E23→U3 S11 急激な温度下降を 検知した S25 - - - - E25 S24 S21 E21→U3 加熱を停止した E24 U3 S21 E21→U3 S16 E14→U2 U2 U2 S21 E21→U3 S16 E14→U2 - U2 - - - - - S16 保温温度を 保温温度範 保温温度を 加熱を停止 下回る温度 囲において,上回る温度 において水 している において水 水がない がない がない S13 E13→U2 i 11 U4 S41 U1 S15 S12 E12→U2 U1 E42 U3 ポット内の水 U4 E14 急激に温度が上昇した E15 急激に温度が下降した U4 59 制御が発振 [障害] 制御が発振 [障害] S42 E42→U1 - - - - U3 温度制御部 S41 E41→U1 - - 拡張された 領域 7.6 非正常系分析マトリクスの作成 構成要素 状態番号 送り先 イベ 構成 ント 要素 番号 ポット内の水 温度センサ 温度制御部 U1 S12 U2 S22 U3 U3 温度制御部 S11 状態の説明 保温温度を 下回る温度 イベント の説明 S31 S13 S21 保温温度 保温温度を 範囲の温度 上回る温度 S23 S31 ヒータ S32 U3 E22 保温温度を検知し た - - - - E23 保温温度を上回る 温度を検知した - - S31 E31→U4 E31 加熱停止を制御 指示 E32 加熱を制御指示 E41 加熱した U2 U3 U4 急激な温度上昇を 検知した S S - E →U E →U - S S E--25 E 急激な温度下降を →U E →U 検知した S S S Ei11 水が空になった E14 急激に温度が 上昇した E15 急激に温度が 下降した 14 - S33 S34 S42 E42→U1 - - - - S41 E41→U1 13 2 12 2 15 - 12 2 16 - S24 S24 E24→U3 E24→U3 - - S25 E25→U3 - - U3 S32 E32→U4 - - - - - E31→U4 S25 E25→U3 急激な温度上昇を検知し, - - 加熱を停止している - S S16 E14→U2 - - - - S14 E15→U2 - - 温度センサ - - S14 U ポット内の水 1 E15→U2 - - - S24 S25 - - E24→U3 U3 温度制御部 - E25→U3 S33 E24 急激な温度上昇を 検知した E25 急激な温度下降を 検知した S34 E34→U1 E33 急激な温度上昇を により加熱停止を 指示 S42 E42→U1 - - E34 急激な温度下降に より加熱を指示 - - S41 E41→U1 E33→U1 - - E33 E34 31 急激な温度下降を検知し, 加熱している S16 E14→U2 U2 - - © Panasonic Corporation U3 U3 温度制御部 - - E24 11 急激に温 度が下降 を検知し ている S23 E23→U3 - - 11 急激に温 度が上昇 を検知し ている - - S32 E32→U4 加熱を停止した S34 急激な温度 下降を検知 し,加熱し ている S22 E22→U3 保温温度を下回る 温度を検知した 13 S33 急激な温度 上昇を検知 し,加熱を 停止してい る S22 E22→U3 E21 2 S25 S22 E22→U3 保温温度を上回る 温度になった U1 E42 保温温度を 保温温度範 保温温度を 加熱を停止 下回る温度 囲において,上回る温度 において水 している において水 水がない がない がない S24 - - S23 E23→U3 E13 12 S16 - - 保温温度になった 12 S14 U2 S21 E21→U3 U2 E12 U4 加熱して いる S42 U2 S21 E21→U3 保温温度を下回る 温度になった S32 加熱制御を 実行している S41 U1 S15 S21 E21→U3 E11 - S22 E22→U3 S23 E23→U3 ポット内の水 U4 保温温度を 保温温度を 加熱制御を 保温温度を 下回る温度 上回る温度 停止してい 加熱制御を 検知してい 実行してい を検知して を検知して る る る いる いる 加熱制御を 停止している- 60 急激な温度上昇により 加熱停止を指示 急激な温度下降に より加熱を指示 U4 ヒータ - - 制御が発振 [障害] 制御が発振 [障害] - - U4ヒータ 7.6 非正常系分析マトリクスの作成 構成要素 状態番号 送り先 イベ 構成 ント 要素 番号 S11 状態の説明 保温温度を 下回る温度 イベント の説明 ポット内の水 温度センサ 温度制御部 U1 S12 U2 S22 U3 S13 保温温度 保温温度を 範囲の温度 上回る温度 S21 S23 S31 61 ヒータ ポット内の水 U4 S32 保温温度を 保温温度を 加熱制御を 保温温度を 下回る温度 上回る温度 停止してい 加熱制御を 検知してい 実行してい を検知して を検知して る る る いる いる S41 加熱して いる S42 S34 急激に温 度が上昇 を検知し ている 急激に温 度が下降 を検知し ている 急激な温度 下降を検知 し,加熱し ている - - - - S22 E22→U3 S23 E23→U3 - - S22 E22→U3 S22 E22→U3 S22 E22→U3 S23 E23→U3 - - - - S23 E23→U3 E21 保温温度を下回る 温度を検知した U3 E22 保温温度を検知し た E23 保温温度を上回る 温度を検知した E31 加熱停止を制御 指示 S42 E42→U1 - - E32 加熱を制御指示 - - S41 E41→U1 E41 加熱した S32 E32→U4 - - - - - - - - - - S31 E31→U4 - - 制御が発振 [障害] 制御が発振 [障害] - - S31 E31→U4 - - S16 E14→U2 S16 E14→U2 - - 加熱を停止した - - S11 E11→U2 S12 E12→U2 S14 E15→U2 S14 E15→U2 Ei11 水が空になった S14 - S15 S16 - - - - - - - - E14 急激に温度が 上昇した E15 急激に温度が 下降した E24 急激な温度上昇を 検知した - - S33 E33→U1 E25 急激な温度下降を 検知した S34 E34→U1 - - E33 急激な温度上昇を により加熱停止を 指示 S42 E42→U1 - - E34 急激な温度下降に より加熱を指示 - - S41 E41→U1 - - - S25 E25→U3 U3 - - S13 E13→U2 S24 S24 E24→U3 E24→U3 U3 S32 E32→U4 S12 E12→U2 © Panasonic Corporation S33 急激な温度 上昇を検知 し,加熱を 停止してい る - - 保温温度を上回る 温度になった U4 S25 S21 E21→U3 E13 U2 S24 S21 E21→U3 保温温度になった - U2 S21 E21→U3 U2 E12 U1 E42 U2 - - 保温温度を下回る 温度になった U3 S16 保温温度を 保温温度範 保温温度を 加熱を停止 下回る温度 囲において,上回る温度 において水 している において水 水がない がない がない E11 U4 S14 U1 S15 - - - - S24 E24→U3 S25 E25→U3 S25 E25→U3 - - 拡張された 領域 7.6 非正常系分析マトリクスの作成 構成要素 状態番号 送り先 イベ 構成 ント 要素 番号 状態の説明 保温温度を 下回る温度 イベント の説明 E11 保温温度を下回る 温度になった U2 E12 保温温度になった E13 保温温度を上回る 温度になった E21 保温温度を下回る 温度を検知した U3 E22 保温温度を検知し た E23 保温温度を上回る 温度を検知した E31 加熱停止を制御 指示 U4 E32 加熱を制御指示 E41 加熱した U1 E42 U2 U3 U4 S11 加熱を停止した Ei11 水が空になった E14 急激に温度が 上昇した E15 急激に温度が 下降した ポット内の水 温度センサ 温度制御部 U1 S12 U2 S22 U3 S13 S21 保温温度 保温温度を 範囲の温度 上回る温度 S23 62 ヒータ S31 S32 S41 保温温度を 保温温度を 加熱制御を 保温温度を 下回る温度 上回る温度 停止してい 加熱制御を 検知してい 実行してい を検知して を検知して る る る いる いる S42 加熱して いる S11 E11→U2 S14 - S15 - 保温温度を 保温温度範 保温温度を 加熱を停止 下回る温度 囲において,上回る温度 において水 している において水 水がない がない がない 12 S25 S33 S34 急激に温 度が上昇 を検知し ている 急激に温 度が下降 を検知し ている 急激な温度 上昇を検知 し,加熱を 停止してい る 急激な温度 下降を検知 し,加熱し ている S32 E32→U4 - - - - S22 E22→U3 S23 E23→U3 - - S22 E22→U3 S22 E22→U3 S22 E22→U3 S23 E23→U3 - - - - S23 E23→U3 U3 温度制御部 - S33 急激な温度上昇を検知し, - 加熱を停止している S - - S16 E →U2 -14 - S14 E →U2 S 15 31 E31→- U4 14 E15→U2 急激な温度下降を検知し, - S -- 加熱している E →U - - S42 - E42→U1 S34 S41 E41→U1 E24 2 16 24 24 - - 24 3 24 S25 - - - - S31 E31→U4 24 3 S16 E14→U2 S16 E14→U2 - - - - - - S14 E15→U2 S14 E15→U2 - - - 制御が発振 - [障害] -- E S→U 24 3 E25→U3 U3 24 24 S25 S25 E25→U3 E25→U3 3 - - S33 E33→U1 - - 制御が発振 [障害] - - 制御が発振 [障害] - - E24 急激な温度上昇を 検知した - - E25 急激な温度下降を 検知した S34 E34→U1 E33 急激な温度上昇を により加熱停止を 指示 S42 E42→U1 - - E34 急激な温度下降に より加熱を指示 - - S41 E41→U1 © Panasonic Corporation S24 - - 急激な温度上昇を S 検知した E →U S 急激な温度下降を -E 25S S - 検知した E →U E →U - 12 U3 S21 E21→U3 - - - - S16 U2 S21 E21→U3 - - - S14 U2 S21 E21→U3 - - - - S13 E13→U2 U1 S15 - - S32 E32→U4 S12 E12→U2 ポット内の水 U4 7.7 障害シナリオの抽出 水が空に なった S11 ポット内の水 保温温度を 下回る温度 E i 11 63 S14 保温温度を下 回る温度にお いて水がない S21 温度センサ 温度制御部 保温温度を下 回る温度を検 知している communicating state machines としてのシナリオ記述 © Panasonic Corporation S16 E41/E14 保温温度を上 回る温度にお いて水がない 急激に温度が 上昇した E14/E24 S24 急激に温度が 上昇を検知し ている 加熱を停止した E42/E15 急激に温度が 下降した E15/E25 S25 急激に温度が 下降を検知し ている 急激な温度上昇を 急激な温度下降 検知した を検知した S33 S32 E25 E24/E33 急激な温度上 加熱制御が 昇を検知し, 加熱制御を 発振する 加熱を停止し 実行している ている S41 ヒータ 加熱した 加熱して いる 急激な温度上昇 により加熱停止 を指示 E24/E42 S42 加熱を停止 している 7.8 ESIMの特徴 障害分析手法(ESIM)の特長 1 障害に至る時間変化に対する影響を 陽に含むシナリオ過程を分析 理論的な動的モデルから意味のある 状態遷移モデルとして 非正常系分析マトリクスを作成 システム内の構成要素間の逸脱から波及する シナリオを確認 タイミングに依存する連鎖が抽出できることを確認 (道路灯で,安全障害と,省電力障害) © Panasonic Corporation 64 7.8 ESIMの特徴 65 障害分析手法(ESIM)の特長 2 複合的な要因が相互に影響する障害の分析 すべての非正常内部イベントを1つの非正常系分析マトリクスに記載 分析者のシステムに対する観察の視点から記述 ・ 逸脱した非正常状態と,逸脱した状態に遷移したという非正常イベント ・ イベントが発生しないというイベント,状態変化しないという状態 逸脱要因A 非正常イベント 非正常状態 非正常イベント 非正常状態 逸脱要因B 適用実験において,非正常系分析マトリクスの規模と分析時間が 実用的な範囲で実施できることを確認 © Panasonic Corporation 7.8 ESIMの特徴 66 障害分析手法(ESIM)の特長 3 アーキテクチャ設計段階で予見できなかった障害の抽出 逸脱要因の抽出過程でシステム構造図の構成要素が追加される 分析マトリクスの分析過程で新たな通信路が発見される EX. 通信の輻輳が発生し,直接通信していない先に,通信劣化のイベントを送る 逸脱により 通信輻輳を発生 逸脱を発見することにより,状態やイベントを追加していくため,その状態の 粒度が細分化し,逸脱については,より詳細分析を行い,早期に課題を発見 適用実験により,ESIMを使わなかった場合よりも,多くの障害シナリオを 発見できることを確認 © Panasonic Corporation 7.8 ESIMの特徴 障害分析手法(ESIM)の特長 4 部品故障や誤操作など広く影響要因を捉えた分析 製品だけでなく,人,環境,周辺ハードウェアなどを分析対象 初期の逸脱要因の抽出として、故障モードとガイドワードを,ハードウェア, 人の運用,環境などに拡張 分析対象に連続的な振る舞いと,離散的な振る舞いの特性が混在 同値分割法を用い,離散的な特性に統一した状態とイベントの記述を定義 記述事例や適用実験を含め,製品だけでなく広く分析対象とし, 分析が行えることを確認 © Panasonic Corporation 67 7.9 ESIMの特徴 68 障害分析 (逸脱から障害に至るシナリオの抽出) 対策案 (各品質項目の具体的振る舞い定義) 品質ポリシーの提示 障害分析 (対策の妥当性確認) 非機能要求の曖昧性を削減 ソフトウェア要求仕様書 © Panasonic Corporation ご清聴ありがとうございました