ISO26262基本概念
ISO 26262《道路车辆功能安全》国际标准是针对总重不超过3.5吨八座乘用车,以安全相关电子电气系统的特点所制定的功能安全标准,基于IEC 61508《安全相关电气/电子/可编程电子系统功能安全》制定,在2011年11月15日正式发布。
安全:不存在不可接受的风险
功能安全:不存在不可接受的由E/E系统故障造成的风险
ISO26262车辆安全完整性等级
定义了汽车安全完整性等级(ASIL)概念,A-D四级
影响ASIL等级的三个基本要素:
严重度(Severity)暴露率(Exposure)可控性(Controllability)
ASIL安全等级划分包括如下步骤:
1)根据预想架构、功能概念、操作模式和系统状态等确定安全事件;
2)危险分析和风险评估,初步确定ASIL安全等级;
3)逐级分解安全要求和安全等级,ASIL安全级别划分和ASIL安全级别逐层分解两个过程交替进行,直至抵达无法进一步分解 零件或者子系统;
4)最后用几个原则去检查等级分配的合理性,包括因素共存原则、相关失效分析和安全分析。
划分和分解安全等级的目的
给汽车上的全部电子电气系统划分安全等级,明确每个系统,每个子系统,每个零件的安全目标,制定执行明确的安全措施,一方面使相关人员和部门统一认识,避免因为目标含混不清,职责不明确造成的风险;另一方面,避免在同一个安全要素上重复投入资源,出现分布不均而出现的资源浪费,一个风险点有几个安全保障,而另一个故障点却没有人意识到。通过系统性,全生命周期的思考方式,实现全面的规划安全功能的目的
ISO26262中定义的软件测试
目的
证明软件实现软件单元/架构设计规范
证明被测软件不包含非预期功能
ISO26262中定义的单元测试输入
单元测试方法
按照下表对单元测试方法的推荐以证明软件单元;
Ø 遵守软件单元设计规范
Ø 符合硬件-软件接口规范要求
Ø 鲁棒性,例:不存在不可达代码,错误监测和错误处理机制的有效性
Ø 足够的资源以支撑其功能
Ø 实现指定功能
Ø 不包含非预期功能
Methods for software unit testin
测试用例设计
依据下表中罗列的方法进行单元测试用例设计;
Ø 所有测试用例需要通过分析需求实现
Ø 分析接口(输入输出),利用等价类划分及及边界值法确定测试数据
单元级结构覆盖要求
下表中定义了软件单元级结构覆盖度量
Ø 评估测试用例完整性
Ø 证明无非预期功能
集成测试方法
按照下表中对集成测试方法的推荐以证明软件模块
Ø 依据软件模块规范开展测试
Ø 符合硬件-软件接口规范要求(依据ISO 26262-5:2011.6.4.10)
Ø 确保被测模块的功能完备性、防差错性以及故障处理功能
Ø 考虑被测模块对内存外存的占用情况,模块执行时间
Ø 测试模型与代码的一致性
总结--测试流程
Ø 测试需求分析阶段:阅读需求,理解需求,主要就是对业务的学习,分析需求点,参与需求评审会议
Ø 测试计划阶段:主要任务就是编写测试计划,参考软件需求规格说明书,项目总体计划,内容包括测试范围(来自需求文档),进度安排,人力物力的分配,整体测试策略的制定。风险评估与规避措施有一个制定。
Ø 测试设计阶段:主要是编写测试用例,会参考需求文档(原型图),概要设计,详细设计等文档,用例编写完成之后会进行评审。
Ø 测试执行阶段:搭建环境,执行冒烟测试(预测试)-然后进入正式测试,bug管理直到测试结束
Ø 测试评估阶段:出测试报告,确认是否可以上线