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

标签: scrum 实践 系列 | 发表时间:2015-07-19 10:34 | 作者:敏捷达人
出处:

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

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

一、什么是用户故事?

用户故事就是定义用户所需功能的文字描述,简单说就是用户的需求。一个好的用户故事包括三个要素:
1. 角色:谁要使用这个功能。
2. 活动:需要完成什么样的功能。
3. 商业价值:为什么需要这个功能,这个功能带来什么样的价值。

  用户故事

 

二、用户故事的描述

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

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

举例:

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

注意事项:

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

 

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

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

1、与任务的关联

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

2、与变更的关联

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

3、与测试用例的关联

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

4、与测试历史的关联

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

5、与缺陷(Bug)的关联

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

 

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

(注:部分图片来自www.ScrumArts.com ,可随意传播)


本文链接: Scrum敏捷实践之旅系列(一)用户故事概念,转载请注明。

相关 [scrum 实践 系列] 推荐:

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

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

Scrum的故事

- Philip - 《程序员》杂志官网
2001年2月,17位敏捷先驱齐聚犹他雪鸟度假村,起草《敏捷宣言》的时候,Scrum只是众多方法中不太起眼的一个. 十年之后,Scrum却成为最流行的敏捷方法,几乎成为敏捷的代名词. 本文来介绍下Scrum的两位创始人——Jeff Sutherland与Ken Schwaber. 大家可能不会想到,Jeff Sutherland的第一份工作居然是美国空军战斗机飞行员,还曾于1967年获得了“壮志凌云”称号,完成过100次飞越北部越南的作战任务.

scrum经验

- - CSDN博客研发管理推荐文章
Scrum是基于过程控制理论的经验方法,倡导自组织团队;其运行框架核心是迭代增量型并行开发,也是“适应性”的软件开发方法. Scrum提供了高度可视化的用于管理软件开发复杂性管理的敏捷项目管理的实践框架或敏捷过程,可以用于对现存软件工程实践的包装,提高软件生产率,改善沟通和合作的方法,使人们协作并注重业务目标.

Trello中的Scrum

- - IT瘾-infoq
Trello的用户数量近期超越了1000万的大关,它正迅速成为各色敏捷团队中流行的工具. 它的简洁及在Web、移动端优秀的体验,使它从众多更复杂的解决方案中脱颖而出,赢得了更多的团队. 因为Trello完全不在意用户如何使用,所以导致用户在用它进行Scrum过程最佳实践时产生一些困惑. 去年,我就如何使用Trello及对Scrum和Kanban过程进行管理与很多人进行了交流,同时,我还翻遍了网上所有关于使用Trello管理敏捷过程的文章.

用Scrum的方式实施Scrum

- - CSDN博客研发管理推荐文章
       用Scrum的方式实施Scrum就是说组织利用Scrum的流程来实现组织的转型. 要成功实施Scrum,必须在组织内进行两项主要改变:首先,软件开发人员必须被派到小团队中,还需要教会他们如何使用Scrum进行软件开发;其次,移除所有有碍于优化创新和软件交付的障碍,这些障碍会随着Scrum的使用逐渐显现.

Scrum 实施经验

- bluesnail - 新浪UED
Scrum是一种迭代式增量软件开发过程,通常用于敏捷软件开发. Scrum在英语的意思是橄榄球里的争球. 虽然Scrum是为管理软件开发项目而开发的,它同样可以用于运行软件维护团队,或者作为计划管理方法:Scrum of Scrums. Scrum定义了许多角色,根据猪和鸡的笑话分为两组,猪和鸡:.

Scrum中的QA(一)

- - ITeye博客
来自“Priyanka Hasija”的经验,她认为QA在Scrum中要做到:. ① 不仅仅是完成test case,还可以作为Product Owner的代理,完成Acceptance test,在PO没有时间的时候代替PO和团队沟通,甚至通过质疑各种假设等方式帮助PO明确需求. QA在复杂的用户场景和异常流程方面更有感觉,这些可以帮助开发人员做估算时不仅仅考量“happy path”.

Scrum中管理bug

- - CSDN博客研发管理推荐文章
如果bug来自于正在开发的sprint. 会在task阶段就被QA/Scrum Master/Product Owner标记为有bug,并且Story不能被置为done状态,这个很容易解决. 如果bug来自于已经结束的sprint,那么怎么办呢. 理想状态下是将bug放到backlogs中,然后由product owner调整其优先级,并决定放在后面的哪一个sprint中修复.