基于ASPICE与ISO 26262标准融合的汽车软件开发过程研究_aspice软件开发流程

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Golang全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Go语言开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip1024b (备注go)
img

正文

图片

图3 产品开发系统、软硬件要求

三、 Aspice和ISO 26262融合的开发研究

结合Aspice与ISO 26262功能安全的要求,将产品开发各阶段进行融合研究,并将各层面技术要求结合工程实践进行阐述,融合的产品开发框架如图4所示。各阶段开发工作描述如下。

图片

图4 Aspice与ISO26262相融合的产品开发框架

1)概念设计。概念设计阶段确定干系人要求,并确认这种要求可以被正确理解,同时对相关项目做出界定,辨识由相关项目中的功能异常表现导致的危险事项,提出避免危险事项出现和降低危险程度的安全目标并确定基于关联项目的可能危险事项,对关联项目做出评价。对重大危险事项实施系统性评价,并明确了安全目标以及ASIL级别。其中,危险辨识与危险性的评价可采用FMEA、HAZOP、头脑风暴等方式,而ASIL级别则按照严重程度、暴露机率与可控性等三种原因设定,三因素级别详见表1~表3。根据安全目标分解出相应ASIL等级的安全需求,此阶段输出相关项定义、HARA分析报告及干系人需求说明书,其中干系人需求说明书涵盖安全需求。干系人需求通过需求管理工具PTC Integrity进行需求记录,同时管理需求状态及实现情况。

表1 严重度等级

图片

表2 关于运行场景的暴露概率等级

图片

表3 可控性等级

图片

2)技术需求分析。技术需求分析阶段需根据干系人需求说明书进行需求分析,将干系人需求和安全需求分解成技术需求、定义安全机制,用于探测故障并防止或减轻出现在系统输出端的违反功能安全要求的失效,形成系统需求和建立系统架构。在系统需求分析过程中,对需求进行分类分析,明确功能需求、非功能需求和接口需求,组织专家评审并确定需求的正确性和可验证性;对系统需求的优先级进行分析,明确系统需求实现的顺序;同时建立客户需求和系统需求的双向追踪关系。系统架构建立后将安全要求分配给系统的各要素,进行需求安全等级分解,明确各条目需求的ASIL等级。同时对子系统进行安全分析,避免系统性失效。技术需求分析方法采用结构分析法,从系统顶层向下设计、逐层分解设计,明确系统各组件之间的程序流和数据流。此阶段输出系统需求、系统架构及系统独立失效分析报告。其中系统架构安全设计分析方法参见表4。架构设计采用ENTERPRISE ARCHITECT。

表4 系统架构设计分析

图片

3)软硬件需求分析。软硬件需求分析阶段将系统需求和安全需求分别转变为硬件需求、软件需求。在软件需求分析过程中,分析软件需求之间的依赖关系,保证需求的正确性、技术可行性及可验证性;同时构建与系统需求的一致性和可追溯性。根据相应的软硬件需求,开发满足软硬件安全要求和其他软硬件要求的软件架构设计和硬件架构设计,指导软硬件的详细设计开发,同时对软件架构进行安全分析。此阶段输出软件需求、硬件需求、软件架构及架构安全分析报告。其中软件架构和硬件架构设计原则见表5和表6。软硬件需求记录、分析及状态跟踪通过PTC Integrity。

表5 软件架构设计原则

图片

表6 硬件架构设计原则

图片

4)详细设计及代码开发。详细设计及代码开发阶段将根据软硬件需求进行硬件设计、软件详细设计、代码开发,其中代码设计遵循原则见表7。代码开发时利用模块化设计思路,将程序软件划分成独立子功能的模块,然后将模块集成形成整体软件程序,从而满足客户的需求。代码和模型开发采用MATLAB/Simulink。

表7 软件单元设计和实现的设计原则

图片

5)单元测试及硬件调试。定义软件单元测试规范,明确单元测试的技术和方法,制定单元测试验证计划模板及测试报告模板。软件单元测试包括静态测试和动态测试,静态测试主要是对代码静态分析和模型代码审核,代码静态分析借助常用工具,如Model Analysis、QAC。而模型代码审核依据则是由专家已编写的代码或模型Checklist。动态测试前为设计测试案例,即基于设计说明或设计模型期望输入输出信号,测试案例设计过程根据需求分析、等价类的生成和分析、边界值分析、经验等进行开展,测试类型主要包括基于需求的试验、接口测试、故障注入试验和背靠背的试验等,并在此阶段输出单元测试报告。硬件调试阶段包括对硬件模块实施调试,并按照调试清单进行调试,其中调试清单中的项目和模块均由硬件设计相关专家编写,最后产出硬件调试报告。

6)集成及测试验证。将各应用层和基础层模型及代码集成嵌入式软件,根据软件架构设计说明进行集成测试。集成测试通过后,根据软件需求开展嵌入式软件功能测试,输出嵌入式软件测试报告。根据系统需求编写系统测试用例,编制系统测试计划,通过HILL台架或者发动机试验台架开展系统测试,输出系统测试报告。根据客户需求编写整车验证用例,编制整车验证计划,利用整车资源开展整车验证,输出整车验证报告。其中测试验证方法见表8。

表8 测试验证

图片

四、结束语

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注Go)
img

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
1713205188071)]

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 20
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值