菜鸟Scrum敏捷实践系列索引  

菜鸟Scrum敏捷实践系列(一)用户故事概念

菜鸟Scrum敏捷实践系列(二)用户故事验收

菜鸟Scrum敏捷实践系列(三)用户故事的组织---功能架构的规划

敏捷开发对需求规划的要求是很高的,首先需求是打散的,一个大的项目需求会拆分成很多小的功能完整的需求,以便排定优先级去逐个实现,敏捷开发提升了开发效率,但是对需求规划的要求更高了,就是对产品的需求规划能力提出了更高的要求,必须有清晰的思路,很强的需求规划能力才行,这样才能保证敏捷开发可以按照既定的设想去一步一步实现产品的设计。

敏捷开发是通过“用户故事”这个东东来实现传统软件开发所说的需求的。

一、什么是用户故事?

用户故事就是定义用户所需功能的文字描述,简单说就是用户的需求。一个好的用户故事包括三个要素:

1. 角色:谁要使用这个功能。

2. 活动:需要完成什么样的功能。

3. 商业价值:为什么需要这个功能,这个功能带来什么样的价值。

二、用户故事的描述

建议采用两种方式来进行用户故事的描述,用户可以任选一种:

  • 作为<用户角色>,我需要<功能>,以实现<业务价值>
  • 为实现<业务价值>,作为<用户角色>,我需要<功能>
举例:

作为一个“网站管理员”,我想要“统计每天有多少人访问了我的网站”,以便于“我的赞助商了解我的网站会给他们带来什么收益。”

注意事项:

用户故事不能够使用技术语言来描述,要使用用户可以理解的业务语言来描述。

三、用户故事与任务、测试等对象的关联

每个用户故事与多个开发任务、变更、缺陷(Bug)、测试用例和测试历史相关联。

1、与任务的关联

用户故事通过任务来实现。 实际开发工作比用户故事更琐碎。 实际上,每个故事都是多项任务的集合。把故事分解成多个任务,安排到人,完成了所有的任务,就意味着实现了用户故事。

2、与变更的关联

敏捷开发就是鼓励大家“拥抱变化”,每次用户故事变更都做记录,与相应的用户故事相关联,这样方便整个团队了解用户故事的来龙去脉,减少重复劳动。

3、与测试用例的关联

每个用户故事开发完成需要进行测试,测试工程师应当为用户故事编写一个或多个测试用例。

4、与测试历史的关联

记录用户故事经历了哪些测试,测试的结果和处理情况如何。

5、与缺陷(Bug)的关联

记录用户故事发生的缺陷,查看缺陷的处理情况。

敏捷开发确实是好东东,但是国内由于长期受到传统软件开发思想的熏陶,中毒太深,大多数人仍然用模块化的思维方式来考量需求,始终不能用“价值”来考量需求。

这篇就先写到这里,下一篇继续用户故事的验收标准和用户故事编写原则的撰写,初学乍练欢迎大家前来拍砖。

菜鸟Scrum敏捷实践系列(一)用户故事概念的更多相关文章

  1. 菜鸟Scrum敏捷实践系列(三)用户故事的组织---功能架构的规划

    菜鸟Scrum敏捷实践系列索引 菜鸟Scrum敏捷实践系列(一)用户故事概念 菜鸟Scrum敏捷实践系列(二)用户故事验收 菜鸟Scrum敏捷实践系列(三)用户故事的组织---功能架构的规划 采用Sc ...

  2. 菜鸟Scrum敏捷实践系列(二)用户故事验收

    菜鸟Scrum敏捷实践系列索引 菜鸟Scrum敏捷实践系列(一)用户故事概念 菜鸟Scrum敏捷实践系列(二)用户故事验收 菜鸟Scrum敏捷实践系列(三)用户故事的组织---功能架构的规划 一.用户 ...

  3. Scrum 敏捷实践中的三大角色

    在我过去的近两年工作中,我们一直在应用 Scrum 敏捷项目管理方法来开展工作,今天,我先从它的角色划分来讲起,毕竟这可是它最鲜明的特征. 首先,为什么这种项目管理方法叫 Scrum ? Scrum ...

  4. 敏捷:什么是用户故事(User Story)

    摘要: 一件用户通过系统完成他一个有价值的目标(买一罐饮料)的事.这样的过程就叫"用户案例(user case)"或者"用户故事(user story)".本文 ...

  5. 产品经理-需求分析-用户故事-敏捷开发 详解 一张图帮你了解Scrum敏捷流程

    产品经理-需求分析-用户故事-敏捷开发 详解 用户故事是从用户的角度来描述用户渴望得到的功能.一个好的用户故事包括三个要素:1. 角色:谁要使用这个功能.2. 活动:需要完成什么样的功能.3. 商业价 ...

  6. 敏捷开发用户故事系列之十一:CSDN博客用户故事分析

    这是敏捷开发用户故事系列的第十一篇.(栏目目录) 经常有人问起有没有完整的用户故事案例.本人在网上找了一下,大约能找到两三篇,但多数只是为了描述用户故事的语法而已,都不涉及用户故事的颗粒度.大量故事的 ...

  7. 敏捷测试模式之Scrum及其实践

    一.    敏捷开发模式简介 敏捷是近年来软件研发领域很火的一个词,采用敏捷开发模式的研发团队是越来越多了,尤其是敏捷模式中的Scrum更是佼佼者大行其道,这表明敏捷模式确有其好处,能给企业带来效率的 ...

  8. UDAD 用户故事驱动的敏捷开发 – 演讲实录

    敏捷发展到今天已经在软件行业得到了广泛认可,但大多数敏捷方法都是为了解决某一特定问题而总结出来的特定方法或实践,一直缺乏一个可以将整个开发过程串接起来的成体系的方法.用户故事驱动的敏捷开发(User ...

  9. 【DevCloud·敏捷智库】如何利用用户故事了解需求

    摘要:这篇文章主要解决因为不能很好地理解需求而估算做不好的问题,在这里可以了解下如何利用用户故事了解需求. 背景 很多团队在应用敏捷开发时,对估算经常感到困惑.这里所说的估算是指产品列表条目(PBI, ...

随机推荐

  1. HDU5914

    Triangle Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Su ...

  2. ConcurrentHashMap原理

    转载地址:http://www.blogjava.net/xylz/archive/2010/07/20/326661.html 在上一篇中介绍了HashMap的原理,这一节是ConcurrentMa ...

  3. 如何给 UILable 添加横线

    类似淘宝上的原价现价,原价上一般都会有一条横线,这种效果怎么实现呢?其实相当的简单,我们只需要重写自定义的lable的 - (void)drawRect:(CGRect)rect 方法就行了. 具体实 ...

  4. Hadoop权威指南:HDFS-数据流

    Hadoop权威指南:HDFS-数据流 [TOC] 剖析文件读取 客户端通过调用FileSystem对象的open()方法来打开希望读取的文件,对于HDFS来说, 这个对象是分布式文件系统的一个实例 ...

  5. Oracle检查锁及其等待的行ROWID

    SELECT l.session_id sid ,        substr(o.owner,               1,               8) owner,        o.o ...

  6. WebForm 全局对象、commend

    Repeater的增删改 内置对象:页面之间的数据交互为什么要用这些玩意? HTTP的无状态性 Response:响应请求 Request:获取请求 Cookies:保存登录状态----------- ...

  7. oracle 12c安装详细教程

    数据库下载:www.orcale.com访问官网自行下载. 一,将下载好的两个压缩包在同一目录中进行解压(文件目录尽量用英文) 解压后如下使用管理员身份运行setup安装程序 注意:对于学习阶段,这一 ...

  8. IIS7上搭建网站的基本方法(系统推荐的安全方案)

    1.创建的程序池命名默认为网站名称,程序池的标识采用默认的ApplicationPoolIdentity,这个会自动生成虚拟的用户,系统推荐的安全方案: 2.网站右键 基本设置 --> 连接为 ...

  9. docker - 容器里安装ssh

    docker安装ssh 通过命令行安装 pull ubuntu镜像 docker pull ubuntu:latest 启动并进入bash docker run -it -d ubuntu:laste ...

  10. Python学习--17 进程和线程

    线程是最小的执行单元,而进程由至少一个线程组成.如何调度进程和线程,完全由操作系统决定,程序自己不能决定什么时候执行,执行多长时间. 进程 fork调用 通过fork()系统调用,就可以生成一个子进程 ...