什么是软件FMEA
FMEA 是一种针对设计的分析活动,作用是对已有设计决策进行怀疑、攻击、分析和改善。确保问题尽可能在 设计阶段被发现和处理,而不要等到 实现完成后才暴露。
在ARP 4761 的图3 中,我们看到FMEA 主要出现在右侧V 模型 的上升沿,即 Item Verification 和System Verification ,系统安全性评估SSA 阶段。
以上图片来自于ARP4761标准。
在上图中,软件的FE 即Failure Effect 是FMEA 的输入,是Item 级别的FMEA 评估的工作,System 级别的FMEA 评估与Item 级别在方法上类似,但对象和范围有所不同。
FMEA 与正向设计不同,FMEA 是一个典型的思维发散过程,它的核心是尽可能完整和正确地归纳产品的 失效模式。它的关注重点不是产品“能干什么”,而是产品“ 能怎么坏掉”。
软件失效机理
在开展软件的FMEA之前,首先看一下软件的失效机理。
软件完成需求的功能,必须依靠数据的输入和输出这两个途径。
输入(Input ):操作人员的指令、人机界面的点击与按键、数据总线的输入、外部传感器的采集等等。这些在软件上,全都要以数据的形式输入软件,软件才会工作;没有这些输入数据,软件无法工作,也不会产生失效。
输出(Output ):软件接收到输入,通过一系列逻辑处理和运算,将输入数据转化为输出数据,送至某个目的地。这些目的地包括显示器、数据总线上的接收设备、声光电装置、控制硬件的电信 转换装置等等。
软件的功能,就是输入数据,通过功能处理,转化为输出数据的
Input →Process →Output :IPO 模型。
软件引起系统失效,是通过错误的输出Output 来对系统产生错误的控制。
但是软件的输出不会自己产生,必然有对应的输入Input 来激活它。
1. 异常的输入Input Data
2. 错误的处理Process
前者属于 错误的需求。后者属于对 需求错误的实现。
软件的FMEA有什么用呢?
需求错误的实现靠什么解决呢?就是我们熟悉的软件测试。
分析设计一个软件需求时,人们的思维总是倾向于以正常功能的实现逻辑来设计它,即所谓“正确的路有一条”。
这种情况下,异常输入对应的输出就有以下可能性(可见附例):
1. 输出恰好是可接受的,合理的;
2. 输出不可接受,但影响不算恶劣,属于可靠性失效;
3. 输出不可接受,且影响非常恶劣,属于安全性失效。
软件的FMEA 的作用就是通过对已有设计的检查分析,去归纳当前设计 可能会接收到的各种异常情况,并逐一分析评估,试图验证上述 3 种情况,并分别予以处理。
附例:
功能描述:温度控制功能——软件根据输入的“设备内部温度”取值,输出“控制指令”,驱动制冷系统以空气制冷或液体制冷方式进行降温。
I 输入:“设备内部温度”,有效值域[0,500 ℃] ;
P 处理:
“控制指令”初始值为-1 ,表示断电不输出制冷;
若“设备内部温度”取值为[0,200] ,软件输出“控制指令”取值为0 (空气制冷);
若“设备内部温度”取值为(200,500] ,软件输出“控制指令”取值为1 (液体制冷);
O 输出:“控制指令”,有效值域[ -1 , 0 , 1 ] 。
1.FMEA表明:输出恰好是可接受的,合理的
FM输入:“设备内部温度”取值为-100 ,小于下限;
E输出:“设备内部温度”取值为-100 时,软件输出“控制指令”取值为-1 。
A分析:需求遗漏了输入为-100 时应如何处理,当接收到“设备内部温度”取值为-100 的异常输入时,软件按现有需求处理逻辑,将输出-1 不制冷。
-100 表示很低的温度,确实无需制冷。这条FMEA分析结果表明:
是可接受的,合理的。应补充遗漏的需求。
2. FMEA表明:输出不可接受,且影响非常恶劣,属于安全性失效
FM 输入:“设备内部温度”初始取值即为1000 ,大于上限;
E 输出:“设备内部温度”取值为1000 时,软件输出“控制指令”取值为-1 。
A 分析:需求遗漏了输入为1000 时应如何处理,当接收到“设备内部温度”取值为1000 的异常输入时,软件按现有需求处理逻辑,将输出-1 不制冷。
1000 表示很高的温度,不制冷将造成事故隐患。 这条FMEA分析结果表明: 不可接受,影响非常恶劣,属于安全性失效。 应补充遗漏的需求。
3. FMEA表明:输出不可接受,但影响不算恶劣,属于可靠性失效
FM 输入:“设备内部温度”取值为400 ,然后每个周期减少50 ,一直下降到-10 ;
E 输出:“设备内部温度”取值为下降到-10 时,软件输出“控制指令”取值为0 。
A 分析:需求遗漏了输入为上述变化模式时的处理方式,当接收到“设备内部温度”取值为上述变化模式的异常输入时,软件按现有需求处理逻辑,将输出0 空气制冷。
-10 表示很低的温度,无需制冷,目前处理会造成设备磨损和浪费。 这条FMEA分析结果表明: 不可接受,但影响不算恶劣,属于可靠性失效。 应补充遗漏的需求。
FMEA是发散的过程,上述分析远未“充分”,可以想想,如果:
…
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!