入局「软件定义汽车」,你真的准备好了吗?( 二 )


结合国情理解「软件定义汽车」这一转变给行业带来的影响 , 我们可以参考头豹研究院《汽车软件行业概览:软件定义汽车》报告:这是覆盖「汽车的定义、架构、开发、验证、销售、服务等全生命周期」的颠覆性变革 。
2)历史vs当下
事实上 , 随着「软件定义汽车」的演进 , 汽车软件产业链金字塔型结构 , 即「主机厂-Tier1-Tier2-Tier3」 , 也已发生改变 。
在过去传统汽车供应链中 , Tier1为汽车软硬件集成负全责 , 如电装之于丰田、德尔福之于通用、伟世通之于福特 。
而当下 , Tier1不再是OEM软硬件的来源 , 取而代之 , OEM可能会从第三方软件、OEM本身软件、软件栈工程集成服务商、面向OEM的硬件提供商、硬件工程服务商、EMS服务商等多个来源获取对应的软硬件组件进行集成 。
在这样一个新的产业链关系中 , 甲乙双方的合作模式如何?
理想的开发状态当然是甲方和乙方基于统一标准和工具链 , 如双方PM、程序员、测试均在同一套软件平台进行需求管理、开发与评审 。
但目前 , 甚至很少企业能做到甲乙双方PM针对Jira上的一个story跟踪状态;双方需求人员基于同一个Polarion里的工作项进行评审;双方程序员基于极狐GitLab进行软件研发等 , 更遑论在同一个平台进行研发管理 。
要实现理想状态 , 不可能一蹴而就 。 现阶段 , 「软件定义汽车」对汽车软件链条中的不同角色都提出了新要求:
更快捷
对于项目的开发和管理人员而言 , 这或许意味着需要通过敏捷方法推动持续软件开发 , 比如采用目前在互联网大规模落地实践、并已证明有效的DevOps方法 , 使汽车制造商能够在车辆出厂后持续将软件高效地部署到车辆上 。
更可控
对于定义业务功能的产品经理和搭建架构的架构师而言 , 车辆软件和电气电子架构转向更模块化的面向服务架构(SOA)模型 , 使软件组件更易以构建块格式重用 。 随着软件复杂度提升 , 对于代码追溯和版本管理的可控性要求也进一步提升 。
更安全
对于网络安全专家和测试验证团队而言 , 为了避免、检测和防御网络攻击 , 安全策略变得更加关键 。 相较于事后补救 , 更需要防患于未然 , 提前实施安全测试 , 软件安全左移 , 在早期将安全要素融入到设计、开发、测试和部署的每个阶段 。
汽车行业软件研发三大挑战
面对「更快捷」、「更可控」、「更安全」的行业要求 , 汽车行业软件研发链条上下游面临着诸多挑战 , 聚焦软件研发方面包括:
1)缺乏研发运维一体化标准平台
软件研发过程中 , 需求管理、源代码托管、CI/CD、安全扫描等 , 都有对应的工具平台 , 若缺乏有效整合 , 研发团队面对的将是许多复杂的工具 , 研发流程节点之间难以流转;且工具之间数据结构不同 , API丰富程度不一 , 集成难度大 , 团队需要花更多时间和精力在工具细节上 , 难以实现敏捷 。
2)缺乏确保标准合规的手段和机制
尽管软件架构方面有了AUTOSAR(汽车开放系统架构)、代码质量方面有了MISRA(汽车工业软件可靠性联会)、开发流程方面有了ASPICE(汽车产业软件流程改进和能力测定标准)和规模化敏捷等标准 , 但具体落地中 , 仍然没有形成有效的机制强制标准合规 。 例如:只有评审通过的代码才能上传、不合规问题及时检出报告、支持版本控制、确保可追溯性等 , 这些机制的缺失 , 可能最终导致整个项目失控 。
3)复杂度和性能要求进一步提升
涉及更多兼容、安全要素的行业标准正在制定或刚刚发布 , 但在落地层面仍然存在很多不确定性 。 例如2021年8月发布了ISO21434 , 但实际上的产品架构设计、代码实现、验证检测方面都还处于初级阶段 , 缺少安全保障很可能酿成严重事故 。