3. 生命周期选择
3.1 项目生命周期
项目的固有特征决定其更适合采用什么类型的生命周期。但是没有某种生命周期可以完美适用,项目可以在连续区间中找到某点实现最佳平衡。
3.1.1 预测型生命周期的特征
• 强调根据部门划分的、有效的、顺序的工作。
• 从高确定性的明确需求、稳定的团队和低风险中获益;如遇变更或需求分歧可能产生意想不到的成本。
3.1.2 迭代型生命周期的特征
• 通过连续的原型或概念验证来改进产品或成果:每一个新的输出带来新的相关方反馈,然后团队根据这些见解在下一周期重对项目活动进行返工。迭代有利于识别和减少项目的不确定性。迭代型生命周期可能需要更长的时间,因为它是为学习而优化,而不是为交付速度而优化。
• 什么情况下采用迭代型生命周期:项目复杂性高、变更频繁或当项目范围受到相关方对所需最终产品的不同观点的支配时。
3.1.3 增量型生命周期的特征
• 与一次交付一个最终产品相比,增量型生命周期可以更快地交付价值:为客户提供一个单一功能或是交付一项完成的工作。随着项目继续团队可能会偏离最初的设想,但由于可以更快地交付价值,因而团队可以管理偏差。
• 什么情况下采用增量型生命周期:客户无法等待所有事情全部完成,愿意先接受整个解方案的一个部分。
3.1.4 敏捷生命周期的特征
敏捷生命周期结合了迭代和增量方法,分为两种类型:
(1)基于迭代的敏捷:
• 团队以迭代(相等持续时间的时间盒)形式交付完整的功能。团队集中于最重要的功能,作为一个团队合作完成其工作。然后再集中于下一项最重要的功能,并合作完成其工作。团队可决定一次进行若干功能的开发工作,但团队不会在完成全部分析工作后再解决所有需求。
• 时间盒:一个比较短且固定长度的时间段。
(2)基于流程的敏捷:
• 团队根据自身能力,从待办事项列表中提取若干功能开始工作,而不是按照基于迭代的进度计划开始工作。完成不同功能所花费的时间可能不同,团队让进行中的工作规模尽量小,以便尽早发现问题,并在需要变更时减少返工。无需利用迭代定义计划和审核点,而由团队和业务相关方决定规划、产品评审与回顾的最适当的进度计划。
3.2 该选择何种生命周期?
项目管理的目标是在给定的当前环境下尽可能以最好的方式创造商业价值。项目采用何种方法无关紧要,关键的是:“怎样做才能最成功?”
对于整个项目没有必要使用单一的方法。为达到特定的目标,项目经常要结合不同的生命周期要素。
(1)混合生命周期:
当项目可以从敏捷方法中受益并且项目的开发部分中存在不确定性、复杂性和风险时,可以使用这种方法,然后是一个明确的、可重复的发布阶段,该阶段适合采用预测方法进行,可能由不同的团队实施。
(2)结合敏捷和预测的方法:
当团队向敏捷过渡时,可在整个生命周期中结合使用敏捷和预测法。
(3)以预测法为主、敏捷方法为辅的方法:
可以使用敏捷方法处理具有不确定性、复杂性或范围蔓延机会项目的一部分,而使用预测法管理项目的其余部分。
(4)以敏捷方法为主、预测法为辅的方法:
当某个特定要素不可协商,或者使用敏捷方法不可执行时,可能会使用这种方法。