需求到用例和缺陷的追溯矩阵模板:字段与填写示例

需求追溯矩阵把需求、实现、用例和缺陷放进同一张表,让每条需求都能查到由谁实现、用什么用例验证、发现了哪些缺陷。本文提供可直接复制的空白表,逐字段说明含义与取值来源,区分必填与选填,并用一条需求从提出到缺陷关闭的完整示例演示填写方式,最后给出随需求变更维护矩阵的方法。



要点总览(TL;DR)


  • 追溯矩阵用一张主表串起需求、实现、用例、缺陷四段链路,每行对应一条需求或一个验收点,另配验收点拆分表和缺陷回填表。
  • 必填字段保证链路不断:需求编号、需求名称、验收标准、覆盖判断始终必填;实现工作项编号、用例编号、执行结果、缺陷编号按阶段补齐。
  • 填写示例以 REQ-0182 订单导出需求演示:实现工作项 TASK-0456、用例 TC-0311 与 TC-0312、缺陷 BUG-0774 修复回归后覆盖判断填“已覆盖”。
  • 维护围绕需求变更更新行、用例与缺陷及时回填、按覆盖判断筛出缺口定期核对三件事展开,编号直接引用各库既有编号。
  • 团队可先用表格跑通字段口径,再把需求、用例、缺陷作为关联对象放到同一工具中,减少重复维护。


可复制的需求追溯矩阵空白模板


追溯矩阵按“需求—实现—用例—缺陷”四段链路组织。主表每行对应一条需求或一个验收点,横向展开实现、验证和缺陷信息。下面三张表可以分别复制到表格工具或文档中使用,表头保持一致即可。


主追溯表(需求—实现—用例—缺陷)


需求编号 需求名称 验收标准 优先级 实现工作项编号 负责人 实现状态 用例编号 用例类型 执行结果 执行日期 缺陷编号 严重程度 缺陷状态 覆盖判断 备注

一条需求对应多个用例或多个缺陷时,有两种处理方式:在主表中用逗号分隔多个编号,或者拆成多行、每行一个用例或缺陷。需求验收点较多时,建议采用下面的验收点拆分表,主表只保留需求级汇总。


需求与验收点拆分行模板


需求编号 验收点编号 验收点描述 对应用例编号 验收点结果 关联缺陷编号 覆盖判断

缺陷回填行模板


缺陷编号 缺陷标题 关联需求编号 关联用例编号 严重程度 发现日期 当前状态 修复版本 回归结果 关闭日期


追溯矩阵各字段说明


字段口径统一,矩阵才能被产品、开发、测试不同角色一致填写。下表按需求侧、实现侧、验证侧、缺陷侧和覆盖判断分组,说明每个字段的含义、取值来源和主要填写角色。


分组 字段名 含义 取值来源 填写角色
需求侧 需求编号 需求的唯一标识,矩阵的主键 需求库中的既有编号,不另起编码 产品经理
需求侧 需求名称 需求的简短标题,便于人工识别 需求库标题 产品经理
需求侧 验收标准 判断需求是否完成的客观条件 需求描述中的验收条款 产品经理
需求侧 优先级 需求的相对重要程度 需求库优先级字段 产品经理
实现侧 实现工作项编号 承接该需求的任务、故事或开发单编号 项目管理工具中的工作项编号 开发负责人
实现侧 负责人 实现工作项的责任人 工作项指派字段 开发负责人
实现侧 实现状态 实现工作项的当前进度 工作项状态字段,如待开始、进行中、已完成 开发负责人
验证侧 用例编号 验证该需求的测试用例唯一标识 用例库中的既有编号 测试人员
验证侧 用例类型 用例的验证层次或类别 用例库分类,如功能、接口、性能、回归 测试人员
验证侧 执行结果 用例最近一次执行结论 测试执行记录,如通过、失败、阻塞、未执行 测试人员
验证侧 执行日期 用例最近一次执行的日期 测试执行记录时间 测试人员
缺陷侧 缺陷编号 执行失败或使用中发现的缺陷标识 缺陷库中的既有编号 测试人员
缺陷侧 严重程度 缺陷对业务或系统的影响等级 缺陷库严重程度字段 测试人员
缺陷侧 缺陷状态 缺陷当前处理阶段 缺陷库状态字段,如新建、修复中、待验证、已关闭 测试人员
缺陷侧 关联需求 缺陷所影响的需求编号 缺陷单中填写的关联需求 测试人员
覆盖判断 覆盖判断 该需求当前是否被有效验证 由用例结果与缺陷状态综合判定,取值见下文 测试负责人

覆盖判断建议使用固定取值,避免各人写法不一:已覆盖指该需求下所有验收点都有用例且执行通过;部分覆盖指部分验收点有用例或部分用例未通过;未覆盖指尚无对应用例;待验证指缺陷已修复但回归尚未执行。判定时以验收点为单位逐条核对,再汇总到需求级。



哪些字段必填、哪些可以选填


必填字段保证链路不断:从需求能追到实现,从实现能追到用例,从用例能追到缺陷。选填字段用于补充分析信息,按团队需要启用。下表给出对照。


字段 填写要求 理由或适用场景
需求编号 必填 矩阵主键,缺失则整行无法定位
需求名称 必填 便于评审和核对时快速识别
验收标准 必填 覆盖判断的依据,没有验收标准就无法判断是否覆盖
实现工作项编号 必填(进入开发后) 建立需求到实现的链路
用例编号 必填(用例设计完成后) 建立需求到验证的链路
执行结果 必填(测试执行后) 覆盖判断的直接输入
缺陷编号 必填(发现缺陷时) 建立验证到缺陷的链路
覆盖判断 必填 矩阵的核心结论字段
优先级 选填 用于排期和缺口排序时建议填写
负责人 选填 需要按人统计实现进度时填写
实现状态 选填 需要跟踪开发进度时填写
用例类型 选填 需要区分功能、接口、性能等验证层次时填写
执行日期 选填 需要判断验证时效时填写
严重程度 选填 需要按缺陷影响排序时填写
缺陷状态 选填 需要跟踪缺陷闭环时填写,建议与缺陷库保持一致
备注 选填 记录例外情况、阻塞原因等

填写要求可以随阶段放宽,避免在信息尚不完整时强行填满:需求评审前,至少填写需求编号、需求名称、验收标准和优先级;用例设计前,补齐实现工作项编号和用例编号;测试执行后,填写执行结果和执行日期;缺陷产生后,回填缺陷编号、严重程度和状态;需求关闭前,覆盖判断必须为已覆盖或经评审确认的例外。分阶段规则的作用是让矩阵在早期保持轻量,在交付前保持完整。



完整填写示例:一条需求从提出到缺陷关闭


以下示例为演示数据,用于说明字段之间的联动关系。假设某系统需要支持“订单导出”,产品经理提出需求,开发完成实现,测试设计用例并执行,过程中发现一个缺陷,修复后回归关闭。


需求侧:需求编号 REQ-0182,需求名称“订单列表支持按时间范围导出”,验收标准为“选择起止日期后可导出对应订单,导出文件字段与列表一致,单次导出不超过 5 万条”,优先级为高。


实现侧:实现工作项编号 TASK-0456,负责人为开发人员甲,实现状态为已完成。


验证侧:用例编号 TC-0311,类型为功能,执行结果为失败,执行日期为 6 月 12 日;补充用例 TC-0312 验证导出条数上限,执行结果为通过。


缺陷侧:执行 TC-0311 时发现导出文件缺少“下单渠道”字段,缺陷编号 BUG-0774,严重程度为严重,状态为已关闭,关联需求 REQ-0182。开发修复后,测试于 6 月 15 日回归通过,缺陷关闭。


覆盖判断写法:该需求有两个验收点,导出字段一致性和导出条数上限。前者由 TC-0311 验证,缺陷修复后回归通过;后者由 TC-0312 验证通过。因此覆盖判断填写“已覆盖”,备注中注明“BUG-0774 已修复并回归通过”。如果缺陷尚未关闭,覆盖判断应填写“部分覆盖”,备注写明“等待 BUG-0774 回归”。


需求编号 需求名称 验收标准 优先级 实现工作项编号 负责人 实现状态 用例编号 用例类型 执行结果 执行日期 缺陷编号 严重程度 缺陷状态 覆盖判断 备注
REQ-0182 订单列表支持按时间范围导出 选择起止日期可导出对应订单;导出字段与列表一致;单次不超过 5 万条 高 TASK-0456 开发甲 已完成 TC-0311、TC-0312 功能 TC-0311 失败后回归通过;TC-0312 通过 6 月 15 日 BUG-0774 严重 已关闭 已覆盖 BUG-0774 已修复并回归通过


矩阵的调整与日常维护方法


矩阵失效通常来自三种情况:需求改了但行没更新,用例和缺陷新增后没有回填,覆盖缺口长期无人核对。维护动作围绕这三类问题展开。


需求变更时的行更新规则


需求内容或验收标准发生变化时,先更新需求侧字段,再沿实现工作项和用例检查影响范围:验收标准新增的,补充对应用例行;验收标准删除的,将相关用例标记为失效并在备注说明;需求拆分或合并的,保留原需求编号并在备注中记录新编号,避免历史追溯断链。变更后覆盖判断应重置为“待验证”,直到新用例执行完成。


新增用例与缺陷的回填时机


用例设计完成后即回填用例编号,不必等到执行;测试执行当天回填执行结果和日期;缺陷创建后回填缺陷编号、严重程度和状态,缺陷关闭并回归通过后更新状态和备注。回填时机与测试活动同步,可以避免在版本发布前集中补表。


定期核对覆盖缺口的方法


建议每个迭代结束前和版本发布前各核对一次。核对时按覆盖判断字段筛选出“未覆盖”“部分覆盖”“待验证”的行,逐条确认原因:是用例缺失、执行未完成,还是缺陷未关闭。对确认的缺口指定责任人和处理时间,处理后更新覆盖判断。核对节奏可按团队交付频率调整,交付频繁时缩短间隔。


矩阵与需求库、用例库、缺陷库的同步方式


矩阵中的编号应直接引用各库的既有编号,不另建一套编码。同步方式有两种:手工维护时,以需求库为源头,每次需求评审后同步更新矩阵;使用工具承载时,可以把需求、用例、缺陷作为关联对象放在同一处,矩阵由关联关系生成或导出。ONES 的 ALM 方案以数字线程贯通需求、开发、测试、变更与发布,把测试用例、缺陷、版本和发布过程关联到需求链路中,需求变化时可以沿关联关系分析受影响的任务、测试和交付内容,并保留过程追踪依据(依据官方方案资料,具体字段与配置以实际部署版本为准)。团队可以先用手工表格跑通字段口径,再迁移到工具中减少重复维护。



常见问题


需求拆成多个验收点时,主表和验收点拆分表怎么分工?


主表保留需求级汇总,一行对应一条需求;验收点拆分表按验收点逐行展开,记录每个验收点对应的用例、结果和缺陷。覆盖判断先在拆分表按验收点逐条判定,再汇总到主表。这样需求数量多时主表不会过度膨胀,核对缺口时又能定位到具体验收点。


一条需求对应多个用例或多个缺陷,矩阵里怎么记录?


两种方式都可行:在主表单元格内用逗号分隔多个编号,或者拆成多行、每行一个用例或缺陷。用例和缺陷数量少、以需求为核对单位时用前者;需要按用例或缺陷单独跟踪状态时用后者。无论选哪种,同一张表内保持统一,避免同一列混用两种写法。


缺陷修复后回归未执行,覆盖判断应该填什么?


填“待验证”。覆盖判断的“已覆盖”要求该需求下所有验收点都有用例且执行通过,缺陷修复但回归尚未执行时,验证链路还没有闭合。等回归通过后再改为“已覆盖”,并在备注中记录缺陷编号和回归日期;回归失败则回到“部分覆盖”,继续跟踪。


矩阵用表格手工维护,什么时候适合迁移到工具里?


当需求变更频繁、用例和缺陷数量增长,手工同步开始出现漏填或编号对不上时,可以考虑迁移。迁移的前提是字段口径已经跑通,各库编号规则稳定。使用工具承载时,可以把需求、用例、缺陷作为关联对象放在同一处,矩阵由关联关系生成或导出。ONES 的 ALM 方案以数字线程贯通需求、开发、测试、变更与发布,把测试用例、缺陷、版本和发布过程关联到需求链路中,需求变化时可以沿关联关系分析受影响的任务、测试和交付内容(依据官方方案资料,具体字段与配置以实际部署版本为准)。


需求拆分或合并后,历史追溯记录怎么保留?


保留原需求编号,在备注中记录新编号和拆分或合并的日期,原行不删除。新需求行重新建立实现、用例和缺陷关联,覆盖判断重置为“待验证”。这样按旧编号仍能查到当时的验证记录,按新编号能跟踪当前进展,历史链路不会断。