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

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

进行估算时尽可能整个团队都进行参与,估算时需要客户将故事读给开发人员,开发人员要根据需要尽可能向客户提问,客户进行回答,如果不能回答需要另作处理。之后开发人员根据情况进行估算,经过几轮的讨论所有人达到一致。之后为了验证团队对故事点含义没有发生改变需要进行三角测量(即将故事按照估算的故事点数分类,查看各个故事的故事点数是否正确)。对于结对编程的团队来说可以以理想结对日或理想个人日来估算故事点,二者的区别只在于素速率值(一轮迭代中完成的故事点数)不同。

使用故事点时要正确使用需注意以下几点:1、每个团队对自己的故事点的定义是不同的,不能相互比较;2、如果一个故事被分割成多个小故事,小故事估算的故事点总和不必与大故事相同。

进行完估算后项目开始进行,在项目过程中需要进行产品的发布,所以制定发布计划就是必不可少的过程。

理想情况下,开发人员应该与客户谈一个发布的日期范围而不是一个具体的时间,所以发团队制定发布计划应该以一个可接受的日期范围为起点,以此来保证发布时间的灵活性。发布计划中还应包含有要发布功能,而这些功能取决于用户排列的故事的优先级,优先级较高的故事中包含的功能应该优先发布。而对于故事的优先级的排序是一个非常冗长复杂的过程,可以借助DSDM方法来排列。故事的排列顺序要从多个维度进行考虑:1、故事如果不能如期完成会有怎样的风险;2、推迟实现一个故事时给其他故事可能带来的影响;3、故事完成所需的成本;4、根据架构的需要;客户进行排序时则会考虑:1、故事对于客户的重要性;2、故事对于少数用户重要性。

项目过程中迭代长度要设置的尽可能短,方便项目随时进行调整,便于对项目进度的观察,并且尽量保持固定的迭代长度,有利于团队的开发速度。

所以在项目开始之前要对故事点进行估算,按照优先级分配到相应的迭代长度,每个迭代长度要尽可能短,发布计划应该以一个可接受的日期范围为起点,包括相应的功能。

时间: 2024-10-18 13:59:49

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

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

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

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

每一轮迭代完成之后需要开迭代计划会议为下一轮的迭代计划.迭代计划会议包括:1.讨论故事:2.从故事中分解出任务:3.开发人员承担每个任务的职责:4.以上3项完成之后每个开发人员对其任务量估计,尽量保证自己领取的任务在下轮迭代结束时可以完成. 讨论故事:开发人员充分理解故事,在其中分解出任务:需要理清故事的关键细节. 从故事中分解出任务:因为一个故事有可能由几个程序员一起承担,所以要将故事分级成更小的单位:而且分解任务的过程还可以发现以前被忽视的细节. 开发人员承担每个任务的职责:开发人员自己领取

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

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

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

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

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

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

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

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

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

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

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

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

敏捷开发方法(一) Scrum

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