DoD“完成”的定义

常有团队对于本迭代是否完成无法达成一致意见,有的认为我编码完成,就表示我的任务完成了;有的认为还需要简单自测一下,确保功能能跑通;还有的认为需要把自动化用例写完并测试通过。

为了避免这个问题,在敏捷软件开发中,常用Definition of Done“完成的定义”来表示工作是否已完成,不同的活动有不同的完成定义。

典型的是迭代DoD,这也是最初DoD应用的地方。比如:

1.  所有代码通过静态检测,严重问题都已修改,静态分析的规则参见...

2.  所有新增代码得到人工评审

3.  所有完成的用户故事都有对应的测试用例

4.  测试用例都已执行

5.  所有完成的用户故事得到PO的验证

而对于发布,一般就有更加严格的要求,发布DoD的典型条款有:

1.  完成发布规划所要求的重点需求

2.  至少通过一次全量回归测试

3.  修复所有等级为1、2的缺陷,3、4级缺陷不超过20个

由于发布需要达到比迭代更高的要求,所以一般很难强制规定发布测试所需要的时间长度,也就是说敏捷中常用的时间箱方法不适宜用在发布前的测试上,因为高质量发布是第一要务,如果到了原计划测试结束的时间,仍然留有影响发布的缺陷,必须修复后才能发布。

而迭代成果一般是为了内部或者可控范围内的展示,相对发布而言,要求较低,所以适用时间箱方法,当然迭代本身就是时间箱,迭代内的测试本来就有时间限制。采用时间箱来安排迭代内的测试可以获得时间箱安排的种种好处。

此外还有版本DOD,比如:

1.  产品文档已全部更新

2.  代码已部署到产品服务器上

3.  运维在验收测试环境上冒烟通过

4.  原始需求提交人对功能已经验收通过

5.  对运维、市场、客服的新功能培训已完成

其他典型的DOD有每日DoD,典型条款有:

搭建每日构建环境,晚上自动静态代码检查、编译、部署和测试,每日修复前一日构建和测试发现的缺陷和问题。

1.  下班前必须检入当天编写的代码,checkin的log要填写清晰

2.  当天的代码必须在当天或者第2天邀请同伴进行代码评审

3.  检入的功能代码必须要有对应的单元测试(严格采用TDD)

4.  每天晚上触发静态代码检查、自动化回归测试

5.  当天持续集成、构建环境中的问题,请当天解决

还有针对用户故事(或者用例)的DoD,比如

1.  用户故事最终的描述符合INVEST

2.  用户故事得到测试用例的对应覆盖

3.  用户故事得到对应的自动化测试用例

4.  用户故事得到PO试用并初步认可

当测试集比较大的时候,无法在1天之内完成测试,可以开展每周全量回归自动化测试,这样就有每周DoD,典型条款有:

1.  上上周发现的缺陷是否解决

2.  上周新增功能的自动化测试是否加入到每周测试集。

需要强调的是,DOD必须是团队在项目启动时共同讨论出来的,团队愿意共同遵守的原则,一旦确定团队就应共同遵守。

【敏捷开发每日一贴】DoD“完成”的定义相关推荐

  1. 敏捷开发 - 每日站立会议

    每日站立会议是敏捷流程scrum中的很重要的一个制度之一. 功能: 1.快速同步进展,让项目组内部的员工互相了解彼此的进展,从而了解本项目的整体进展. 2.给每个人一种精神压力,信守承诺.这是一种面对 ...

  2. 【敏捷开发每日一贴】:猪和鸡的故事

    猪和鸡的故事 关于鸡与猪的故事有很多种版本,被用在各种不同的场合,管理的.营销的.敏捷开发的,大体相同,但稍有差异. 故事一:有一只鸡和一头猪合伙开饭店,双方各占50%股份.鸡对猪说:"我每 ...

  3. 【敏捷开发每日一贴】敏捷实践Showcase的七宗罪

    敏捷实践Showcase的七宗罪 Showcase(其实就是SprintReview,演示会.评审会)就是开发团队把开发好的功能给客户的Product Owner等业务相关人员演示,以获取他们对所开发 ...

  4. 敏捷开发 看板_什么是看板? 定义的敏捷方法论,以及如何将其用于您的软件开发团队

    敏捷开发 看板 Kanban was invented in the Japanese automotive industry in the first half of the 20th centur ...

  5. 【敏捷开发每日一贴】用户故事Userstory

    用户故事 一.什么是用户故事? 用户故事也是一种常见的需求描述的方法,它从用户的角度来描述用户渴望得到的功能.一个好的用户故事包括三个要素: 1. 角色:谁要使用这个功能. 2. 活动:需要完成什么样 ...

  6. 【敏捷开发每日一贴】敏捷教练和团队引导

    谈谈敏捷教练和团队引导 敏捷教练在不同的组织中,在不同的场景下,可以是:教练.咨询顾问.引导式培训师.导师.过程引导师,并且可以根据不同的情况切换角色.熟练运用各种技术.技巧.工具.(这里说的敏捷教练 ...

  7. 敏捷开发每日报告--day5

    1 团队介绍 团队组成: PM:齐爽爽(258) 小组成员:马帅(248),何健(267),蔡凯峰(285)  Git链接:https://github.com/WHUSE2017/C-team 2 ...

  8. Leangoo团队敏捷开发实现过程

    通过敏捷看板来实现需求.迭代(支持燃尽图)和缺陷管理:此类型项目提供了单团队敏捷开发和大规模敏捷模板,适用于Scrum敏捷项目管理及产品研发. 本场景描述的是针对10以下小型产品研发团队或小型项目的敏 ...

  9. 团队如何实施敏捷开发以及Scrum电子看板工具

    概述 本场景描述的是针对10以下小型产品研发团队或小型项目的敏捷应用场景.Leangoo单团队敏捷开发项目模板是基于Scrum模型定义的,所以这里所说的单团队是指只有一个Scrum团队的场景. Scr ...

最新文章

  1. 预告:Javascript全栈开发的系列文章
  2. java和python哪个好学-Python和Java,哪个容易学呢?
  3. C# webBrowser与javascript互调
  4. 谷歌开发者工具详解 Network篇
  5. 公布生成cscope.out, cscope.files, tags的脚本文件
  6. BigDecimal的异常记录:java.lang.ArithmeticException: Rounding necessary
  7. c++ 01_02 study note
  8. HIVE 1.1.0 启动时报错: Unsupported major.minor version 51.0
  9. JAVA的序列化不得不说的事
  10. fw325r没有虚拟服务器,FAST FW325R的配置方法教程
  11. 网站被移动运营方屏蔽怎么办?
  12. Word基础(三十八)插入书签
  13. 【MySQL 09】安装mysql时出现:需要这两个包perl(Data::Dumper),perl(JSON)
  14. LeetCode 417.太平洋大西洋水流问题
  15. Systemback使用精简教程
  16. 微信小程序分享到朋友圈,在朋友圈打开报错 error code -501023
  17. 信号完整性设计的五个问题
  18. 833计算机考研,西电考研辅导班:2019西安电子科技大学833计算机学科专业基础综合考试大纲...
  19. cruise软件模型,混动仿真模型,IMMD架构混联混动仿真模型,Cruise混动仿真模型
  20. 2020中南大学研究生招生夏令营机试题题解

热门文章

  1. cannot dynamically load executable的尴尬经历
  2. 真香啊,一文讲透金融风控建模全流程(Python)
  3. Java毕业设计-美容院小程序管理系统
  4. 【历史上的今天】11 月 5 日:初代安卓系统公开发布;诺基亚更名为微软 Lumia;开放手持设备联盟成立
  5. 单片机蓝牙烧录_怎么样蓝牙模块给单片机烧程序?
  6. 全球及中国标签印刷行业十四五发展形势与需求规模预测报告2022版
  7. Cookie实例:显示用户上次访问的时间
  8. 四大美女 沉鱼-->西施 落雁-->王昭君 闭月-->貂禅 羞花-->杨玉环
  9. 微信小程序========》showmodal弹窗content内容换行显示
  10. windows 下连服务器