迭代、进化、敏捷1

1、相对于“瀑布”生命周期,迭代和进化式开发对部分系统及早地引入了编程和测试,并重复这一循环。这种方式通常

在还没有详细定义所有需求的情况下假设开发开始,同时使用反馈来明确和改进演化中的规格说明。


2、迭代开发中,我们依赖于短时快速的开发步骤、反馈和改写来不断明确需求和设计。相比之下,瀑布模型提倡在编程

之前就预先完成需求和设计。


3、一直依赖,瀑布模型总是和软件项目的高失败率具有极大关系。


4、UP(Unified Process)已称为一种流行的构造面向对象系统的迭代式软件开发过程。特别是RUP(Rational Unified

Process)是对统一过程的详细精化,并已被广泛采纳。


5、 UP是十分灵活的,并且鼓励引入其他迭代方法中的有用的实践,例如极限编程(Extreme Programming,XP)、Scrum

等。例如UP中引入XP的测试驱动开发(test-driven development)、重构(refctoring)、持续集成(continuous

integration)等实践。


6、UP把普遍认可的最佳时间(例如迭代生命周期和风险驱动开发)结合起来,成为联系紧密并具有良好文档的过程描述




7、迭代开发是UP和大多数其他现代方法中的关键实践。在这种生命周期方法中,开发被组织成一系列固定的短期(如三

周)小项目,称为迭代。

8、迭代生命周期基于对经过多次迭代的系统进行持续扩展和精化,并以循环反馈和调整为核心驱动力,使之最终成为适

当的系统。随着时间和一次一次迭代的递进,系统增强式地发展完善,这种方法称为“迭代和增量式开发”或“迭代和进

化式开发”。

9、迭代和进化式开发抱着接受变更和改写的态度,并以此为真正本质的驱动力。这并不是说迭代开发和UP提倡不受控制

的过程。迭代一方面认同和稳定一组需求,另一方面接受需求不断变更的事实。

10、每次迭代选择一小组需求,并快速开发、实现和测试。

11、这种早期反馈具有极高价值。迭代实在一系列有序的构造、反馈、调整循环中向前进展的。随着迭代次的递进,系统

向着预期的方向发展,需求和设计的不稳定性随着时间逐渐下降。

12、一次迭代时间控制在2-6周。小步骤、快速反馈和调整是迭代开发的主要思想。迭代时间过长会破坏迭代开发的核心动机并增加项目风险。

13、迭代的一个关键思想是“时间定量”,或时长固定。例如,假设一次迭代的时间为3周,则必须按照时间表来集成、测试和稳定局部系统,推延时间则违约。如果看起来难以满足期限要求,那么建议从本次迭代中除去一些任务或需求,并将其分配在将来的迭代中,而不是推迟完成日期。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值