用户故事与敏捷开发方法笔记05

每一轮迭代完成之后需要开迭代计划会议为下一轮的迭代计划。迭代计划会议包括:1、讨论故事;2、从故事中分解出任务;3、开发人员承担每个任务的职责;4、以上3项完成之后每个开发人员对其任务量估计,尽量保证自己领取的任务在下轮迭代结束时可以完成。

讨论故事:开发人员充分理解故事,在其中分解出任务;需要理清故事的关键细节。

从故事中分解出任务:因为一个故事有可能由几个程序员一起承担,所以要将故事分级成更小的单位;而且分解任务的过程还可以发现以前被忽视的细节。

开发人员承担每个任务的职责:开发人员自己领取想要承担的任务,在项目中如果有人不能完成任务,其他人应该用于去承担他的一部分任务。

估算并确认:每个人对自己承担的任务进行故事点的估算,如果估算出来自己有可能完不成任务可以有3个选择:1、接受事实;2、求助别人承担自己的一部分任务;3、与客户讨论放弃一个故事。

在迭代过程中通过开发人员的完成情况估计出项目的速率是一个非常重要的度量,有了速率就便于随时调整项目的进度。所以怎么准确的测量出项目的速率就变得很重要。每一轮迭代的速率即迭代中完成的故事总点数(即通过验收测试的故事的总点数,但是不能计算没有完成的故事),往往要经过2~3轮迭代才会得到一个长期的、相对稳定的速率。为了保证的速率的合理性以便更好的监控进展,可以监测实际速率和计划速率的偏差、或者画迭代燃尽图(以故事点表示每轮迭代末剩余的工作量)。

用户故事以其独有的特性在项目中发挥着作用,它不再是死板的文档中晦涩难懂的专业术语,而是记录客户对于功能的描述的对话。所以它相对于以往的需求方法有着很多的长处,而一些人对其有些误解。

首先用户故事不是IEEE830:它的建议覆盖了如何整理需求规则文档、角色原型和良好需求的特征等主题最突出的特征是“系统应该……”。这种需求方式乏味、容易出错,而且非常费时,所以读者会略过很多内容,导致读者无法理解全局。IEE830描述的是需求列表,且需求成本不可见;而用户故事描述的是用户目标,从客户角度关注新产品的目标而不是新产品的特征列表,且每个故事开始都会有一个估算,客户知道团队的速率,也知道每个故事的点数。其次用户故事不是用例:用例是对系统之间以及一个或多个用户之间交互的一般性描述,使用者是用户或另外的系统;用户故事的范围相对用例来说要更小一些;故事相对于用例的完整性也要小,用例相当于故事和验收测试的集合;二者目的也不同,用例为了记录客户和开发团队的协议而故事为了方便发布计划和迭代计划。最后用户故事不是场景:场景包含更多的细节,通常涵盖多个故事。

用户故事虽然不是最好的需求方法但相对于其他需求方法范围更小,而且其对客户可见,所以客户便于可以计算出项目的速率便于获取项目的进展情况。

时间: 2024-10-16 18:38:51

用户故事与敏捷开发方法笔记05的相关文章

用户故事与敏捷开发方法笔记06

用户故事得到这么多人的肯定,是因为它自身的优势有很多:1.用户故事强调口头沟通,因为传统的通过各种文档进行表达,每个人对于文字的含义的理解都不同,所以在阅读文档的过程中可能会因为理解的不同对项目的完成造成影响:2.人人都可以理解用户故事,并且用户故事可以增强人们对各种事件的记忆:3.用户故事的大小适合做发布规划以及进行编程和测试:4.用户故事适合于迭代开发,项目过程中可以写出一部分故事然后就进行编码和测试5.用户故事鼓励延迟细节:6.用户故事支持随机应变的开发,因为用户故事注重口头交流,而且很容

用户故事与敏捷开发方法笔记04

因为需要将每个用户故事按重要性分配到相应的迭代过程,所以每个迭代过程的时间就可以根据用户故事大致估算出来,所以要学会估算用户故事所需的时间.估算用户故事可以采用故事点估算的方法,这种方法的优点就是团队可以定义自己认为合适的故事点,可以根据自己团队的情况具体定义,比较灵活.正因为这个原因,有的团队倾向于用理想时间,有的团队则倾向于使用模糊时间.估算的主要目的之一是知道整个项目的工作量,通常将估算量换算成时间,而模糊时间需要考虑项目过程中可能出现的情况,所以采用理想时间更为简单. 进行估算时尽可能整

用户故事与敏捷开发方法笔记03

每个迭代过程后需要进行验收测试.验收测试有两个流程:1.将测试要点记录在故事卡的背面,任何时候发现新的测试,都可以记录下来:2.将测试要点变成全面的测试,这些测试用来演示故事已正确.完整地实现.而且故事卡上写有测试的一些内容会提醒程序员在实现的时候该注意什么,所以为了让程序员尽早了解测试的内容,应该在为这个故事编写代码前开始制定验收测试.测试应该由客户自己或客户与程序员和测试人员一起制定.为了测试更加的全面测试可分为一下几种类型:1.用户交互测试,确保所有用户交互组件如期工作:2.可用性测试,确

用户故事与敏捷开发读书笔记01

软件需求是一个软件项目成功的关键因素,许多软件项目失败都是因为软件需求的“不完整.不准确.不一致”.而软件需求是从业务需求经用户需求最终得到系统需求的,所以业务需求是软件需求的源头,而业务需求又是从客户业务中来的,客户有问题且需要解决的业务才是业务需求.所以准确.完整的根据用户的描述获取用户的业务需求至关重要.从软件开发的角度入手,使用用户故事,从用户角度描述功能,让我们可以从用户角度出发思考问题,避免程序员的自以为是,使得业务需求更加的准确.完整. 用户故事描述了对用户.系统.或软件购买者有价

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

 <用户故事与敏捷开发>阅读笔记02       这周读了<用户故事与敏捷开发>的第四至七章,第四章讲述的是如何搜集故事,也就是如何正确的去找到用户需求.作者明确指出"引用"和"捕捉"是不合用的.所谓"引用"和"捕捉",我想是通过用户对功能的表述,开发人员从中获取需求信息吧.如果是这种方法来获取需求,正如作者所说,用户不会知道所有的需求,所以只靠着这方法是远远不够的.对于故事编写的数量以及程度,作者认为

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

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

用户故事与敏捷方法读书笔记02

开发软件可以通过编写用户故事来确立开发的目标和方向.而在编写故事前首先要对所有用户进行分类,根据角色的不同属性进行分类.步骤为:1.通过头脑风暴,列出初始的用户角色集合:(要坚持‘已确认的角色代表的是单一用户’的原则)2.整理最初的角色集合:(确认角色之间的关系:用户角色定义的是人而不是外部系统)3.整合角色:(对于完全重叠的用户进行重新定义,舍弃对系统成功作用不大的角色)4.提炼角色(根据角色特征来建立角色的模型). 编写故事之前需要搜集故事,通过与用户沟通来发现故事.可以像用渔网捕鱼一样获取

《用户故事与敏捷方法》阅读笔记01

用户故事与敏捷方法第一章是对用户故事的概览.      首先第一个问题用户故事是什么?用户故事描述了对用户.系统或软件购买者有价值的功能.用户故事由三个方面组成,包括1 .一份书面的故事描述,用来做计划和作为提示.2.有关故事的对话,用于具体化故事细节.3.测试,用于表达和编档故事细节且可用于确定故事何时完成.      然后第二个问题细节,故事的细节可以用另外的用户故事来描述,多个小故事远远胜于一个庞大的故事.书上将大的故事成为史诗故事,那些史诗故事可以分为多个小故事.例如将"用户可以搜索工作

敏捷开发方法(一) Scrum

Scrum团队:由产品负责人.开发团队和Scrum Master组成. 是跨职能的自组织团队 自组织团队自己选择如何最好地完成工作,而不是由团队外的人指导 跨职能团队拥有完成工作所需要的全部技能,不需要依赖团队以外的人 这种团队模式的目的是最大限度地优化灵活度.创造力和生产效率 三大角色: Scrum管理-五事件 Scrum 管理: 所有事件是有时间盒限定的 每个事件都有时间限制的 一旦Sprint开始,它的周期也就固定下来了,不能缩短或者延长 Scrum 管理五事件包括: Sprint 计划会