双周迭代死亡行军怎么破?

2024-01-10 11:20

本文主要是介绍双周迭代死亡行军怎么破?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

由于某些不恰当的实施方式,敏捷导入有时在企业里处于「两头不讨好」的尴尬状态:业务认为敏捷是造成低质量交付的推手,而研发觉得敏捷是管理者压榨团队的帮凶。

通过分析众多敏捷实施失败案例,我们发现大多数情况下,版本迭代节奏不匹配组织和业务特点是导致失败的根本原因之一。本文将结合 Agilean 咨询团队的实践经验,推荐一种适合复杂业务场景(如金融科技)的版本迭代节奏:RISE(Release-Iteration Schedule for Enterprise)。

介绍 RISE 之前,让我们先看一下,在复杂的业务场景中,传统的双周迭代会遇到什么问题。

1

双周迭代?还是死亡行军?

我们曾对一个采用「双周迭代」的研发团队进行了访谈:

双周迭代,指每两周进行一次发布。这意味着从业务侧承接过来的需求,要在1-2天内完成需求分析和澄清。但对很多复杂业务场景来说,需求澄清通常要花2-3天才能真正完成。现实中很多的交付质量不合格,就是由需求不清晰这个源头问题造成的。

交付质量差,会促使人们不断将「功能移交测试时间」前移,比如要求迭代第二周开始之前提测,以避免上线风险。于是,开发同学必须加班加点,自测、联调也只能对付了事,上线时候还是一堆的故障。

最后,他对当前状态进行了这样的评价:

做软件研发,大脑是我们最重要的生产工具。但团队一直处于又紧张又疲惫的状态,别说高质量交付了,连最基本的质量都难以保证。这不是在做迭代,而是连滚带爬,「死亡行军」

在调侃的语气中,我们仍能感受到满满的无奈和倦意。仔细分析上面状况的产生,能发现两个主要原因:

  • 团队将一个版本的所有活动,都压缩进入了同一个迭代。对于一些复杂业务和复杂系统,这样做往往导致时间过于紧张

  • 迭代内部以「一周开发,一周测试」的方式运行,这种情况下,迭代变成了小瀑布

2

解决思路:用流式开发破解小瀑布

如何发现「小瀑布」?来瞧瞧下面这个看板:

上图中,团队所有事项都集中在开发区域。有些卡片进入了开发的「已完成」列,没有任何卡片进入「测试」。看板呈现了浪涌式流动——这就是团队以小瀑布方式运行的表现特征(参考下图)。

在小瀑布模式下,为了避免资源浪费,往往将迭代时间按流程切开,比如上半周开发,下半周测试。

听起来很有「节奏」,对不对?问题来了,测试在上半周的时间里,要做些什么?在现实中,上半周往往用来测上一个迭代的内容,于是,团队中开发测试的协作被强行割裂(如下图)。

小瀑布模式的核心问题在于,「开发完成」并不是真的完成,还属于WIP(在制品),并不能产生真正的质量反馈。开发完成的需求,在测试时可能暴露出大量缺陷,造成返工。迭代管理的核心目标是降低交付风险,确保质量可控,但小瀑布模式显然无法有效实现这点。

如何破解小瀑布?我们通常建议团队采用「流式开发」。即以小颗粒度需求(如用户故事)为单位,让需求像水一样不断向下个阶段流动,从而快速获取反馈,真正达到利用迭代管理降低风险的目标(如下图)。 

以「流式开发」运行的迭代,看板往往呈现下面的变化形式:

诚然,流式开发对需求拆分提出了更高要求,需求要被拆解成可测试可验收的细小单元。其实,这是敏捷产品经理和敏捷教练需要具备的硬核技能,也是敏捷需求管理的基础。

另外,为了减少开发测试工作的并发打扰,开发人员要采取开发自冒烟、代码评审等质量措施,来保证需求的顺畅流动(这方面的详细内容可以参见FLEET的「润滑」原则)。

3

解决思路:将版本和迭代解耦

针对复杂业务研发场景,RISE 倡导在流式开发基础上,将版本和迭代解耦。延长版本存续时间,将一个版本分成需求迭代和研发迭代,前一个版本的研发迭代和后一个版本的需求迭代并行。

上面描述的版本迭代节奏,使团队可以实现需求澄清前置,即由产品经理提前一个迭代与业务人员进行需求细化。在研发迭代开始时,团队拿着已经充分细化澄清的需求,直接投入开发工作。

对于发布流程复杂、生产质量要求高的情况,RISE 版本迭代节奏同时提倡,通过回归测试和版本发布后置进行优化。即在研发迭代之后,再进行回归测试和版本发布活动。这样做的前提是「需求澄清前置、流式开发、质量内建」等实践已经建立,移交质量能够得到充分保障,因此,回归测试阶段发现缺陷的概率变得很低。

综合前面描述,下图为详细到每日安排的 RISE版本迭代日历

按上面迭代日历所示,对研发团队来说,在一个研发迭代内将拥有:

  •  已经得到充分澄清的需求

  • 8 天的开发时间

  • 6 天的测试时间

  • 2 天的缺陷修复时间

这样的时间分布,对于以双周迭代运行的团队来说,保障交付质量的各阶段时间已经相当充足了。并且,由于整个开发过程中并行事项较少,团队可以减少相互间的打扰,更加专注,交付效率也随之获得提升。

按照上面的迭代日历,进行双周迭代时,需要注意下面两点:

  • 合适的需求粗细粒度。把需求拆成合适的粒度以便于其流动,单个粒度需求尽量控制在2-3人天完成。

  • 对当前迭代的需求进行分步移测。让测试可以从第一周的第3天至第二周的第4天,持续测试不同的需求,而非堆积到一个时间点,一次性移测。

4

RISE 能否满足业务时效要求?

读者可能会有疑问,增加了一个完整的需求迭代,是否相当于开发后置了?会不会减慢整体交付时效?

首先,我们要引入前置时间(Leadtime)这个概念。需求前置时间指从需求提出到完成上线的整个时间周期。它包含意向形成、需求讨论、设计定稿、开发、测试、上线发布几个时间段(如下图),Agilean 自研的敏捷组织管理工具知微,已经可以实现需求前置时间的分段统计:

需求前置时间能够很好地反映研发的响应速度,是我们倡导优化的核心指标之一。通过缩短需求前置时间,持续进行高质量、有价值的研发交付,也是组织推进敏捷的重要目的。

让我们推演一下,RISE版本迭代节奏在现实中的运行方式:

运行双周迭代的团队,在第一周的第1天收到一个复杂业务需求。首先,由产品经理进行需求澄清,与业务讨论并梳理业务规则。通常情况下,这个需求会在第三周(即开发迭代的第一周)投入开发,经过 10 天的开发和测试后,进入回归测试,并在第五周上线。

可以看到,该需求从想法提出到上线发布,一共耗费 4 周 + 4 天 = 32 天对大部分团队、大部分复杂业务需求来说,32天的需求前置时间已经很快了。

另外,因为采用了流式开发模式,在迭代运行过程中,业务方可以加入紧急需求,顺延一些还未进入开发的低优先级需求。确保团队对紧急需求,有更快速、更灵活的响应能力。

本文以一个不理想的双周迭代案例开始,分析了团队在迭代过程中时常遇到的问题以及背后成因,并介绍了稳定高效的 RISE版本迭代节奏,以及详细的迭代运作日历。这是Agilean基于十年来在企业内推动敏捷落地的实践总结,希望可以给有类似困扰的团队,提供一些启发和思考。

在迭代落地的过程中,架构设计、流程控制、资源配置、人员能力等很多因素,都可能影响其效果。如果您的团队在迭代运作过程中遇到问题,欢迎随时与我们展开讨论。

作者简介:

都云霞,Agilean 公司管理顾问、敏捷教练,CSM 、PMP 、CSPO 认证。近 10 年金融软件项目管理背景,曾服务于穆迪等国际金融咨询公司,参与中原银行、平安银行等的敏捷精益辅导。

RECOMMEND

推荐阅读

FLEET 研发精益效能提升框架

DEF 研发效能度量指标体系

DEER 研发效能提升路线图

这篇关于双周迭代死亡行军怎么破?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/590629

相关文章

AI绘图怎么变现?想做点副业的小白必看!

在科技飞速发展的今天,AI绘图作为一种新兴技术,不仅改变了艺术创作的方式,也为创作者提供了多种变现途径。本文将详细探讨几种常见的AI绘图变现方式,帮助创作者更好地利用这一技术实现经济收益。 更多实操教程和AI绘画工具,可以扫描下方,免费获取 定制服务:个性化的创意商机 个性化定制 AI绘图技术能够根据用户需求生成个性化的头像、壁纸、插画等作品。例如,姓氏头像在电商平台上非常受欢迎,

W外链微信推广短连接怎么做?

制作微信推广链接的难点分析 一、内容创作难度 制作微信推广链接时,首先需要创作有吸引力的内容。这不仅要求内容本身有趣、有价值,还要能够激起人们的分享欲望。对于许多企业和个人来说,尤其是那些缺乏创意和写作能力的人来说,这是制作微信推广链接的一大难点。 二、精准定位难度 微信用户群体庞大,不同用户的需求和兴趣各异。因此,制作推广链接时需要精准定位目标受众,以便更有效地吸引他们点击并分享链接

电脑桌面文件删除了怎么找回来?别急,快速恢复攻略在此

在日常使用电脑的过程中,我们经常会遇到这样的情况:一不小心,桌面上的某个重要文件被删除了。这时,大多数人可能会感到惊慌失措,不知所措。 其实,不必过于担心,因为有很多方法可以帮助我们找回被删除的桌面文件。下面,就让我们一起来了解一下这些恢复桌面文件的方法吧。 一、使用撤销操作 如果我们刚刚删除了桌面上的文件,并且还没有进行其他操作,那么可以尝试使用撤销操作来恢复文件。在键盘上同时按下“C

webm怎么转换成mp4?这几种方法超多人在用!

webm怎么转换成mp4?WebM作为一种新兴的视频编码格式,近年来逐渐进入大众视野,其背后承载着诸多优势,但同时也伴随着不容忽视的局限性,首要挑战在于其兼容性边界,尽管WebM已广泛适应于众多网站与软件平台,但在特定应用环境或老旧设备上,其兼容难题依旧凸显,为用户体验带来不便,再者,WebM格式的非普适性也体现在编辑流程上,由于它并非行业内的通用标准,编辑过程中可能会遭遇格式不兼容的障碍,导致操

怎么让1台电脑共享给7人同时流畅设计

在当今的创意设计与数字内容生产领域,图形工作站以其强大的计算能力、专业的图形处理能力和稳定的系统性能,成为了众多设计师、动画师、视频编辑师等创意工作者的必备工具。 设计团队面临资源有限,比如只有一台高性能电脑时,如何高效地让七人同时流畅地进行设计工作,便成为了一个亟待解决的问题。 一、硬件升级与配置 1.高性能处理器(CPU):选择多核、高线程的处理器,例如Intel的至强系列或AMD的Ry

迭代器模式iterator

学习笔记,原文链接 https://refactoringguru.cn/design-patterns/iterator 不暴露集合底层表现形式 (列表、 栈和树等) 的情况下遍历集合中所有的元素

速盾高防cdn是怎么解决网站攻击的?

速盾高防CDN是一种基于云计算技术的网络安全解决方案,可以有效地保护网站免受各种网络攻击的威胁。它通过在全球多个节点部署服务器,将网站内容缓存到这些服务器上,并通过智能路由技术将用户的请求引导到最近的服务器上,以提供更快的访问速度和更好的网络性能。 速盾高防CDN主要采用以下几种方式来解决网站攻击: 分布式拒绝服务攻击(DDoS)防护:DDoS攻击是一种常见的网络攻击手段,攻击者通过向目标网

禁止复制的网页怎么复制

禁止复制的网页怎么复制 文章目录 禁止复制的网页怎么复制前言准备工作操作步骤一、在浏览器菜单中找到“开发者工具”二、点击“检查元素(inspect element)”按钮三、在网页中选取需要的片段,锁定对应的元素四、复制被选中的元素五、粘贴到记事本,以`.html`为后缀命名六、打开`xxx.html`,优雅地复制 前言 在浏览网页的时候,有的网页内容无法复制。比如「360

Wondows dos下怎么编写bat批处理文件

最近搞php,在运行时,以Nginx+php-cgi.exe方式运行Wordpress项目 打开dos,先cd到php-cgi.exe文件当前目录下执行启动命令:php-cgi.exe -b 127.0.0.1:9001再打开一个dos,再cd到nginx.exe文件当前目录下执行启动命令:start nginx 大概过程要经过这些步骤,觉得很麻烦,就学下怎么编写一个bat文件,以双击运行代替

多线程篇(阻塞队列- LinkedBlockingDeque)(持续更新迭代)

目录 一、LinkedBlockingDeque是什么 二、核心属性详解 三、核心方法详解 addFirst(E e) offerFirst(E e) putFirst(E e) removeFirst() pollFirst() takeFirst() 其他 四、总结 一、LinkedBlockingDeque是什么 首先queue是一种数据结构,一个集合中