FMEA(Failure Mode and Effect Analysis)という品質改善などの利用される手法がある。この手法は、ハードウェアの品質改善としては確立されているが、ソフトウェアの品質改善に真に利用できているとは言いがたい状況です。
FMEA(Failure Mode and Effect Analysis)は、エラー要因を特定し、その発生確率、影響度から、必要な対策を実施する手法で、組込みシステム開発の信頼度向上、レビューなどで利用されている。
エラー要因は、ハードウェアの故障を想定することが一般的であり、対策はハードウェアの場合とソフトウェアの場合と大きく、2つに分類される。ソフトウェアの信頼性向上を考えると、ソフトウェア自身をエラー要因として考えることはできないかという疑問に遭遇すると思う。
それでは、ソフトウェアのエラー要因とは何であろうか?単純にバグと考えると、そのバグ自身の発生を抑止するためとなり、FMEAが利用できないのでは無いかと感じる人も多いだろう。
合同会社コンサランスでは、このようなソフトウェアのエラー要因を分析し、影響度が大きい場合、対策として下記の内容を実施するソフトウェアプロセスFMEAをコンサルティングしている。
ソフトウェアエラー要因の分析手法
・過去の障害分析によるバグの発生確率の算出
・ステークホルダー分析による障害影響度の算出
対策方法
・ソフトウェアのバグの混入を抑止する設計改善
・ソフトウェアのアサーションチェックなどの矛盾チェック(冗長処理)による
信頼度向上
・ソフトウェアの障害を未然防止するプロセス改善
FMEAの研修は、こちらを参照ください。