Sprint Review不是回顾,其目标是演示这个Sprint中自己的工作成果,参会人员包括设计师、开发人员和Product Owner。在Worktile,我们尽量保持Sprint评审会的轻松随意氛围。团队成员们会聚集在桌子周围进行非正式的演示,讲述自己在本次迭代中完成的工作。在这期间团队成员可以相互提问、尝试新的功能并提供反馈。成功的分享是构建敏捷团队的重要工作。

首先,我们回顾一下为什么团队对“完成”的定义对Sprint review如此重要:

第一步:定义“完成”

如果你在使用敏捷开发工具,那么你就应该清楚将任务卡从“测试中”拖到“已验收”这个操作会令你非常有成就感。这个任务卡的流转代表着一项工作终于完成了!

在截止时间前完成工作需要合理的规划、定义清晰的“完成”和专注的执行力。虽然大多情况下,这些工作是在Sprint规划阶段要做的事,但为了确保Sprint和review能顺利进行,团队要做的远不止规划,还要形成一种清晰的交付文化以及明确“完成”的定义。

交付文化

高效团队能够将清晰的流程和开发文化带到每个工作项中。你可以用下面这些问题来评估一下你的流程,确保该流程能让团队保持最佳状态:

  • 实施前,Product Owner、设计师和研发团队对用户故事的定义是否明确?
  • 每个人是否都理解并践行团队的工程价值观和文化?
  • 关于代码审查、自动化测试和持续集成是否有明确的定义和需求来鼓励可持续的敏捷开发?
  • 团队每完成一个用户故事,是否会有很多bug? 换句话说,“完成”是否真的意味着“完成”呢?

团队的质量和完成文化应该在每个用户故事、工程工作项和bug之上。这种文化反映了团队交付软件的方式。

为每个工作项定义“完成”

明确 “完成”的定义可以帮团队聚焦每个工作项的最终目标。当Product Owner在团队的backlog中添加工作时,定义验收标准是他工作流程中非常关键的一部分。用户故事的完成意味着什么?在Worktile,团队也会跟踪其他用户故事的验收标准和测试说明。这样,整个团队就能够明确掌握每个工作项的完工情况。那么什么是验收标准和测试说明呢?

  • 验收标准:Product Owner用于确认故事已满足其需求的指标。
  • 测试说明:来自质量支持团队的简短、有针对性的指导,可帮助开发工程师编写更好的功能代码进行自动化测试。

定义明确的事项在实施过程中更容易成功。通过使用Worktile,团队可以轻松添加字段及描述,让每个任务都有清晰的定义。

第二步:庆祝团队成果

Sprint review是庆祝团队和个人在迭代过程中所取得成就的好时机。所以在Worktile,我们通常在周五下午进行Sprint review。Sprint review并不是回顾的同义词,所以要确保在迭代完成之后,回顾之前举行Sprint review会议。虽然我们欢迎外部人员加入会议,但通常情况下是Product Owner、整个开发团队和Scrum master参与会议。为了取得最佳效果,建议每个迭代花费30分钟到1小时的时间。

我们喜欢Sprint review,因为它可以保证团队的健康和士气。Sprint review的核心目标就是团队建设。review并不是对抗,也不是考试——而是整个团队的协作活动,让成员可以展示自己的工作,现场交流并获得反馈。

如果Sprint review没能在团队中产生积极影响,原因可能是:

  • 团队任务太多以至于迭代期间无法完成;
  • 团队深陷现存的技术债;
  • 功能开发未能确保持续性,以避免在代码库中引入新的bug;
  • 团队的开发习惯没有适时调整;
  • Product Owner在迭代过程中更改了优先级,而开发团队则因范围的变更陷入困境;

注意:团队在迭代中遇到困难是常有的事。迭代回顾会议时,团队可以花费点时间探讨一下为什么迭代过程中会发生变更,并制定计划在下一个Sprint中解决问题。

最后建议

对于那些不熟悉sprint review的团队来说,它们很容易就将其并入sprint回顾会议。Sprint review是独立于sprint回顾会议之外的独立仪式。通过sprint review,我们可以花点时间享受工作成果、自由地庆祝成就。有效的sprint review可以增强团队的士气和动力。

文章来源:Worktile敏捷博客

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

文章转载请注明出处。

如何提高Sprint Review的质量?的更多相关文章

  1. 团队代码中Bug太多怎么办?怎样稳步提高团队的代码质量

    最近负责的Android APP项目,由于团队成员变动.界面改版导致代码大幅修改等原因,产品发布后屡屡出现BUG导致的程序崩溃. 经过对异常统计和代码走读,BUG主要集中在空指针引起的NullPoin ...

  2. 教你如何提高 PHP 代码的质量

    说实话,在代码质量方面,PHP 的压力非常大.通过阅读本系列文章,您将了解如何提高 PHP 代码的质量. 我们可以将此归咎于许多原因,但这肯定不仅仅是因为 PHP 生态系统缺乏适当的测试工具.在本文中 ...

  3. 如何提高 PHP 代码的质量?第二部分 单元测试

    在“如何提高 PHP 代码的质量?”的前一部分中:我们设置了一些自动化工具来自动检查我们的代码.这很有帮助,但关于我们的代码如何满足业务需求并没有给我们留下任何印象.我们现在需要创建特定代码域的测试. ...

  4. 如何提高 PHP 代码的质量?第三:端到端 / 集成测试

    在本系列的最后一部分,是时候设置端到端 / 集成测试环境,并确保我们已经准备好检查我们工作的质量. 在本系列的前几部分中,我们建立了一个构建工具,一些静态代码分析器,并开始编写单元测试. 为了使我们的 ...

  5. ASE Backend Alpha Sprint Review

    [Backend] Alpha Review展示博客 团队成员介绍:仅限于Alpha阶段有贡献的成员. 典型场景描述:描述并说明你们认为的产品面向的典型场景. 团队管理与协作:包括但不限于团队内部如何 ...

  6. (转)提高代码质量---one

    1. 摘要 这是烂代码系列的第二篇,在文章中我会跟大家讨论一下如何尽可能高效和客观的评价代码的优劣. 在发布了关于烂代码的那些事(上)之后,发现这篇文章竟然意外的很受欢迎,很多人也描(tu)述(cao ...

  7. 提高 Android 代码质量的4个工具

    在这篇文章中,我将通过不同的自动化工具如CheckStyle,FindBugs,PMD以及Android Lint来介绍(如何)提高你的安卓代码质量.通过自动化的方式检查你的代码非常有用,尤其当你在一 ...

  8. [git]安装git-pylint-commit-hook提高python项目中的代码质量

    什么是'git-pylint-commit-hook' 我在工作中,团队为了保证代码和提高代码的质量,要求每个项目都要求安装git-pylint-commit-hook,它是个钩子,会在你提交代码到本 ...

  9. 使用OctreeQuantizer提高gdi+绘图质量

    .net中gdi+绘制的图形质量很少,原因是gdi+使用的是256色的. 为了提高绘制图片的质量,可以使用是“Octree“ 算法.“Octree“ 算法允许我们插入自己的算法来量子化我们的图像. 一 ...

随机推荐

  1. CefSharp部分效果实现

    CefSharp For WPF隐藏滚动条 CefSharp For WPF自定义右键菜单栏 CefSharp For WPF响应页面点击事件

  2. 基于IOCP的高速文件传输代码

    //服务端: const   //transmit用的参数   TF_USE_KERNEL_APC     = $20;   //命令类型   CMD_CapScreen             =  ...

  3. 【全面解禁!真正的Expression Blend实战开发技巧】第二章 你好,UI设计师

    原文:[全面解禁!真正的Expression Blend实战开发技巧]第二章 你好,UI设计师 你好,UI设计师 曾几何时我从没想过要与艺术家打交道,但是Silverlight改变了这一切.UI设计师 ...

  4. 【Git】打标签

    打标签 同大多数 VCS 一样,Git 也可以对某一时间点上的版本打上标签.人们在发布某个软件版本(比如 v1.0 等等)的时候,经常这么做.本节我们一起来学习如何列出所有可用的标签,如何新建标签,以 ...

  5. 对OO的封装了有了新的理解——希望是普通函数来写总体流程来统管类似的业务,但却又涉及具体操作的函数,仍然可以达到目的

    就是不厌其烦,把那个具体操作函数封装成虚函数,只需要返回它的结果就行.而总体流程根据这个结果继续进行处理,这样就能总体流程和虚函数两不误了.

  6. 微信小程序把玩(二十六)navigator组件

    原文:微信小程序把玩(二十六)navigator组件 navigator跳转分为两个状态一种是关闭当前页面一种是不关闭当前页面.用redirect属性指定. 主要属性: wxml <naviga ...

  7. Android零基础入门第27节:正确使用padding和margin

    原文:Android零基础入门第27节:正确使用padding和margin 前面两期我们学习了LinearLayout线性布局的方向.填充模型.权重和对齐,那么本期我们来学习LinearLayout ...

  8. Hadoop Streaming框架学习(二)

    1.常用Streaming命令介绍 使用下面的命令运行Streaming MapReduce程序: 1: $HADOOP_HOME/bin/hadoop/hadoop streaming args 其 ...

  9. MongoDB对文档的操作

    插入文档 db.COLLECTION_NAME.insert({doc1},{doc2},...) e.g.:db.collection.insert({name:'123',age:12},{nam ...

  10. QML于C++交互之信号与槽(signal&slot )

    connect c++ SIGNAL with QML SLOT 简介 QML 与 C++ 混合编程时,总结了一下qml和c++互相直接调用.及信号与槽连接 的几种情况,详细使用情况看示例代码 所有的 ...