介绍自己
我是汽车电子行业的嵌入式软件工程师,负责方向盘控制模块的软件开发,工作覆盖 CAN/LIN 总线通信、UDS 诊断、底层驱动和基于 RTOS 的任务调度设计。同时我承担 ASPICE SWE.6 软件合格性测试工作,目前正在把 ISO/SAE 21434 和 PAS 8475 网络安全标准融合进现有的开发和验证流程。
我对 TraeCode 的愿景
一、希望新增什么功能:ASPICE 证据链的自动生成与维护
ASPICE 评估看的不是"有没有文档",而是证据链:每条软件需求要能向下追溯到架构设计、详细设计、代码、测试用例和测试结果;反过来,每个测试失败要能向上定位到它验证的是哪条需求。这条链就是所谓的双向可追溯性和一致性分析,也是我们每次评估准备中最重的活。
我希望 TraeCode 能提供一条"证据链流水线":
-
需求结构化导入:解析软件需求规格(我的需求大多是结构化表格:信号名、类型、值域、失效模式),为每条需求分配唯一 ID 并入库。
-
需求到代码的自动映射:静态扫描工程源码,结合函数命名、注释里的需求标签、调用链分析,建立"需求 ID ↔ 设计函数 ↔ 代码文件"的映射表。
-
设计文档自动生成(SWE.3):按需求映射结果生成软件详细设计文档——模块接口定义、状态机、从 main() 入口出发的完整生命周期 UML 时序图。关键是只画真实存在的调用路径:结合 RTOS 任务配置表和中断向量表做静态调用链分析,而不是靠 AI 想象(我实际遇到过 AI 把从未被调用的函数画进时序图,还得我逐行对照源码纠错)。
-
测试用例自动生成(SWE.4/SWE.6):依据需求中的值域自动推导等价类和边界值用例,输出"用例编号 / 前置条件 / 步骤 / 预期结果"的标准格式;网络安全相关需求(基于 ISO 21434 / PAS 8475 派生的)单独打标,生成对应的负向用例。
-
覆盖缺口分析:自动标出三类缺口——没有对应测试用例的需求、没有对应代码的设计项、没有向上追溯到需求的代码变更。这三张"缺口清单"现在全靠人工在 Excel 里对,几百条需求的项目每次需求变更后要核对好几天,还经常漏。
为什么需要:这套东西在汽车行业是硬性交付物,不产生新功能价值,但决定项目能不能过评估、能不能拿定点。它是纯规则驱动的机械劳动,恰恰是最该被自动化、也最容易被 AI 做对的部分——前提是 AI 只基于真实工程信息生成,不编造。
二、希望优化什么场景:文档生成与代码变更的同步
当前卡点:详细设计文档是改代码时最容易腐烂的资产。代码改了三版,文档还停在第一版,评估前两周突击补文档、补测试记录,质量和真实性都打折扣。而且现有 AI 工具生成嵌入式设计文档时缺乏工程上下文(自研 RTOS、国产冷门 MCU 的外设寄存器),产出要么泛泛而谈,要么包含工程里根本不存在的机制,我需要花更多时间去校验它。
我希望的样子:当我 commit 一个代码变更时,TraeCode 自动判断哪些设计章节、哪些测试用例受到了影响,给出"待同步清单"并直接生成更新草稿;UML 图、状态机随代码 diff 增量更新,而不是每次从零重画。
三、希望如何融入工作流
-
与 Git 深度绑定:文档版本与代码版本(commit/分支)关联,评估时能直接回答"这个版本的软件对应哪版设计和哪批测试记录"。
-
测试执行侧打通:生成的用例能导出为 CANoe/CAPL 脚本(总线诊断类)和 Ceedling/Unity 用例(单元测试类),直接进入现有回归,而不是停在 Word 里。回归结果再回写追溯矩阵,形成"用例 → 结果 → 需求关闭"的闭环。
-
对接需求管理工具:追溯矩阵能与 Polarion/DOORS 同步,至少支持标准格式导入导出。
-
评估前自查:按 ASPICE 各过程域的基线实践(BP)清单自动自查证据完整性,出一份"离可评估状态还差什么"的差距报告——这一步能替我们省掉大量外部咨询顾问的预评估费用。
四、我希望它以什么形态出现
-
多步智能体流程为主:需求导入 → 工程静态分析 → 生成设计草稿与测试用例 → 我人工评审确认 → 定稿入库。"生成 → 人审 → 落库"的节奏比一步到位更符合车规对可追溯、可复核的要求。
-
常驻面板:追溯矩阵可视化面板,需求 / 设计 / 代码 / 测试四列联动,点击任意条目跳转到对应源码行或文档段落;覆盖缺口用红色标出。
-
自动触发:commit / merge request 时自动检查文档同步状态与测试覆盖缺口,未同步的变更在 CI 里给出提示。
-
希望打通:Keil MDK / IAR 工程、Git、CANoe(CAPL)、Ceedling/Unity、Polarion/DOORS、Jira/禅道。