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

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

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

一、什么是用户故事?

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

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

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

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

二、用户故事的描述

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

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

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

注意事项:

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

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

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

1、与任务的关联

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

2、与变更的关联

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

3、与测试用例的关联

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

4、与测试历史的关联

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

5、与缺陷(Bug)的关联

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

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

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

时间: 2024-10-07 21:11:45

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

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

菜鸟Scrum敏捷实践系列索引 菜鸟Scrum敏捷实践系列(一)用户故事概念 菜鸟Scrum敏捷实践系列(二)用户故事验收(本篇) 菜鸟Scrum敏捷实践系列(三)用户故事的组织(即将到来) 一.用户故事的状态: 用户故事推荐定义五种状态,分别是“构思”.“已批准”.“开发中”.“已完成”.“已验收”. 只有符合项目组规定的验收标准,才能置为“已验收”状态. 二.用户故事验收标准  由团队决定验收标准. 该标准可包括: •已完成所有任务(开发.测试和记录) •正在运行和通过所有验收测试 •无开放

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

采用Scrum敏捷项目管理方法进行产品开发,当碰到较大规模的产品开发,用户故事较多时,就必须采取一定的方法来组织.管理用户故事,使其分门别类的管理,条理才清楚.通常我们采用“功能架构”来分层分类别来管理用户故事. 一.规划层次 遵循Scrum敏捷项目管理理论,可把项目划分为三个大的层次,分别是顶层的产品层,支持多个产品同时开工:第二层是功能架构(Features)层,能够规划软件产品的整个骨架(功能蓝图):第三层是用户故事层,把用户故事分门别类的放在功能架构之下.项目管理者和开发者能够一目了然的

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

敏捷开发对需求规划的要求是很高的,首先需求是打散的,一个大的项目需求会拆分成很多小的功能完整的需求,以便排定优先级去逐个实现,敏捷开发提升了开发效率,但是对需求规划的要求更高了,就是对产品的需求规划能力提出了更高的要求,必须有清晰的思路,很强的需求规划能力才行,这样才能保证敏捷开发可以按照既定的设想去一步一步实现产品的设计. 敏捷开发是通过“用户故事”这个东东来实现传统软件开发所说的需求的. 一.什么是用户故事? 用户故事就是定义用户所需功能的文字描述,简单说就是用户的需求.一个好的用户故事包括

Scrum 敏捷实践中的三大角色

在我过去的近两年工作中,我们一直在应用 Scrum 敏捷项目管理方法来开展工作,今天,我先从它的角色划分来讲起,毕竟这可是它最鲜明的特征. 首先,为什么这种项目管理方法叫 Scrum ? Scrum 是一个引申词,原义是橄榄球场上的并列争球.橄榄球号称是美国的国球,受关注度最高,我们经常听到的超级碗 Super Bowl(/b??l/)就是它的年度冠军赛. 就像橄榄球运动极度强调团队协作一样,它是用于开发和交付软件产品的一个框架,且过程是增量和迭代的. 好,我们回到 Scrum 的角色划分. 基

《用户故事与敏捷开发》阅读笔记04

  <用户故事与敏捷开发>阅读笔记04 今天抽出了两个小时读了<用户故事与敏捷开发>的第十二.十三.十四以及十五章并写了这篇阅读笔记.第十二章标题为"故事不是什么".IEEE 830是一本关于如何编写软件需求规格的指南,最突出的特征是使用短语"系统应该.....",但作者认为以这种方式编写系统的所有需求实际是一个不可能的任务.因为用户看到正在开发的软件时总会有有效和重要的反馈循环.他们会改变之前的想法,而且每个需求的成本是不可见的,会造成分析

用户故事-匹配目标与角色

对于多数产品待办事项列表(product backlog)项,尤其是产品功能类,敏捷团队通常使用用户故事(user story)来表达预期的商业价值. 用户故事(user story)的格式通常如下: 简洁的格式可以帮助团队完成较好的用户故事(user story):容易让业务和技术人员准确理解.然而,有时候团队分配给用户角色的目标和利益,并不符合用户角色真实期望的需求和愿望.乍一看,这些用户故事(user story)写的很好,当从特定用户角色的角度去看时,发现并不正确. 我自己的一个例子.几

简洁的用户故事编写格式

对于多数产品待办事项列表(product backlog)项,尤其是产品功能类,敏捷团队通常使用用户故事(user story)来表达预期的商业价值. 用户故事(user story)的格式通常如下: 简洁的格式可以帮助团队完成较好的用户故事(user story):容易让业务和技术人员准确理解.然而,有时候团队分配给用户角色的目标和利益,并不符合用户角色真实期望的需求和愿望.乍一看,这些用户故事(user story)写的很好,当从特定用户角色的角度去看时,发现并不正确. 我自己的一个例子.几

敏捷实践(3)-用户故事

用户故事如何划分?如何落实到工作中? 用户故事的INVEST原则我是非常赞成的.(搜索了一个相关的说明,http://duweizhong.blogbus.com/logs/112151436.html) 但是要做到INVEST,实际上还是很不容易的.我接触到的常见问题是 1.不知道如何划分,无从下手 2.不知道划分的是否合适,是否满足INVEST原则 3.划分好后,如何跟踪story的进度 实际上这也是我刚接触敏捷时遇到的问题,这些问题,我个人的体会是"按照一些优秀实践的分享,自己亲自参与并实

用户故事与敏捷方法①

在读这本书之前,自己觉得有点好奇,用户故事指的是什么呢,读完之后,有了体会:用户故事描述了对用户.系统或者软件购买者有价值的功能.它由3方面组成:1>一份书面的故事描述,用来做计划和作为提示:2>有关故事的对话,用于具体化故事细节:3>测试,用于表达和编档故事细节且可用于确定故事何时完整. 它总共分为了五大部分来介绍: 第一部分是一些简单的概念或者使用故事的细节方面,比如如何编制用户故事,有哪些细节要求:在故事中找出用户角色模拟使用情节:怎样搜集到用户故事,通过各种途径:如何找到用户代理