QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

我们应该把没有通过测试的故事回退到“开发”状态吗?

  • 2010-12-29
  • 本文字数:932 字

    阅读完需:约 3 分钟

Eric Willeke 在思考:任务看板上的那些没有通过测试的用户故事,该怎么处理呢?应该把它回退到“开发”状态,还是保留“测试中”的状态?他提出了一些不同的方案:

  • 一个方法是把开发和测试状态合并为“完成”状态,这样就不存在状态变化了。团队通过协作,分解出一系列小到能分配给单个开发人员 / 测试人员的子任务,但直到每个人都同意所有子任务都完成了,这个用户故事才算完成。
  • 另外一种方法是把故事移到测试状态,需要的话再移回去,如此反复。如果这就是你日常工作中的真实情况,那么你应该以此建立模型。
  • 还有一种方法是在某项上放置一个“缺陷”标志(或者缺陷卡片),但是在测试过程中当开发人员来帮忙修复缺陷的时候,标志还会一直放在那里,直到所有问题都被修复。如果这种情况更符合你的实际工作,你更应该以这种方式建立模型。

Thierry Henrio 提出了不同的方案,他从精益制造行业借鉴过来了“红卡箱”(red bins) 的概念:

我是这么做的: - 每个状态栏都准备一个专用的红卡箱, 放在看板的底部靠上方

  • 当某个状态栏的任务出现了问题,就把红卡箱移过去
  • 我们有 30 分钟解决问题,消灭红卡箱

这套机制对于鼓励团队高效处理问题还是很有效的。但当问题出现在上游工序,那么 30 分钟就不够了,这种方法的效果也大打折扣。

专用的红卡箱相比红色标志,有更加强烈的可视化效果。

Ron Jeffries 举了一个例子,解释了在任务板上,什么时候任务卡片应该流转回上游工序

[…] 如果任务又回到了原来的那位本应该搞定它的负责人的手上,那么把任务回退到前一步工序是一个不错的建立工作模型的方法。

不管你用哪种方法, Adam Sroka 认为你的看板应该反映现实情况,而不是一些理想状态:

我们要为正在采用的步骤建立模型,而不是去给设想中的步骤建模,这一观点是很微妙的,却也非常重要。对我来说,这是今年夏天我参加了 David 主讲的研讨会后,对看板最深刻的理解。可视化你在做的事情,随后,引入清晰的 WIP 限制,不断改进,等等。 对我而言,看板很适用。我也有 XP 的背景,我把流动可视化(visualizing flow) 看成一种委婉的引入改变的方式。我过去常常在第一天就想做很多改变,现在我意识到,我可以通过帮助大家诚实地面对他们正在做的事情来轻松地做到这一点。

查看英文原文: Should We Move a Failed Story Back?

2010-12-29 09:591429
用户头像

发布了 114 篇内容, 共 33.9 次阅读, 收获喜欢 2 次。

关注

评论

发布
暂无评论
发现更多内容

突破关系型数据库桎梏:云原生数据库中间件核心剖析

京东科技开发者

数据库 nosql 分布式系统

Python 语言基础变量的类型转换

HoneyMoose

Python 语言基础变量获得变量类型

HoneyMoose

实习记录-埋点测试

YUKI0506

《我想进大厂》之分布式锁夺命连环9问 | 大理版人在囧途

艾小仙

Java redis zookeeper 分布式锁

力扣(LeetCode)刷题,简单题(第19期)

不脱发的程序猿

程序员 LeetCode 28天写作 算法面经 3月日更

数据库定时备份linux篇

xiezhr

数据库 Linux Shell 数据备份 3月日更

【LeetCode】分割回文串 II Java题解

Albert

算法 LeetCode 28天写作

币管家量化交易软件开发|币管家量化交易APP系统开发

系统开发

职场里,对数据库要有敬畏之心!

Simon

MySQL 数据库

了解MySQL6种约束的不同和特点

华为云开发者联盟

MySQL 数据 约束 主键约束 自增长约束

纯干货 | 详解 HDFS 3.x 新特性-纠删码

五分钟学大数据

大数据 hdfs 28天写作 3月日更

平安智慧社区建设方案,平安小区的系统功能

13530558032

区块链电子合同应用落地--区块链电子合同签约

13530558032

如何招聘一名产品经理

马踏飞机747

互联网 产品经理 招聘 职场成长

2021最新分享:阿里内部总监手码的“Redis学习手册”风靡全网

比伯

Java 编程 程序员 架构 面试

LDAP身份认证管理最佳实践

龙归科技

服务器 ldap 客户端

亿级用户中心的设计与实践

vivo互联网技术

大数据 架构设计 数据安全

Python 中文编码

依旧廖凯

Python 28天写作 3月日更

Java程序员福利!2021年最新17套完整版一线大厂面试真题

Java架构追梦

Java 架构 面试 金三银四

JAVA已经呈饱和趋势了吗?

cdhqyj

Java 程序员 工作 IT

36 Kr | 打造企业统一数据安全入口,「图尔兹」想用新思路解决数据安全问题

BinTools图尔兹

数据库 sql 数据安全 权限 数据库管理工具

不吹不黑聊中台

Geek_dn82ci

云计算 中台 企业架构

高考大数据:全国31省高考难度,哪个才是地狱模式?

不脱发的程序猿

大数据 数据分析 28天写作 高考难度 3月日更

mongodb 源码实现系列 - Mongodb write写(增、删、改)模块设计与实现

杨亚洲(专注MongoDB及高性能中间件)

MySQL 数据库 mongodb 架构 分布式数据库mongodb

智能炒币机器人软件开发|智能炒币机器人APP系统开发

系统开发

2021网络系统流行架构

杨东冬

架构 网关 ebpf cilium envoy

关于MPI-IO,你该知道的

焱融科技

存储 HPC 焱融科技 文件存储 分布式存储

阿里P8大牛亲自讲解!难道Android真的凉了?3面直接拿到offer

欢喜学安卓

android 程序员 面试 移动开发

Python 语言基础变量定义和使用

HoneyMoose

LoadRunner测试中遇见的不可思议的问题及其解决方法

陈磊@Criss

七日更 28天写作 3月日更

我们应该把没有通过测试的故事回退到“开发”状态吗?_研发效能_Dan Puckett_InfoQ精选文章