敏捷测试(3)--基于story的敏捷基础知识
基于story的敏捷基础知识----story编写
为什么使用Story?
软件行业40年多来,需求分析技术已经很成熟了,但是MRD驱动的过程不堪重负。因为往往MRD编写会占去很多时间,MRD评审又会占去大量时间,编码完成过后提测,压力又全部倾注在QA身上,往往临计划上线时间,或者体验还差,或者bug还太多,或者项目延期。
使用story,项目完成时间会大大缩短,上市时间大大缩短。主要原因:
A. 采用story模式,将大需求拆为可独立交付的小story,需求清晰明了,节省了大量的需求评审时间。
B. story足够小,设计难度较低,并且改之前的书面详细设计及其评审为“口头沟通为主,文档为辅”,详设环节的时间也大量节省。
C. story足够小,验收标准更明确,测试设计环节简化,评审环节改为口头沟通,节约了大量设计时间。
D. story间并行,不是之前的所有需求评审完成,才开始详设,详设没问题之后才开始编码和测试,因此将需求阶段PM的瓶颈,开发阶段RD的瓶颈、测试阶段QA的瓶颈都被打破。
E. 将RD从文档和评审中解放出来,RD更有时间也更愿意去自测和写单测,bug量减少。
什么是Story?
整个项目:
story:
story 包括三部分:用户故事卡片、详细描述、验收标准。
(1)用户故事卡片
三要素:用户、任务和活动、目标
框架:
| 作为 |
xxx |
| 我想要 | xxxxx |
| 以便 | xxxx |
实例:
| 作为 | 一个书店管理员 |
|---|---|
| 我想要 | 添加新书到书库 |
| 以便 | 购书者能查阅到这本书 |
(2)详细描述
对如何实现“我想要”的详细描述。
(3)验收标准
Q1:如何确定Story已经完成?
通过验证验收标准里的一系列内容,就能验证实现符合story的需求。
Q2:验收条件通常包括哪些?
a.具体属性
b.功能性验收条件
c.非功能性验收条件
好的Story有哪些特点?
- Independent 可以独立开发
- Negotiable 可以协商
- Valuable 有价值
- Estimable 大小可评估
- Sized appropriately 合适粒度(1~5天验收完成)
- Testable 可测试验证
Story的生命周期是什么样的?
敏捷测试(3)--基于story的敏捷基础知识的更多相关文章
- 测试工具Fiddler(一)—— 基础知识
Fiddler基础知识 一.Fiddler是什么? Fiddler是一个http协议调试代理工具,它能够记录客户端和服务器之间的所有 HTTP请求,可以针对特定的HTTP请求,分析请求数据.设置断点. ...
- 基于Python的Flask基础知识
Flask简介 Flask 是一个使用 Python 编写的轻量级 Web 应用程序框架.Armin Ronacher带领一个名为Pocco的国际Python爱好者团队开发了Flask. 下面我们简单 ...
- APP测试入门篇之APP基础知识(001)
前言 最近两月比较多的事情混杂在一起,静不下心来写点东西,月初想发表一遍接口测试的总结,或者APP测试相关的内容,一晃就月底了,总结提炼一时半会也整不完.放几个早年总结内部培训PPT出来 ...
- 【考试】java基础知识测试,看你能得多少分?
1 前言 共有5道java基础知识的单项选择题,每道20分,共计100分.解析和答案在最后. 2 试题 2.1 如下程序运行结果是什么? class Parent { public Parent(St ...
- 敏捷测试(6)--基于story的敏捷基础知识
基于story的敏捷基础知识----需求管理(三) (3)每日站会 站会的目的有三个: (1)周知进度 仅从用户故事和任务的层面周知进度,任务进度只有两种状态:完成或未完成(完成百分比). (2)周知 ...
- 敏捷测试(4)--基于story的敏捷基础知识
基于story的敏捷基础知识----需求管理(一) 基于story进行需求管理 (1)使用story模式来管理需求,将庞大的MRD划分为一个个合适粒度,且可独立交付的story(通常每个story能在 ...
- 敏捷测试(7)--基于story的敏捷基础知识
基于story的敏捷基础知识----迭代启动会.迭代回顾会 除需求讲解意外,需要所有团队成员参加的会议仅有两个,分别是"迭代启动会"和"迭代回顾会". (1)迭 ...
- 敏捷测试(5)--基于story的敏捷基础知识
基于story的敏捷基础知识----需求管理(二) (1)定期发布 定期发布上线,把整个项目划分为一个个迭代,每个迭代时间大小固定(基本固定),迭代结束时上线交付一次. (2)迭代规划 迭代规划相当于 ...
- APP敏捷测试,测试和开发并行!
测试和开发具有同等重要的作用,从一开始,测试和开发就是相向而行的.测试是开发团队的一支独立的.重要的支柱力量. 测试要具备独立性,独立分析业务需求,独立配置测试环境,独立编写测试脚本,独立开发测试工具 ...
随机推荐
- 迭代器&生成器
迭代器 迭代是Python最强大的功能之一,是访问集合元素的一种方式. 迭代器是一个可以记住遍历的位置的对象. 迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束.迭代器只能往前不会后退 ...
- map函数用法详解
map函数是Python内置的高阶函数,它是一个典型的函数式编程例子.它的参数为: 一个函数function.一个或多个sequence.通过把函数function依次作用在sequence的每个元素 ...
- 用tensorlayer导入Slim模型迁移学习
上一篇博客[用tensorflow迁移学习猫狗分类]笔者讲到用tensorlayer的[VGG16模型]迁移学习图像分类,那麽问题来了,tensorlayer没提供的模型怎么办呢?别担心,tensor ...
- sshpass笔记
sshpass简介 ssh登录的时候使用的是交互式输入,不能预先在命令行使用参数指定密码,sshpass就是为了解决这个问题的.sshpass提供非交互式输入密码的方式,可以用在shell脚本中自动输 ...
- Java内存泄漏分析系列之一:使用jstack定位线程堆栈信息
原文地址:http://www.javatang.com 前一段时间上线的系统升级之后,出现了严重的高CPU的问题,于是开始了一系列的优化处理之中,现在将这个过程做成一个系列的文章. 基本概念 在对J ...
- 安卓高级4 第三方库SlidingMenu的使用
源码位于github上(本人fork地址):点击进入地址 效果图: 使用方法:下载源码后 解压其中的文件夹library 到任意地方 修改library中gragle 其方法参考另一个博客(建议先修改 ...
- 有没有最好的学习Angularjs2的视频入门体验?
Which are the best video tutorials for learning AngularJS 2? 有没有最好的学习Angularjs2的视频入门体验? 翻译来源:https:/ ...
- [Boost] 1.57.0 with VS2013 + Intel compiler
The compiled version can be found below. Do not foget to give me a star. :) http://pan.baidu.com/s/1 ...
- Texlive 更新命令
设置repository tlmgr repository set http://mirror.hust.edu.cn/CTAN/systems/texlive/tlnet 上面的例子使用的是华中科技 ...
- C算法实现:将字符串中的数字返回为整型数
今天看linux内核驱动的代码,发现一个算法写得挺简单,也有意思. 分享一下我的测试代码: #include <stdio.h> typedef int U32 ; U32 String2 ...