1. 课程导入与全景认知

在汽车电子领域,软件定义汽车的趋势让整车软件规模迅速膨胀,而量产阶段的软件交付与版本管理,往往比研发阶段更容易失控。ST Stellar系列作为面向汽车域控制器与高性能MCU场景的重要平台,其量产软件不仅要满足功能安全与信息安全要求,还要在多个车型、多个ECU变体、多个供应商之间保持版本一致、可追溯、可回滚。本课程围绕"CI(持续集成)"与"版本治理"两条主线,帮助你把量产软件从"能编译出来"推进到"可稳定交付、可审计、可复现"。

一、什么是量产软件CI与版本治理

量产软件CI,指的是在软件进入量产维护阶段后,仍然保持自动化构建、自动化测试、自动化打包与自动化发布的能力。它与研发期CI最大的区别在于:输入不再是频繁变更的功能代码,而是受控的补丁、配置、标定数据和第三方库;输出不再是"能跑就行"的镜像,而是带有完整元数据、可追溯、可签署的正式交付物。

版本治理则是围绕这些交付物建立的一套规则与机制,包括版本号命名、分支策略、基线冻结、变更审批、发布记录、回滚策略以及物料清单(BOM)管理。CI是"生产线",版本治理是"质量与合规的守门人",两者缺一不可。

一句话理解:CI解决"怎么快速、稳定地做出来",版本治理解决"做出来的东西是谁的、能不能用、出了问题找谁"。

二、课程目标与范围

本课程的目标不是教你写某一段驱动代码,而是让你具备搭建和维护一条量产级软件交付流水线的能力。具体包括:

  • 理解ST Stellar平台量产软件的构成:应用层、AUTOSAR基础软件、MCAL、配置与标定数据、第三方安全库等;
  • 掌握CI流水线的设计方法:触发条件、构建环境、依赖管理、制品归档;
  • 掌握版本治理的核心机制:版本号规则、分支模型、基线管理、变更控制;
  • 能够设计可追溯的发布记录与回滚方案;
  • 能够识别并处理量产阶段常见的版本冲突、构建漂移与合规风险。

课程范围覆盖从代码提交到正式发布的全链路,但不深入具体芯片寄存器编程或某一功能模块的算法实现,这些内容属于其他专项课程。

三、整体学习路径

课程共30章,整体分为四个阶段:

  1. 认知与基础(第1~6章):建立全景认知,理解量产软件CI与版本治理的定义、目标、挑战,以及ST Stellar平台的软件架构与工具链。
  2. CI流水线构建(第7~15章):从构建环境、依赖管理、自动化测试、制品归档到流水线编排,逐步搭建可运行的CI系统。
  3. 版本治理机制(第16~24章):版本号规则、分支策略、基线冻结、变更审批、BOM管理、发布记录与回滚。
  4. 实战与复盘(第25~30章):综合案例、常见故障排查、审计准备与持续改进。

四、关键挑战

量产软件CI与版本治理面临的挑战,与互联网软件有本质不同:

  • 多源输入:代码来自内部团队、Tier1供应商、芯片原厂,版本节奏不一致;
  • 配置爆炸:同一份代码要适配不同车型、不同硬件变体,配置组合可能成百上千;
  • 合规压力:ISO 26262、ISO 21434、ASPICE等标准要求完整的追溯链;
  • 构建漂移:工具链版本、编译器选项、环境变量微小差异都可能导致二进制不一致;
  • 回滚困难:量产后的软件一旦出问题,回滚窗口极短,且涉及OTA与产线刷写。

常见误区:很多团队把CI当成"自动编译",把版本治理当成"打标签"。真正的量产级CI必须保证可复现,版本治理必须保证可追溯。缺少任何一项,审计时都会暴露问题。

五、全景关系图

下图展示了从代码与配置输入,到CI流水线处理,再到版本治理与最终交付的完整关系。它帮助你建立"输入—处理—治理—输出"的整体视角,后续章节将逐层展开。

ST Stellar 量产软件 CI 与版本治理全景 输入源 应用代码 / 补丁 AUTOSAR 配置 MCAL 与驱动 标定数据 / 变体 第三方安全库 CI 流水线 触发与拉取 构建与编译 自动化测试 制品打包 归档与签名 版本治理 版本号规则 分支与基线 变更审批 BOM 与追溯 发布记录 交付物与结果 可复现镜像 · 版本清单 · 测试报告 · 审计追溯链 · 回滚包 治理反馈 关键挑战 多源输入节奏不一致 · 配置组合爆炸 · 合规追溯压力 · 构建漂移 · 回滚窗口短

六、如何学习本课程

建议你按照"先建认知、再动手、后治理"的顺序推进。前6章不要急于操作,先把ST Stellar的软件构成和量产交付的约束理解清楚;进入CI流水线阶段后,尽量在真实或模拟环境中复现每一步,包括构建脚本、测试用例和归档规则;版本治理部分则需要结合你所在团队的实际情况,把版本号规则、分支模型和审批流程落到文档与工具中。

每章都会给出可参考的示例参数、配置片段或检查清单,这些内容属于教学示例,实际使用时需要根据项目约束调整。遇到与功能安全或信息安全相关的决策,务必以项目安全经理和合规团队的结论为准。

学习建议:准备一个练习仓库,把课程中的构建脚本、版本号规则和发布记录模板逐步填入。到课程结束时,你将得到一套可运行、可审计的量产软件交付框架雏形。

量产软件CI与版本治理不是一次性项目,而是贯穿软件全生命周期的持续能力。它要求工程、质量、配置管理和项目管理多方协同。接下来的章节将从ST Stellar的软件架构与工具链开始,逐步展开这条交付链的每一个环节。