前文介绍了可供选择的各类开发方法以及各自特点(点击可查看熊玥老师文章合集),本文接下去继续介绍如何选择各类开发方法。
我们必须知道要为项目中的可交付物选择合适的开发方法,其实并不简单。既要熟悉各种开发方法(瀑布、迭代、增量和敏捷),又要了解产品及关于项目和组织的一些背景信息。尽管不可能有位每个可交付物提供的完美方法的捷径,但有一些指导性的原则可以帮助我们评估适合项目的正确方法。
接下去我们从下面的各类变量来讲解如何选择适合于可交付物的开发方法。
为什么我们先从产品变量开始介绍,因为产品的这些变量关系到项目将交付的范围和成果。当我们为每个可交付物评估最合适的开发方法时,我们需要审查以下8个产品变量。创新时需要考虑你在项目中使用的技术和方法是新的、未经测试的,还是已知的和标准化的。使用你熟悉的方法和过程用瀑布开发方法可能更加有效。尖端技术或实验过程使用适应型方法可能更加有效。举例说明,一个重建9个社区的项目不需要任何创新。技术和方法都是众所周知的,所以像这种项目就很适合采用瀑布开发方法。相反,要想打造一个在零重力环境下可以持续使用10年的电池,就需要重大创新。因此,这种类型的项目适合采用迭代和增量开发方法。团队需要大量的创造力和实验能力,并尝试不同的方法来实现预期的结果。如果你项目的可交付物有的是已知的,有的则是新的,那混合方法就很适用。我们可以先使用适应型方法,直到我们测试过着像技术并适应了它,然后换成支持已知技术的流程项目客户改变主意、添加新功能或提出不同要求的可能性有多大。如果我们正在做一个范围固定且不太可能变更的项目,比如在住在开发中布置园林景观,我们就可以采用瀑布开发方法。相反,如果项目的客户是善变的或者有很多需要尝试的新想法,如重塑一条产品线,那么我们就应该考虑采用一种适应型方法。我们可能正在做的一个项目,其中有些可交付物是稳定的,有些则是可能会发生变化。在这种情况下,灵活的混合方法就是一种不错的选择。另一种选择则是先使用适应型方法,直到范围稳定了,这时我们再使用瀑布开发方法。需求确定性与范围稳定性有关,但两者还是略有不同,按照PMBOK第七版对于需求的定义,需求就是为了实现项目目标而必须具备的能力或必须满足的条件。简单点说,范围是你要交付什么,需求是为实现项目目标必须具有的能力或必须满足的条件。有些项目从一开始就有非常明确的需求,例如,建造一个三层楼高、可以容纳500辆车的停车场。这种有明确需求的项目适合采用瀑布开发方法。许多项目在开始时并不知道全部的需求。项目团队期望整个项目中添加新需求并让需求不断演变。针对高端信用卡客户打造礼宾服务的项目可能会从一些高层级概念和想法开始,但随着服务的推出,这些需求可能会根据用户的要求和反馈而演变和变更。当需求不确定或容易发生变化时,使用适应性方法来测试不同的需求或需求集是启动项目的好方法。一旦有了更多的确定性,我们就可以更多地使用瀑布开发方法。我们也可以记录和管理确定的需求,同时使用适应型方法来灵活处理那些可能会发生变化的需求。我们项目人其实都知道,“变”是生活的常态,在项目中尤其如此。但并不是所有的项目都能轻易地吸纳变更。比如创建电子绩效仪表板的项目可以相当容易地吸纳范围或需求的变更。这种类型的项目非常适合采用适应型方法。一个建造桥梁的项目就不能很好地应对变更。对于这类项目,你想在开始施工前确保所有的参数都准确无误,因为任何变更都可能非常耗时和昂贵!因此我们就需要采用瀑布开发方法,在开始施工前就锁定范围和设计。为了解决项目中既有容易变更的可交付物,又有不易变更的可交付物的情况,我们可以把可交付物进行分类,容易变更的就采用适应型方法来管理,不易变更的就采用严格的变更控制流程来管理,这也是瀑布开发方法的标志。另一种选择就是允许变更并尽可能晚地做决策,然后在某个时间点锁定产品,这之后就不再允许再有任何的变更了。
限于篇幅,本文就先到这,后面的文章更加精彩,敬请期待!
PMP、ITIL、PRINCE2、Practitioner、PMI-ACP、ScrumMaster、PMI会员;世界500强企业资深项目经理,丰富的项目管理经验,海外项目投产工作;中国知名企业内部的项目管理培训师,培训学员通过率接近100%;喜马拉雅累计用户超40万,用户口碑优秀,听众称其为“可以让耳朵怀孕的声音;
本文讲解的PMBOK第七版正是PMP考试的教材之一