← 返回所有文章

好用户故事的INVEST测试:现场检查清单

By XNM Technologies · April 19, 2022 · 1 min read
好用户故事的INVEST测试:现场检查清单

INVEST是良好用户故事应满足的六条质量标准的首字母缩写:独立(Independent)、可协商(Negotiable)、有价值(Valuable)、可估算(Estimable)、小巧(Small)和可测试(Testable)。由Bill Wake提出,广泛用作Sprint前精化检查清单。以下介绍如何在实践中应用每个标准。

六条标准

  1. 独立(I):这个故事能否在不依赖其他未完成故事的情况下开发? 与其他故事有硬依赖的故事会在Sprint计划中产生排序问题,并使Backlog难以重新排序。失败信号:故事明确需要只有另一个故事完成后才存在的数据、UI组件或服务。改进方法:将依赖关系拆分为可先构建的共享基础故事,或者如果故事不可分割就合并它们。

  2. 可协商(N):这个故事是合同还是对话? 故事不是规格说明书,而是产品负责人与开发团队关于需要构建什么的对话占位符。失败信号:故事文本超过几行,没有留给团队询问"如何实现"的空间。改进方法:将细节移入验收标准,将故事本身保持在用户需求层面。

  3. 有价值(V):这个故事是否向用户交付价值? 故事应描述用户成果,而非实现步骤。失败信号:故事描述技术任务("创建数据库索引"、"重构身份验证模块"),没有与用户收益的关联。改进方法:将故事与用户成果挂钩。

  4. 可估算(E):开发团队能否估算完成这个故事的工作量? 如果团队无法估算一个故事,通常是因为缺少信息(领域知识、技术清晰度或两者都缺)。失败信号:团队在估算会议中一再跳过某故事,或给出宽度不可用的范围。改进方法:产品负责人和开发团队讨论直到团队有足够清晰度来估算。

  5. 小巧(S):这个故事能否在单个Sprint内完成? 一个Sprint内无法完成的故事是史诗——需要拆分的相关故事集合。失败信号:团队估算该故事超过Sprint速率的三分之一。改进方法:沿用户价值维度拆分(先基本功能,再增强版本),而非按实现层次拆分。

  6. 可测试(T):团队能否验证故事是否完成? 如果没有方法测试故事是否完成,就无法知道它何时完成。失败信号:故事描述不可测量的质量特性("系统应该快"、"界面应该简洁")。改进方法:添加将质量特性转化为可测量陈述的验收标准。

XNM协助公共部门及资本项目组织建立有效的Scrum实践,包括产品Backlog精化。欢迎联系XNM项目群与项目交付咨询团队,获取敏捷交付支持。