浅谈敏捷思想-03.生命周期的选择

生命周期的选择

项目团队需要关注多种项目生命周期的特征和方案,以选择最可能使项目成功的方法。

迭代 vs 增量

迭代和增量是项目生命周期中两个重要概念,但是对于初学者来说,可能会混淆二者概念。

迭代,是指实现功能时反复求精的过程,是提升软件质量的过程,是从模糊到清晰的过程。

增量,是强调软件在发布不同的版本时,每次都多发布一点点,是软件功能数量渐增地发布的过程。

通过下图可以直观对比两者的区别:

浅谈敏捷思想-03.生命周期的选择

迭代 vs 增量

四种生命周期

敏捷实践中提到的四种生命周期,分别是预测型生命周期迭代型生命周期增量型生命周期敏捷生命周期

预测型生命周期

这是一种更为传统的方法,提前进行大量的计划工作,然后一次性执行;执行是一个连续的过程。强调根据部门划分的,有效的,顺序的工作;不会再结束前交付商业价值;遇到变更,产生意想不到的成本。

浅谈敏捷思想-03.生命周期的选择

预测型生命周期

迭代型生命周期

这种方法允许对未完成的工作进行反馈,从而改进和修改该工作。项目复杂性高,变更频繁,项目氛围收到相关方对所需最终产品的不同观点支配时,采用迭代生命周期更有优势。

浅谈敏捷思想-03.生命周期的选择

迭代型生命周期

增量型生命周期

这种方法向客户提供各个已完成的, 可能立即使用的可交付成果。少量可交付成果的频分交付,确保客户能尽早获得价值。

浅谈敏捷思想-03.生命周期的选择

增量型生命周期

适应型生命周期 / 敏捷生命周期

这种方法既有迭代,也有增量,便于完善工作,频繁交付。增量交付会发现隐藏或误解的需求。敏捷生命周期是符合《敏捷宣言》原则的周期。特别是,客户满意度将随着有价值产品的早期交付和持续交付不断提升。此外,功能性的、提供价值的增量可交付成果,是衡量进展的主要尺度。 为了适应更频繁的变更,和更频繁地交付项目价值,敏捷生命周期结合了迭代和增量方法。

基于迭代的敏捷

团队以迭代相等持续时间的时间盒形式交付完整的功能;团队不会同时完成所有迭代工作。

浅谈敏捷思想-03.生命周期的选择

基于迭代的敏捷

基于流程的敏捷

从待办事项列表中提取若干功能开始工作,而不是按照基于迭代的进度计划开始工作。团队定义任务板各列的工作流,并管理各列的进行中的工作。完成不同功能所花费的时间可能有所不同。团队让进行中的工作的规模尽量小,以便尽早发现问题,并在需要变更时减少返工。无需利用迭代定义计划和审核点,而由团队和业务相关方决定规划、产品评审与回顾的最适当的进度计划。

浅谈敏捷思想-03.生命周期的选择

基于流程的敏捷

混合型生命周期

对于实际项目,没有必要坚持使用单一的方法,可以结合现状,调整项目的生命周期。

生命周期对比
浅谈敏捷思想-03.生命周期的选择

生命周期对比

适用性评估雷达图

浅谈敏捷思想-03.生命周期的选择

适用性评估雷达图

参考资料

[1] Project Management Institute.《敏捷实践指南》