敏捷需求

用户故事和任务 | 敏捷小知识 | 敏捷家出品

定义

什么是用户故事

用户故事是一种敏捷的实践,帮助开发团队从写需求的视角切换到与客户交谈需求的视角。敏捷用户故事中会有1-2句话简要描述需求,更重要的是基于这几句话的一系列交谈。

用户故事是从最终用户(或客户)的视角出发,对于他们有价值的特性的简单描述。通常是如下的格式:

作为 <某类用户>, 我想要<达成某个目标> 由于 <某个原因>

什么是任务

a: a usually assigned piece of work often to be finished within a certain time
b: something hard or unpleasant that has to be done

任务的定义,来自于 韦氏词典

  1. 任务,通常是一定时间内要完成的、已分配的工作
  2. 任务,必须要做的,较困难的(令人不愉快的)的事情

这里的任务是通用的定义,在敏捷工作环境中,任务指的是团队为了完成用户故事而拆分更加细粒度的、功能模块的工作。

用户故事和任务的相同点

  • 用户故事和任务都是开发团队必须参与的
  • 用户故事和任务都是为了完成特性(feature)和产品的
  • 用户故事和任务,通常都是较难的、必须完成的工作
  • 用户故事和任务,通常都有截止日期(时间)的要求

用户故事和任务的不同点

  • 用户故事就像裤子,而任务就像内裤
  • 用户故事通常是解释特性的why,而任务通常是实现特性的how
  • 用户故事是面向用户(或客户)的,而任务是面向团队的
  • 用户故事通常是产品负责人(或客户)关注的,而任务通常是开发团队关注的 (注:开发团队也需要关注用户故事)
  • 用户故事通常是以用户的语言进行描述(通俗易懂),而任务通常偏向于技术语言描述(如用python实现某个算法)

社区的回复

  • 需求的价值版本描述和需求的BA-编程行为拆解? – 悟空
  • 用户故事用户能听懂,可以参与。任务是团队自己能理解的功能做拆解。用户故事可以是一个mvp,任务可能只是故事的一个部分,不完整。 – Bruce Wang
  • 任务是用户故事拆分后的子项,有指定的执行者 – 嘿,愉快的人儿啊
  • 用户故事是需求点描述。任务是拆分出来的,用以实现用户故事的条目,任务指导开发团队实施具体的工作。– Fiona W.Y
  • 用户故事是做什么,任务是怎么做 – 她来听我的演唱会
  • 故事管需求及协作沟通维度,Whole Team都要可理解,What or Why;任务涉及执行维度,在迭代执行中产生,是How的角度。– Junn熊
  • 用户故事是需求的描述,任务是实现需求的拆解。– No.1理想
  • 故事是要听的话,任务是要做的事。 把听到的话转换成要做的事,就是故事分解成任务 – 指南针
  • 用户故事 = 业务需求,任务 = 实现业务需求需要做的动作 – Carl
  • 先有故事,再分解任务,一个故事下可以分解包含多个任务 。任务 是具体可被执行的项目,站会上大家关注的就是 “任务”而不是故事 – 沙漠海

加入社区?

加入社区参与讨论?

敏捷需求游戏

游戏目标

这个游戏的目的是让“开发团队”根据“需求团队”写的书面需求文档创建一幅图形。

游戏步骤

  1. 每组对半分成2个小组。一半是“开发团队”,另一半是“需求团队”。最好是2个小组能地理上分开。比如一个小组在屋外,另一个在屋内。(注意:分组的时候可以让原来写需求的人做开发,而不写需求的人来写需求)

  2. (开发团队到屋外休息)需求团队留在屋内,给他们展示一幅图形。然后让需求团队在10分钟内根据图形写出需求。

  3. 需求写好之后,开发团队进屋,需求团队到屋外休息。(注意:开发团队和需求团队的成员要一一对接,即找到自己的接口人)

  4. 开发团队根据写好的需求进行开发,时长10分钟。开发团队如果对于需求有问题,可以给需求团队写邮件沟通(写好之后由引导师送信)。写信的内容只能是文字沟通,不能用图形,数字或者符号。

  5. 需求团队和开发团队不能进行口头沟通或者暗示等。

  6. 所有的需求必须是以文字形式描述。不能用图形,符号或数字。

  7. 需求文档要求尽可能的详细。

  8. 开发团队完成后,大家一起评审结果。

原文:https://www.bigvisible.com/2010/11/spec-writing-game/

游戏中用到的图形可以参考附件:Specification Exercise_oppgaveomkravformidling1