团队如何最大限度地发挥Scrum和敏捷的优势?

回想一下,Scrum团队在Scrum的框架内定义了自己的流程。这其中包括方法、工具和互动以及如何履行Scrum角色的职责、如何使用工件和事件等。

如何确定团队做什么以及怎么做?
从产品管理方法到研发及质量管理方法。从团队的沟通协作方式到团队成员如何有效利用团队知识提升自己的技能及能力等等。
在充满不确定性且不断变化的环境中交付复杂的产品会涉及到很多方面。因此,我们尝试简化过程并聚焦具体的行动。 下面是改进团队流程的5个步骤,希望能对你的团队有所帮助:

第1步:增加透明度的深度和广度

要改进团队流程,就一定要有透明度。如果只是要“遵守规则”,Scrum只会提供最低程度的经验论。
而只有当团队真正接受经验论时,才更有可能改进流程。最重要的是,团队必须要了解其流程如何影响结果。
以下是团队需要探讨的一些问题:

  • 我们如何决定产品做什么?这些决定如何实现透明化并且需要对谁透明?
  • 在任何特定时刻,我们如何理解团队在实现增量目标方面的进展?(这可能是每日目标,Sprint目标或更长期的目标。)
  • 就我们所做的每一项工作而言,什么才是有价值的输出?怎样才能让它更有价值?
  • 怎样打造高品质的产品?目前的产品质量如何?发展趋势如何?
  • 哪些因素会让结果更完美?哪些因素会导致不那么完美的结果?
  • 我们提出了哪些假设?这些假设如何验证?

第2步:使用精简原则

精益软件开发有七个原则。虽然这七个原则都很有用,但在这里我做了简化。我的同事Simon Reindl向我介绍了他所谓的精简原则。

  • 价值最大化
  • 浪费最小化
  • 流动最大化

这三个原则是相互关联的。流动最大化意味着我们尽可能快的推动项目(即价值)在整个过程中的流动,同时还要保证质量和客户满意度。摒弃浪费可以帮我们做到这点。因为浪费从来不会给客户增加价值。
现在,从精简原则的视角来评估整个流程。寻找资源浪费的迹象和能将价值流最大化的机会。常见的资源浪费来源如下:

  • 开发出客户不想要或者不会使用的产品
  • 心有旁骛、不断切换任务
  • 半成品
  • 质量差的产品
  • 不必要或无效的流程和文档

第3步:期待变化,寻求更好(即检验和调整)

团队使用的方法和工具将受到产品类型、产品技术平台、产品使用环境、产品使用者及使用方式、监管与法律环境、市场走向、不断变化的业务需求等因素的影响。
所以说,涉及的因素很多。而且大部分因素会随着时间推移而发生改变。因此,团队在检验和调整他们的工作内容、工作原因、工作方法以及工作收益时必须保持警惕。
世界各地的产品开发社区在不断创造和共享新的方法和工具,因此保持联系并不断学习非常重要。
实际上,团队通常需要不断改进和发明新的方法和工具,来满足他们的独特需求。在复杂的工作中,并没有所谓的最佳方法。最佳方法是团队当前情况下的最优方法,而一个月后随着团队情况的变化,最优方法也会有所不同。
参与推动领域或行业发展。

第4步:专注于交付“完成”增量

将1-3步应用到交付“完成”增量中。
Scrum的全部意义在于“完成”。可发布产品的增量有利于降低风险,优化可预测性,同时体现敏捷业务的优势。“完成”是检验进度的唯一真正标准。
如果你没有在每个Sprint结束之前交付至少一个“完成”增量,那你就要注意了,这就是你需要集中精力做到的一点。
那么如何改进流程以达到“完成”状态呢?
当然,改进流程的方法有很多。但是,说到实现“完成”状态,这里有很多共性的因素需要我们考虑。因此,我和Simon Reindl套用1-3步中的方法将需要探索的共性因素的范围缩小,简化成了7个特定领域。这7个领域刚好可以帮助团队踏上探索和改进流程之旅:

  • 明确定义什么情况下才算“完成”
  • 有效使用Sprint目标
  • 尽量在Sprint周期结束前“完成”PBI(Product Backlog Item)
  • 保证质量
  • 解决技术债务问题
  • 识别并消除阻碍
  • 不断提升团队技能、知识和能力

第5步:不要满足于触手可及的目标

快速获得小范围的成功是件好事。可以通过改进一些简单的流程获得相对稳定的收益,甚至可以通过局部优化获得一些益处。只是团队需要在一段时间内超越这些触手可及的目标,这个时候,团队需要的就是系统性的优化而不是局部优化(这也可能意味着要颠覆目前团队或产品架构)。
分享一个实例吧。我曾与一个Scrum团队合作过,这个团队没有针对庞大且复杂产品的自动化测试。因为实施自动化测试需要大量工作且成本很高。有很长一段时间,自动化测试作为改进的理念被多次提及,然而,最终这个团队还是选择通过其他途径去提高质量减少浪费。当然,他们确实提高了质量和效率。但是,随着流程的推进每项改进最终获得的收益却越来越少。
终于,他们意识到是时候超越触手可及的目标,寻求更大的利益。他们需要面对来自自动化测试的挑战。由于他们之前在短时间内获得了一些小的成功,所以已经在团队中树立了更强大的团队认同感,准备扩大业务范围(即实施自动化测试)。

总结

Scrum团队要有自己的流程,这一点确实非常重要。当人们觉得自己在某件事上拥有所有权时,他们就会想投入更大精力,获得更好的效果。
改进团队流程是一项持续的工作,永无止境。
你的团队是否能保证在每个Sprint结束时都能构建一个“完成”增量?团队以何种方式表明他们对自己的流程拥有所有权?
团队流程的哪些方面不那么透明,而且可能被忽略了?您希望采取哪些步骤,改进团队流程?

文章来源:Worktile敏捷博客

欢迎访问交流更多关于技术及协作的问题。

文章转载请注明出处。

通过改进团队流程最大限度发挥Scrum的优势的更多相关文章

  1. 冰多多团队-第三次Scrum会议

    冰多多团队-第三次Scrum会议 会议基本情况 会议时间:4月9日 21:30 - 21:45 会议地点:新主楼F座2楼沙发休息处 工作情况 团队成员 已完成任务 待完成任务 zpj 接入Action ...

  2. 冰多多团队-第四次Scrum会议

    冰多多团队-第四次Scrum会议 工作情况 团队成员 已完成任务 待完成任务 zpj 撰写团队任务拆解博客 完成部分Action的实现 牛雅哲 完成了词典单词,词典映射的代码实现,设计了初步的词典异常 ...

  3. 冰多多团队-第五次Scrum会议

    冰多多团队-第五次Scrum会议 工作情况 团队成员 已完成任务 待完成任务 zpj 部分Action整合, 接入语音接口,整合项目解决兼容性问题 ASR bug修复 牛雅哲 跑通了科大讯飞语法识别的 ...

  4. 冰多多团队-第六次Scrum会议

    冰多多团队-第六次Scrum会议 工作情况 团队成员 已完成任务 待完成任务 zpj ASR bug修复 接入IAT模块 牛雅哲 完成语音识别->词典->termux的接口设计,熟悉了语法 ...

  5. 冰多多团队-第七次scrum例会

    冰多多团队-第七次Scrum会议 工作情况 团队成员 已完成任务 待完成任务 zpj 接入IAT模块 debug, IAT 牛雅哲 调研科大讯飞SDK中其他模块,寻找符合我们的需求的部分,将接口更换成 ...

  6. 冰多多团队-第八次Scrum例会

    冰多多团队-第八次Scrum会议 工作情况 团队成员 已完成任务 待完成任务 zpj debug, IAT debug, IAT 牛雅哲 将语音部分迁移到IatDemo上,去将科大讯飞的语音听写dem ...

  7. 如何用ABP框架快速完成项目(10) - ABP只要加人即可马上加快项目进展- 全栈篇(1) - 发挥DDD理论优势的时候到了!

    正如我在<程序员英语二三事(2) - 从听开始>里说的, 任何技术/工具/语言都有其适用场景和上下文环境. DDD理论同样是如此.   现在, 终于到了发挥DDD理论优势的时候啦!   一 ...

  8. H5外包团队 H5开发微信APP的优势有哪些

    H5外包团队 H5开发微信APP的优势有哪些

  9. [团队项目3.0]Scrum团队成立

    Scrum团队成立 5.Scrum团队成立 5.1 团队名称,团队目标.团队口号.团队照: 5.2 角色分配 产品负责人: 决定开发内容和优先级排序,最大化产品以及开发团队工作的价值. Scrum M ...

随机推荐

  1. JS实现鼠标放在文字上面显示全部内容

    web中当我们把text等的宽固定后如果文本框中内容过多就只能看到前面部分的内容,这时我们可以用样式控制当鼠标移到文本框时显示全部内容. var pointX; var pointY; $(funct ...

  2. Java基础:内存模型

    1. 引言 2. Java内存模型 3. 内存间的交互操作 1. 引言 考虑到计算机组成的内容: 原始的计算机是CPU用于计算+硬盘用于存储,由于CPU的高速发展和硬盘的缓慢发展,高速的存储需要持续供 ...

  3. Flask入门之结构重组(瘦身)-第13讲笔记

    1. pip list Flask 0.10.1 Flask-Bootstrap 3.3.5.6 Flask-SQLAlchemy 2 Flask-Script 2.0.5 Flask-WTF 0.1 ...

  4. 洛谷 P1462 解题报告

    P1462 通往奥格瑞玛的道路 题目背景 在艾泽拉斯大陆上有一位名叫歪嘴哦的神奇术士,他是部落的中坚力量 有一天他醒来后发现自己居然到了联盟的主城暴风城 在被众多联盟的士兵攻击后,他决定逃回自己的家乡 ...

  5. nginx+php+mysql+wordpress搭建简单站点 安装及配置过程

    环境 阿里云ECS云服务器 CPU:1核 内存:2G 操作系统:Centos 7.3 x64 地域:华北 2(华北 2 可用区 A) 系统盘:40G 安装及配置 主要使用 nginx . php 和 ...

  6. Web3与智能合约交互实战

    写在前面 在最初学习以太坊的时候,很多人都是自己创建以太坊节点后,使用geth与之交互.这种使用命令行交互的方法虽然让很多程序员感到兴奋(黑客帝国的既视感?),但不可能指望普通用户通过命令行使用Dap ...

  7. Spring中的循环依赖

    循环依赖 在使用Spring时,如果主要采用基于构造器的依赖注入方式,则可能会遇到循环依赖的情况,简而言之就是Bean A的构造器依赖于Bean B,Bean B的构造器又依赖于Bean A.在这种情 ...

  8. spring中注解式事务不生效的问题

    常用的解决方法可以百度,我针对我的问题描述一下 Mysql中InnoDB引擎才支持事务, MyISAM不支持事务. 当你尝试了各种方法解决spring中注解式事务不生效时, 一定要查看一下数据库中表的 ...

  9. 3GPP 测试 /etc/udev/ruse.d/50文件 /lib/udev/ruse.d/55* 网络配置

    3GPP是个标准化协议组织,其工作目标是制定协议实现由2G网络到3G网络的平滑过渡,保证未来技术的后向兼容性,支持轻松建网及系统间的漫游和兼容性. 3GPP协议的制订主要是以GSM核心网为基础. 测试 ...

  10. resteasy上传文件写法

    resteasy服务器代码 @Path(value = "file") public class UploadFileService { private final String ...