03
软件FMEA的实施
软件FMEA它是一种引导式的分析方法,通常是在软件的概要设计完成后展开,并在其后的各开发阶段反复进行 。下图以最为普及的软件生命周期模型:瀑布模型,为例,说明实施软件FMEA与软件开发过程之间的关系 。
当软件的原型结构设计出来并且确定了每个模块的功能要求之后,就可以进行系统级软件 FMEA 。其目的是鉴定软件架构的质量属性,侧重于从系统的角度去分析各个子模块的输出和各模块之间的协调匹配,主要包括软件功能FMEA、软件接口FMEA 。
详细级软件FMEA可以确定模块设计是否达到了软件质量要求,识别具体的失效情况,确定失效的根本原因 。
因此,通常软件FMEA的实施过程其实主要分为如下步骤:
04
软件FMEA的案例
从系统级FMEA与系统的业务逻辑相关性比较高,相对来说详细级的FMEA与业务逻辑关联性不大,因此,我们以详细级软件FMEA为例来谈一个案例 。
常用的过程式设计
fun main()
{
task1()
{
fun1()
fun2()
。。。
funx()
}
task2()
。。。。
taskn()
}
这种结构,通常表达的设计意图说明:
main 是主入口函数,对下面所有任务级模块进行调度
task 是任务模块,具体处理一个业务功能点或者某个外部负载的控制,可以理解为一个模块;
fun 是最后代码实现函数
我们与软件架构分层对应可以看每个功能由一个main对应,模块由task对应,具体函数由fun来对应 。我们对模块1中来进行FMEA
一个软件函数,从通用性抽象而言也是输入与输出,还有函数内部的处理逻辑,所以分析时从下面几个通用的方面展开:
1、运行时不符合要求
2、输入不符合要求
3、输出不符合要求
在相关IEEE标准和GBJ标准中,对软件常见失效模式与原因有些说明,摘取其中部分:
这里以一个系统时钟系统为例,
把前段部分截取下来如下表,因为这里仅仅是个案例,选取各函数的,输入、函数内处理、输出 的异常,分别举了一个案例 。
大家可以结合软件常见失效模式,针对输入、输出、程序处理 每种可能的失效模式进行分析与识别,尽可能全的识别出对应的风险 。
风险识别后,对应的风险评估还有,应对措施的制定,相对比较简单了,所以,这里就不再累述 。
05
注意事项
1、软件设计,其实很难确切的说,哪一个是概要设计,哪一个是详细设计 。因为,下一层的设计对上一层级就是详细设计 。只能说取决于,系统层级的设计分配或者约定 。因此,做软件FMEA,务必要进行软件系统架构的设计与分层,否则直接到代码层级,是很难获得结构信息的 。
推荐阅读
- 用周易算命原来如此简单 易经如何算命
- 手机数据恢复软件免费版 360u盘数据恢复软件
- 永久免费正版cad类软件 好用的免费cad软件有哪些
- 保单号如何贷款,用车子的保单怎么贷款
- 如何开具技术服务费发票 服务业发票
- 买房利息计算器软件 买房贷款利息多少怎么计算
- 银行流水怎么看 买房贷款如何查询流水
- 公司app如何推广,推广app的三大营销策略
- 数码软件产品教程:opporeno5pro怎么互传opporeno5pro互传在哪里
- 微信好友找回方法,教你如何不花钱恢复微信好友