FMEA的发展历程
FMEA技术于美国军方。
20世纪50年代初,美国Grumman公司第一次将FMEA的思想用于对螺旋桨飞机操作系统液压机构的改进过程的设计分析,并取得了很好的效果。
60年代中期,FMEA技术正式用于航天工业,并应用于1960年的阿波罗任务。
1976年,美国国防部颁布了FMEA的军用标准。
70年代末,FMEA技术进入汽车行业。
为什么要做软件FMEA(SFMEA)
SFMEA可以帮大家界定软件错误模式以及可能产生的影响。分析软件需求和架构设计的漏洞(针对功能安全方面)。SFMEA可以回答软件component不正常工作会有什么样的影响,并不是所有的软件component的异常都会导致错误的产生,好的设计可能已经解决掉这些错误。
但是SFMEA不是万能药,没办法解决您的所有问题。但是不做SFMEA分析,您不可能得到一个完美的安全设计。
可能大多数人认为SFMEA十分乏味和花费时间。但是越早发现需求和设计中的漏洞,可以帮您减少后续设计中的返工带来的时间和人力浪费。
软件的失效模式怎么定?
做FMEA的关键是确定失效模式,硬件器件的失效模式很好确定,如何确定软件的失效模式呢?有两个方法:
1. 根据IEEE Standard Classification for Software Anomalies
2. 根据HAZOP给出的关键词
数据相关的,我们可以考虑以下模式:
§ 数据采样错误
§ 数据冲突
§ 在短时间内收到/发送大量数据
§ 不正确的数据
行为/事件相关的:
§ 没有执行
§ 命令顺序不正确
§ 非法的命令
§ 时序错误
§ 安全状态转移错误
§ 在短时间内多个事件发生或者被执行
§ 错误的事件