用户故事与敏捷方法

第一章 概览

»什么是用户故事?

用户故事描述了对用户、系统或者软件购买者有价值的功能。核心是有价值的。

用户故事包括以下三方面:

 »细节在哪里?

用户故事分大小,很大不行,史诗级的用户故事,可以进一步拆分成小故事,特别小也不行,故事细节不如大家一起讨论。用户故事不用像需求文档一样扩充。

»必须多少时间完成?

记录用户期望,然后用测试验收的方式检查,是否已经完成。测试描述可以不完整,可以简短,可以随时添加,目的是让开发人员知道什么时候是结束。

有点类似老师在练习册上留作业,告诉你做到哪里,什么时间完成。

»客户团队

指所有的关系人。开发、测试、交互、产品经理、实际用户、客户等等。解决了这些人的所有问题,基本上,软件系统的问题就解决了。

»使用用户故事的过程是怎样的?

»规划发布和迭代

发布规划应该是项目时间和预计功能集合之间的平衡。

迭代规划应该是。。。???

计划需要考虑成本。迭代需要考虑研发速率,结合优先级进行迭代计划的安排。

»什么是验收测试?

测试也可以捕获项目预期,提前写好测试例子,进行测试,是可以跟开发同时进行的。

»为什么要变?

用户故事将重点从文档转移到了对话。

 

»小结

 

第二章 编写故事

好故事应该是独立的、可讨论的、对客户有价值的、可测试的、小的、可估计的,六点特征。invest

»独立的

好故事应该是减少依赖的,当遇到依赖性强的故事时,可以采取以下三种方法:

1.两个依赖的故事合并成一个独立的稍微大点的故事

2.用不同的方式切割

3.可以进行估计。当a比b先做的时候,估计一个a的工作天数,当a比b先做的时候,估计一个a的工作天数。

»可讨论的

故事是可以讨论的,故事是功能的简短描述,它不是具体的需求本身,会记录一些重要的需求细节,但是不是全部的。如何恰如其分的描述需求细节很重要。

把细节加入到故事是一条原则。

但是在需求讨论阶段,考虑太多细节问题,会导致一种错觉:故事卡反映了所有问题,不需要跟客户进一步讨论了

 

????有疑问,再细化研究吧

»对用户或者用户有价值的

用户vs客户

注意:隐含测试细节的用例要和用户故事本身分开。尽量避免用户故事中出现用户界面、技术方面的定义。

用户故事不是承诺,是。。。

»可估计的

是对开发人员说的,估计一下故事的大小。

以下是会影响估计的

1.开发人员缺少领域知识:应该参与故事的讨论,对故事有大概的了解,不用对故事的细节了解很深。

2.开发人员缺少技术知识:可以实施极限编程里面的探针实验。

3.故事太大:需要继续分解;或者可以标记成占位符,有待讨论的大功能。

»小的

史诗级故事分为两种:复合故事、复杂故事。故事的大小取决于具体的团队。

复合故事:多个小故事凑在一起。分解这类故事可以采取多种方法。比如根据动作来区分,增删改查;也可以根据数据边界进行分解。

复杂故事:一般是不可以分割的。对于一些,因为 未知性导致的复杂故事,可以多次迭代进行分解。调研类的故事可以先放第一,不跟其他故事一起进行。

对于太小的故事,需要合并。比如缺陷类故事、调整界面颜色。。。

»可测试的

对于大多数故事都是可以测试的,不能测试的一般是非功能性需求;998%可测试的都在追求自动化测试。

»小结

 

 

 

第三章  用户角色建模

»用户角色

»角色建模的步骤

★通过头脑风暴,创建初始的用户角色集合

★整理最初的用户角色集合

★整合角色

★提炼角色

——--------------------------------------------------------------------------------------------------

»通过头脑风暴,创建初始的用户角色集合

注意:一个用户角色是一个用户

»整理最初的用户角色集合

posted @ 2017-06-06 17:58  车厘子123  阅读(568)  评论(0编辑  收藏  举报