规划极限编程阅读笔记03
一、我过去是怎么做的:
在规定时间内完成的项目,从未进行过软件开发估算,比如在开发Android的过程中,比如登录界面(包括修改密码、注册界面)这些做的比后面做得好,这是因为前面登录分配的时间过多,后面只能潦草的做了。
二、结合书中所讲,说明为什么这样不好:
1、软件开发估算:
如何提出估算,最出色的估算基于的是代编写的代码行。通过这些估算,你可以了解到开发这几万行代码需要花费多长时间,由于在开始编写解决方案之前精确的估算该解决方案的所需的代码行数非常简单,因此该方法非常有效。要进行有效的估算,应遵循三个要点:1、保持估算的简单性 2、利用过去发生的事情 3、从实践中获取经验。
要改进你的估算,有关估算的好消息是他往往能够改进,随着估算频率的增加,随着估算数值更接近实际,团队中每个人在估算方面都会越做越好,应鼓励这样的过程,不要对早起的估算期望过高,而是期望他们能够改进。
2、制定第一个计划:
现在,我们都对计划制定,计划发布的概况及其使用方法有了了解,应明确的一点是计划的精度取决于估算的精准度,而估算的精准度又取决于项目历史,第一个计划没有历史,因此估算便显得有些离谱,这将会把第一个计划弄成什么样子。选择迭代长度,赞成迭代开发的人有很多,但对这一问题的看法却不尽相同,有些人认为迭代可以有六个月之长。我们的观点却与之不同,迭代不应太长,一至三周足以。之后开始编程。
3、危险信号:
这里有一些常见的的不稳定因素表明计划中出现的问题,以及我们见到他们时应采取的行动。这些解决方案都是某种形式的“放慢速度,直到恢复控制在加速。” 缺少评估,客户部做出决策,缺陷报告,不能完整运行,失败的日常工作版本,客户不结束。
三、解决问题:
我们要取重舍轻,比如之前开发Android一样,应将后面的功能作为重要的方面,而前面的登录简简单单的做一下就行了,当然并不是说前面的部分不重要,在时间紧张的情况下,鱼和熊掌不可兼得,只能将最重要的东西分配更多的时间。