点击“蓝字”关注我们
导读/ 为了确保汽车中安全攸关(safety critical)系统的安全性和可回溯性(Traceability),以及为了明确责任认定, 汽车软件行业如今普遍采用了ISO 26262和ASPICE等标准,作为软件开发的方法和流程。汽车行业的供应商们多数采用传统的“瀑布式流程”或“V型流程”来进行软件开发,并编制出大量的相关支持文档。这套流程不仅繁琐,而且越来越不适用于如今快速变化的市场需求。来源:知乎
前言
为了确保汽车中安全攸关(safety critical)系统的安全性和可回溯性(Traceability),以及为了明确责任认定, 汽车软件行业如今普遍采用了ISO 26262和ASPICE等标准,作为软件开发的方法和流程。汽车行业的供应商们多数采用传统的“瀑布式流程”或“V型流程”来进行软件开发,并编制出大量的相关支持文档。这套流程不仅繁琐,而且越来越不适用于如今快速变化的市场需求。
而开发汽车控制软件毫无疑问是一个“系统工程”。像目前的“V型流程”定义的那样,先“冻结”需求,再让软件和测试团队以此开始他们的工作,这在工程实际中其实是一件很难实现的事情。因为客户需求经常是在不断变化的,并且软件团队对需求最初的理解也很可能有误。
事实上,在每个汽车软件项目中,软件团队都必须经过多次“循环迭代”,才能编制出一个合格的软件系统,而工程师们宝贵的时间和资源往往在这些较长的循环迭代中被浪费。为了应对日具挑战的市场,越来越多的软件团队如今倾向于使用敏捷框架进行软件开发,并以此来缩短软件迭代的时间、在保证软件安全性和完备性的前提下,更好地实现跨职能团队之间的协作。
然而,对大多数汽车供应商而言,敏捷开发流程目前往往仅被应用于产品研发的阶段,而不是量产的整个过程,因为敏捷开发流程仍被认为“不能满足安全攸关软件开发的全部要求”。随着通用汽车和沃尔沃等主机厂要求供应商们根据主机厂制定的敏捷流程里程碑(Agile Cadence milestones)来发布软件,敏捷框架也越来越受到重视。但是业界对如何在安全攸关系统的开发中应用敏捷框架基本上还是一头雾水。
那么,应用敏捷框架也能做到与ASPICE合规吗?应用敏捷框架还能继续遵循ISO26262标准吗?
虽然应用ASPICE流程也并不能一定保证产品质量,但每种优质的质量流程(无论是敏捷流程还是传统的V型开发流程)都应该符合ASPICE和ISO 26262的精神和原则。
与任何其他流程一样,敏捷流程只有在开发团队正确应用的的前提下才能高效地发挥作用。在汽车行业生搬硬套其他行业的所谓“敏捷”流程并不一定能成功。把敏捷开发流程应用到汽车行业,则必须根据汽车行业强调安全性和责任性的特点进行修改和剪裁。