【敏捷开发每日一贴】DoD“完成”的定义
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“完成”的定义相关推荐
- 敏捷开发 - 每日站立会议
每日站立会议是敏捷流程scrum中的很重要的一个制度之一. 功能: 1.快速同步进展,让项目组内部的员工互相了解彼此的进展,从而了解本项目的整体进展. 2.给每个人一种精神压力,信守承诺.这是一种面对 ...
- 【敏捷开发每日一贴】:猪和鸡的故事
猪和鸡的故事 关于鸡与猪的故事有很多种版本,被用在各种不同的场合,管理的.营销的.敏捷开发的,大体相同,但稍有差异. 故事一:有一只鸡和一头猪合伙开饭店,双方各占50%股份.鸡对猪说:"我每 ...
- 【敏捷开发每日一贴】敏捷实践Showcase的七宗罪
敏捷实践Showcase的七宗罪 Showcase(其实就是SprintReview,演示会.评审会)就是开发团队把开发好的功能给客户的Product Owner等业务相关人员演示,以获取他们对所开发 ...
- 敏捷开发 看板_什么是看板? 定义的敏捷方法论,以及如何将其用于您的软件开发团队
敏捷开发 看板 Kanban was invented in the Japanese automotive industry in the first half of the 20th centur ...
- 【敏捷开发每日一贴】用户故事Userstory
用户故事 一.什么是用户故事? 用户故事也是一种常见的需求描述的方法,它从用户的角度来描述用户渴望得到的功能.一个好的用户故事包括三个要素: 1. 角色:谁要使用这个功能. 2. 活动:需要完成什么样 ...
- 【敏捷开发每日一贴】敏捷教练和团队引导
谈谈敏捷教练和团队引导 敏捷教练在不同的组织中,在不同的场景下,可以是:教练.咨询顾问.引导式培训师.导师.过程引导师,并且可以根据不同的情况切换角色.熟练运用各种技术.技巧.工具.(这里说的敏捷教练 ...
- 敏捷开发每日报告--day5
1 团队介绍 团队组成: PM:齐爽爽(258) 小组成员:马帅(248),何健(267),蔡凯峰(285) Git链接:https://github.com/WHUSE2017/C-team 2 ...
- Leangoo团队敏捷开发实现过程
通过敏捷看板来实现需求.迭代(支持燃尽图)和缺陷管理:此类型项目提供了单团队敏捷开发和大规模敏捷模板,适用于Scrum敏捷项目管理及产品研发. 本场景描述的是针对10以下小型产品研发团队或小型项目的敏 ...
- 团队如何实施敏捷开发以及Scrum电子看板工具
概述 本场景描述的是针对10以下小型产品研发团队或小型项目的敏捷应用场景.Leangoo单团队敏捷开发项目模板是基于Scrum模型定义的,所以这里所说的单团队是指只有一个Scrum团队的场景. Scr ...
最新文章
- 预告:Javascript全栈开发的系列文章
- java和python哪个好学-Python和Java,哪个容易学呢?
- C# webBrowser与javascript互调
- 谷歌开发者工具详解 Network篇
- 公布生成cscope.out, cscope.files, tags的脚本文件
- BigDecimal的异常记录:java.lang.ArithmeticException: Rounding necessary
- c++ 01_02 study note
- HIVE 1.1.0 启动时报错: Unsupported major.minor version 51.0
- JAVA的序列化不得不说的事
- fw325r没有虚拟服务器,FAST FW325R的配置方法教程
- 网站被移动运营方屏蔽怎么办?
- Word基础(三十八)插入书签
- 【MySQL 09】安装mysql时出现:需要这两个包perl(Data::Dumper),perl(JSON)
- LeetCode 417.太平洋大西洋水流问题
- Systemback使用精简教程
- 微信小程序分享到朋友圈,在朋友圈打开报错 error code -501023
- 信号完整性设计的五个问题
- 833计算机考研,西电考研辅导班:2019西安电子科技大学833计算机学科专业基础综合考试大纲...
- cruise软件模型,混动仿真模型,IMMD架构混联混动仿真模型,Cruise混动仿真模型
- 2020中南大学研究生招生夏令营机试题题解
热门文章
- cannot dynamically load executable的尴尬经历
- 真香啊,一文讲透金融风控建模全流程(Python)
- Java毕业设计-美容院小程序管理系统
- 【历史上的今天】11 月 5 日:初代安卓系统公开发布;诺基亚更名为微软 Lumia;开放手持设备联盟成立
- 单片机蓝牙烧录_怎么样蓝牙模块给单片机烧程序?
- 全球及中国标签印刷行业十四五发展形势与需求规模预测报告2022版
- Cookie实例:显示用户上次访问的时间
- 四大美女 沉鱼-->西施 落雁-->王昭君 闭月-->貂禅 羞花-->杨玉环
- 微信小程序========》showmodal弹窗content内容换行显示
- windows 下连服务器