機能安全規格(iec 61508)に準じた ソフトウェア …機能安全規格(iec...
TRANSCRIPT
Confidential Information SRATECH Laboratory Inc.
2011, All rights reserved.
機能安全規格(IEC 61508)に準じた
ソフトウェア安全度水準計算の一手法
2011年11月17日
SRATECH Lab 株式会社
E-mail : [email protected]
法政大学 理工学部
東京海洋大学大学院 海洋科学技術研究科
鳥取大学大学院 工学研究科
藤原 隆次 ○
木村 光宏
佐藤 吉信
山田 茂
Page: 2 SRATECH Laboratory Inc.
2011, All rights reserved. Confidential Information SRATECH Lab Template POT 1.0
アジェンダ
安全性と信頼性の関係
本研究の背景と目的
ソフトウェア安全度水準の計算方法
高頻度作動要求および連続モード
低頻度作動要求モード
数値例
まとめ
Page: 3 SRATECH Laboratory Inc.
2011, All rights reserved. Confidential Information SRATECH Lab Template POT 1.0
安全性と信頼性の関係
システムの安全性(JIS X 0134) システムが規定された条件の下で,人の生命,健康,財産,またはその環境を危険に曝す状態に移行しない期待度
システムの信頼性(JIS X 0014) 機能単位が,要求された機能を与えられた条件の下で,与えられた期間,稼動する能力
開発要求項目に安全性に関わる項目が欠落している場合,安全性が確保されたソフトウェアが構築されているとは言えない
※ ソフトウェア品質の構成要素である安全性と信頼性の関係は
安全性⊇信頼性
本提案の前提: 安全性に関わる開発要求項目が満足されたソフトウェア
Page: 4 SRATECH Laboratory Inc.
2011, All rights reserved. Confidential Information SRATECH Lab Template POT 1.0
ソフトウェアSIL評価の問題点(その1)
IEC 61508:SRS開発に適用した開発手法の数で評価
図 適用した開発手法の数に基づくSIL.
Page: 5 SRATECH Laboratory Inc.
2011, All rights reserved. Confidential Information SRATECH Lab Template POT 1.0
ソフトウェアSIL評価の問題点(その2)
例:同一ソフトウェア仕様を,性能の異なるハードウェアに実装
開発メンバ:類似製品の開発経験が有り,同じトレーニングを受講
開発プロセス
開発手法
機能安全規格に準じたソフトウェアSIL評価
製品A
製品B
Group-A
Group-B
両製品ともに,同じ安全度水準であり,
信頼性も同一レベルであると判断できる
Page: 6 SRATECH Laboratory Inc.
2011, All rights reserved. Confidential Information SRATECH Lab Template POT 1.0
その結果は・・・
Group Bの製品は約40%も多くフォールトが検出された
Group Bの製品は 出荷後もフォールト指摘が・・・
Page: 7 SRATECH Laboratory Inc.
2011, All rights reserved. Confidential Information SRATECH Lab Template POT 1.0
ソフトウェア開発の実態は・・・
開発プロセス
開発手法
機能安全規格に準じたソフトウェアSIL評価
製品A
製品B
Group-A
Group-B
開発者スキル
安全性・信頼性に大きく影響を及ぼしているのが現状
ソフトウェア安全度水準決定方法が定性的で曖昧
品質特性の一つとして,検証時に定量的な評価が必須
問題点
Page: 8 SRATECH Laboratory Inc.
2011, All rights reserved. Confidential Information SRATECH Lab Template POT 1.0
ソフトウェア信頼度成長モデルの適用すると・・・
非同次ポアソン過程(NHPP)に基づくSRGMは,ソフトウェア開発活動に広く成功裏に適用されている
NHPPが適用される理由: ⇒テスト中のフォールトは,非同次ポアソン過程に従うと 考える事ができるため
テスト対象ソフトウェア製品の現状,あるいはテスト中の重要な管理課題に対する判断情報が獲得可能: テスト終了/製品リリース時期 ソフトウェア製品中に潜在する残存フォールト数 任意期間のテストで,フォールトが検出される確率 任意期間のテストにより,検出されるフォールト数 任意期間のテストにより,新規にカバーされたテストパス中に潜在しているフォールト数 テスト活動の良し悪し
Page: 9 SRATECH Laboratory Inc.
2011, All rights reserved. Confidential Information SRATECH Lab Template POT 1.0
t
n
h(x)dxtH
tHn!
tHntN
0
expPr (n=0, 1, 2, … )
(t ≥0)
NHPPに基づくSRGMとは?
H(t) : テスト時間(0, t]で検出された総期待フォールト数
NHPPの平均値関数
h(t) : テスト時間tにおけるフォールト発見率
NHPPの強度関数
H(t)を変化させることで,殆どのテスト環境への適合が可能
Page: 10 SRATECH Laboratory Inc.
2011, All rights reserved. Confidential Information SRATECH Lab Template POT 1.0
NHPPに基づくSRGMのカバー範囲
表 既存のSRGMにより表現可能な確率分布
Page: 11 SRATECH Laboratory Inc.
2011, All rights reserved. Confidential Information SRATECH Lab Template POT 1.0
DFR:危険側故障比率
変換係数:データ収集単位を時間に変換するための値
厳しさ係数:テスト環境の厳しさを,実際のユーザ運用環境の
厳しさに変換するための値(SCと略す)
高頻度作動要求および連続モードでは・・・
IEC 61508-4:1時間当りの危険側の平均故障確率(PFH) ⇒ SRSにおける危険側故障率もしくは危険側故障強度
SRGMでは,瞬間MTBF(1 / h(t))あるいは累積MTBF(t / H(t))で表現が可能
PFH ≡ SIL𝐻 =DFR
MTBF ×変換係数 × SC
修復時間が平均故障時間と比較して無視できると仮定
Page: 12 SRATECH Laboratory Inc.
2011, All rights reserved. Confidential Information SRATECH Lab Template POT 1.0
低頻度作動要求モードでは・・・ (その1)
IEC 61508-4:作動要求当りの設計機能の平均失敗確率(PFD) ⇒ 非可用性(unavailability)と定義
信頼性が低い
故障が多い 可用性が低い =
ソフトウェアが規定の環境下で,意図する期間中に作動要求する設計機能におけるソフトウェア故障の発生確率を低くできれば,可用性は高くなる
作動要求当りの不信頼性と考えると,SRGMでは・・・
PFD ≡ SIL𝐿 = 1 −ソフトウェア信頼度
と考える事ができるので
Page: 13 SRATECH Laboratory Inc.
2011, All rights reserved. Confidential Information SRATECH Lab Template POT 1.0
低頻度作動要求モードでは・・・ (その2)
𝑅 𝑥 𝑡 ≡ Pr 𝑋𝑘 > 𝑥 𝑆𝑘−1 = 𝑡 = exp − 𝐻 𝑡 + 𝑥 − 𝐻 𝑡
𝑥 ≥ 0, 𝑡 ≥ 0
SIL𝐿 = 1 − exp −DFR × 𝐻 𝑡 + SC 𝑥 − 𝐻 𝑡
厳しさ係数(SC)およびDFRを考慮することにより
SC(x):テスト環境の厳しさを,xに基づく実際のユーザ運用
環境の厳しさに変換するための値
Page: 14 SRATECH Laboratory Inc.
2011, All rights reserved. Confidential Information SRATECH Lab Template POT 1.0
危険側故障比率(DFR)について
明確に危険側故障と安全側故障に区分可能: DFR = NDF / TNF.
安全側故障と判断不可能な故障に区分可能: DFR = UCF / (TNF + UCF).
3種類の故障区分が混在: DFR = (NDF + UCF) / (TNF + UCF).
DFR : 総故障数に対する危険側故障割合
NDF : 危険側故障と判断された故障数
TNF : テストにおいて検出された総故障数
UCF : 危険側もしくは安全側に明確に判断不可能な故障数
検出した故障の原因を調査することにより,安全側故障/危険側故障とどちらとも判断できない故障の3種類に区別できる
Page: 15 SRATECH Laboratory Inc.
2011, All rights reserved. Confidential Information SRATECH Lab Template POT 1.0
数値例
ソフトウェアの説明 ソフトウェア開発を支援するWEBアプリケーション
開発言語 : JAVAとVisual Basic
開発規模 : 約16KLOC(lines of code)
分析に用いたデータセット (tk, yk) (k = 1, 2, ・・・, 23; 0 < t1 < t2 < ・・・ < t23)
要求仕様に基づいて予め設計した
テストケースを順次テストしていく
形態で採取
Page: 16 SRATECH Laboratory Inc.
2011, All rights reserved. Confidential Information SRATECH Lab Template POT 1.0
高頻度作動要求および連続モードのソフトウェアSIL計算結果
SILH= 1 / (126.85×24)×DFR
= 3.28×10-6
※ DFR=0.01
SILH= 1 / (655.85×24)×DFR
= 6.36×10-7
※ DFR=0.01
SIL 1 SIL 2
Page: 17 SRATECH Laboratory Inc.
2011, All rights reserved. Confidential Information SRATECH Lab Template POT 1.0
低頻度作動要求モードのソフトウェアSIL計算結果
SILL= 1.49×10-2
SILL= 2.70×10-3
SIL 1 SIL 2
Page: 18 SRATECH Laboratory Inc.
2011, All rights reserved. Confidential Information SRATECH Lab Template POT 1.0
テスト中のソフトウェアSILの改善状況
1.0E-05
1.0E-04
1.0E-03
1.0E-02
1.0E-01
1.0E+00ソフトウェア安全度水準
分析実施日
1.0E-09
1.0E-08
1.0E-07
1.0E-06
1.0E-05
1.0E-04
ソフトウェア安全度水準
分析実施日
累積MTBF
瞬間MTBF
図 高頻度作動要求および連続モード 図 低頻度作動要求モード
Page: 19 SRATECH Laboratory Inc.
2011, All rights reserved. Confidential Information SRATECH Lab Template POT 1.0
まとめ
IEC 61508:高頻度作動要求および連続モード,および低頻度作動要求モードにおけるソフトウェアSIL計算方法を提案
テスト対象ソフトウェアの目標値に対する達成度として,情報を把握でき,テスト作業を制御し易くなる 品質/信頼性の情報
安全度水準の情報
高安全性・信頼性を確保したソフトウェア(SRS)開発が実現可能
⇒ 潜在フォールト“0件”,如いてはリコールの撲滅
今後の課題
繰り返し開発/インクリメンタル開発に適用可能な計算方法の確立
Page: 20 SRATECH Laboratory Inc.
2011, All rights reserved. Confidential Information SRATECH Lab Template POT 1.0
ご清聴有難う
ございました!!