计划变更管理
 
2009-01-15 作者:乔东 来源:mypm.net
 

计划变更管理,是企业中项目管理思路的集中体现,也是企业项目管理手段的集中体现,对企业整体的项目管理能力具有关键性的作用。

1,计划变更的必然性及其目地

大家都知道,项目本身具有临时性、独特性的特点,而且项目过程也是个逐步优化、完善的过程。

项目的临时性、独特性的特点,说明了不同项目过程之间必定存在着差异,因而不同项目的过程不可能完全一样,也就不可能在一个项目当中完全重现另外一个已经完成的项目的全过程。这一点与那些以复制为主的运营式管理是有很大区别的。因此,每个项目都必须根据自身的实际特点来制定适合的项目计划。

项目的计划是为了实现项目目标的要求,根据已经获得的项目相关信息,对未来项目过程所做出的假设,如果相关信息越全面、越真实,相关环境越稳定,这种前瞻性的假设也就越可靠,与将来的实际差异可能也就越小。假设本身具有不确定性,加之当今外部环境的变化无常,包括外部市场或客户的需求、企业内部的管理环境、项目组中的人员变动等各种因素,都使得这种假设的不确定性更加增大。只有到项目完全结束后,项目的整个过程才是完全确定的。这就是所谓的项目的动态性特点。因此,就需要在项目的实际过程当中,通过计划变更,根据当前最新的项目进展情况,随时对项目计划做出适应性调整,不断的使项目计划更贴近于真实情况,尽可能降低计划与实际的差异,以保证对项目全过程的有效控制,实现对项目的管理。

另一方面,在项目初期制定项目计划时,由于对相关项目信息的掌握不充分、不具体,而且还有可能是后续阶段的项目任务需要根据前期阶段的工作成果才能进一步具体安排,所以难以把项目过程中一段时期以后的计划做得非常具体。因此,在制定项目计划时,经常会在总体的里程碑计划的框架下,分阶段制定某阶段内的详细计划。前一个阶段结束了,再根据前一阶段的结果制定下一阶段的具体计划。这样,在整个项目的过程当中,每一阶段计划的细化,其实也是对整个项目计划所做的变更。通过变更手段,避免在项目初期信息不充分的情况下制定无谓的远期详细计划,但又能在项目进程当中根据项目的进展情况及时制定出可行的详细计划,以支持项目管理的需要。

因此,在一个项目过程当中,对计划进行变更是必然的。根据以往的经验,各方面都要对计划变更给以足够的重视,通过对计划变更的管理起到控制项目的作用。

计划变更过程通常要满足以下的管理要求:

(1) 确定变化的发生,制定相应的对策。

在变更管理中,一个首要的内容就是确定变化的发生。项目中出现的各种问题,往往都是有前兆的,特别是如果能够做好风险管理,就可以对可能出现的问题进行预防。但是,只有到了风险演变成为实际问题时,才能够对计划进行变更并按照新的计划执行。因此,正式的计划变更,就意味着变化确实已经发生。管理者针对这一变化必然要采取相应的行动,就要对原有的项目计划进行调整,调整后的计划应该能够适应变化后的项目要求。因此,无论是在项目内部的个别调整,例如因为某人的临时请假或任务实际工期变化而对具体项目活动安排的调整,还是在公司级的调整,例如由于需求变更导致项目范围、工期、成本的大幅变化,首先都是要确定变化是否已经发生,并针对变化制定相应的对策,更新项目计划。在变化尚未实际发生前,各方可以对风险进行跟踪并准备应对措施,但此时只能是应变的准备,但绝对不能在变化尚未实际发生前进行计划变更。

(2) 就变化对项目所造成的影响和对策达成一致,形成新的项目基线。

最初制定的项目计划,一般都是通过客户和公司批准的,项目计划得到批准就意味着客户和公司接受了项目管理者对范围、工期、资源、成本、质量等方面的承诺,同意投入相应的资源,这就形成了项目的基线,是相关各方共同遵守的约定,是对项目进行协调、监控、考核的依据。

整个项目计划的基线是由若干指标组成的,每个指标本身也是基线,都可以单独调整。例如项目中的范围基线、产品定义的基线、时间进度基线、资源基线、成本预算基线等,所有这些基线共同组成了整个项目的基线。当项目计划发生变更时,可能许多具体指标的基线都会发生变化,也可能只有个别指标的基线发生了变化。

不同的管理层面有不同的基线,公司会在需求范围、里程碑进度、整体预算等层面上设定基线,而项目组则会在此框架下,在项目组内部形成用于日常管理的详细计划的基线,用来协调和监督项目的具体进展。因此,针对同一个项目计划,可能存在着多个基线,不同管理层可能有不同的基线,不同时期可能有不同的基线。当变更只影响到项目组内的基线,不影响公司级的项目基线时,项目组内部就需要形成自己新的基线,作为项目组内部管理的依据。如果影响到了公司级的基线,那么更新后的项目计划就需要在公司级重新得到批准,才能形成新的项目基线。同样,只有在变更中影响到了客户的基线,才需要与客户商讨基线变更的问题,这通常都会伴随着合同变更。因此,项目中可能存在着多条项目基线,项目经理要洞悉不同管理层次之间的基线的关系,明确项目经理的权限范围,协调好公司层面的限制条件和项目内部控制之间的关系。

(3) 通过发布更新的项目计划,协调项目内、外各相关方的工作以保持同步。

项目组就如同一个乐队,项目计划就是乐谱,项目经理就是指挥,项目的所有干系人就是乐队中的演奏者,乐谱使得整个乐队能够分工、配合,在演奏中能够协调一致,这就是项目计划的重要作用。计划必须要发布给所有参与项目的人员,而非只是项目经理的工具。更新后的项目计划,需要向所有干系人发布,以便相关各方能够及时了解,调整各自的工作安排,以保持项目组内、外各相关方的工作,能够始终以项目计划为纽带保持同步,从而实现项目组内部的全体工作人员和项目外部各相关方面的整体配合。例如在项目组内部对工作安排进行了调整,就要在项目内部及时发布,在公司层面进行了计划变更,也要向全公司乃至客户发布。

2,计划变更应包含的内容

计划变更是对原有计划的调整,所形成的结果仍然是项目计划,所以计划变更所涉及到的内容与制定项目计划时是相同的,下图是“计划过程”图,说明了制定项目计划时所涉及到的内容,以及这些内容之间的依赖关系。

在该图中,项目计划主要包含了项目的范围、时间、资源、成本等内容,这些内容综合在一起形成了项目整体计划的项目时间表和项目成本预算这两个组成部分。同时,在项目管理当中涉及到了质量管理、人力资源管理、沟通管理、风险管理、采购管理等辅助的管理要求,最终也将具体体现为项目计划中的范围、时间、资源、成本等具体内容中,成为项目整体计划的一部分。因此,在进行项目计划变更的时候,也要按照同样的步骤和方法,审视变化对项目所造成的影响,如果只是直接成本的变化,那么也许只需要变更项目预算即可,如果是工期的变化,就可能对资源、成本都会产生影响,如果项目范围发生了变化,那么就必然会对时间、资源和成本都产生影响。这与CCB对维护任务影响范围的评估有些类似,如果只影响到详细设计,那么就只要从详细设计过程开始,如果是需求变更,就需要从需求分析开始,后续的总体设计、详细设计等过程也必然都会受到影响。因此,对于计划变更,也应根据产生变化的原因进行分析,评估其对项目管理的影响程度,对项目计划作出适当的调整。

综合以上的关系,就是著名的“项目管理三角形”,说明了项目的范围、时间、成本(资源)、质量这四个关键因素之间是相互关联、相互影响的。其间的关系这里不再展开详述。

计划变更可能导致基线变更,基线是项目计划在某一层次、某一时刻的“快照”。因此,基线变更所涉及的内容与计划变更的内容基本相同,也同样包括范围、时间、资源、成本等内容。

3,何时需要做公司级的计划变更

首先需要特别提出的是,计划变更不仅是公司级的,各个不同的管理层级都存在着计划变更,不同的管理层级对计划变更都有不同的要求。在项目组内部,根据项目执行中的实际情况,在项目组内部对项目计划随时进行调整,这本身就是计划变更,也应通过内部对计划变更的控制,达到上述的管理目的,只是由于其影响范围较小,在项目组内部就可以决定。在公司层面上的计划变更,通过公司所规定的变更流程要求,控制计划变更对公司管理的影响,使项目组外部公司内各相关方面也能依据更新后的计划配合开展工作。如果变更的影响范围涉及到了外部客户,那么这种计划变更就还需要与客户达成一致,并使客户方也能按照新的项目计划配合开展工作。

因此,计划变更是项目管理过程中的一项基本工作,其中有着明确的管理要求,作为项目管理者应该对此具有清晰的认识,能够基于对项目内部及整个项目管理环境的正确认识,在不同管理层面上做好计划变更的管理工作,并能够根据职责权限,使计划变更在不同的管理层面之间进行有效的沟通。公司级的计划变更的流程要求,只是公司对计划变更的一种管理要求,不能完全覆盖项目所涉及到的全部的计划变更管理的内容,而项目经理则必须关注所有层面的计划变更管理的要求。

通常情况下,需要在公司级别进行计划变更的情况主要有以下几种:

(1) 经公司确认的范围变更,无论是业务需求还是技术方案,经相关管理部门确认后,都可以进行计划变更。

(2) 当项目中的产品基线或目标版本发生变化时,会影响到工作范围、项目与其他任务之间的依赖关系等,需要进行计划变更。

(3) 由于外部要求或条件限制,或由于项目自身原因,需要调整项目的时间进度,对公司内、外其他相关任务的时间安排产生影响,或对已经与客户或其他合作伙伴达成一致的里程碑计划产生影响,都需要进行计划变更。

(4) 当项目需要投入与计划不同的资源或成本时,特别是需要公司追加预算时,需要进行计划变更。

值得强调的是,项目计划与项目实际之间存在差异是正常的,计划变更并非是为了解决这种差异,不能单纯因为项目的实际执行情况与计划发生了偏差而进行计划变更。这也是需要避免的认识上的误区。

进行计划变更的过程中,项目经理仍需要就更新的计划与干系人进行沟通和确认。计划调整的方法与制定项目计划的方法是一致的,所涉及到的内容也是一致的,所不同的是,变更后的计划中包含了已经实际执行完成信息,这些信息是不可变更的。变更后的计划需要向所有干系人发布,以便各方面及时了解项目的变化,协调好各方的工作配合。

特别需要强调的是,一个项目可以有多条基线,每次公司级的计划变更都可以形成新的基线,最新基线是公司监控项目的依据。但是,用于项目绩效考核的基线未必是最新的当前基线,只有在公司同意更改对项目的考核标准时,才需要变更项目的考核基线。例如,项目由于自身问题造成进度延迟并影响到了里程碑点,为了便于公司内、外的整体协调和对项目的跟踪监控,对公司级的项目计划进行变更,并向相关干系人发布。这时形成了新的项目基线,但是项目绩效的基线不应改变,因为这种延迟是由于项目组自身的原因造成的,在考核中应体现这种差异。因此,公司将来要加强对项目的绩效考核,就需要对公司绩效考核的项目基线有所区别,它可能与计划变更时产生的新的基线不同,需要单独进行跟踪管理。有了针对项目绩效考核的基线后,就可以在该基线上运用管理储备(Reserve)等手段,提供更为有效的项目管理手段和更为合理的项目考核方法。

4,做计划变更的方法

计划变更是基于已有的项目计划,根据产生变化的原因和影响,对未来计划所作的调整。在项目的挣值方法中,推荐了三种对未来值进行预测的方法,其思路也同样适用于计划变更:

(1) 如果项目的变化与项目原计划存在规律性的差异,那么就可以根据这种规律整体调整项目计划。例如在原材料涨价的情况下,材料成本可以按照统一的价差比例进行调整,从而得到剩余的项目任务对应的新的成本预算。再如,在项目执行中发现工作量(或工期)估算普遍比实际值偏低,就可以计算出这种差异的比例,对剩余工作任务的原有估算值等比例进行调整,得到新的估算值。

(2) 如果在项目实际执行中出现偶然的偏差,这种偏差对于其他剩余的任务没有关系,那么就可以在计划变更中重点考虑前期偏差的影响,而对剩余任务保持原有计划。例如在项目前期某任务工期延迟,但并不影响以后各项目任务的工期估算,后续项目任务仍可以按照原定的工期进行。再如,项目前期某任务的预算超支,但并不影响后续任务的预算,那么后续项目任务仍可以采用原来的预算。

(3) 如果项目中发生了很大的变化,导致后续任务对应的原计划根本不具备参考意义,那么就需要重新制定后续任务的计划。例如在项目过程当中总体的技术方案架构发生根本性的改变,原有的开发计划就没有了参考意义,需要重新制定项目计划。

通过上述三种方法,根据产生变化的不同原因,对后续任务的计划进行调整。调整过的后续计划加上项目中已经实际发生的部分,就形成了新的整体项目计划。项目经理在进行计划变更时,通过这样的仔细分析和必要的估算,就能够得到变更后的项目计划与原计划的整体差异,从而得到计划变更后的工期和预算与原计划的整体差异,才能形成延长工期或追加预算等要求。

计划变更无论在哪个管理层面上都需要得到控制,这是项目能够按计划完成的基本保证。计划变更的权限至少分为三级:客户、公司、项目组。三级当中的项目计划的关系,应该是下级比上级更苛刻。项目预算是逐级递减的(需要扣除利润和管理储备),时间要求可能也是逐级紧缩的(预留缓冲),项目范围可能会是逐级增加的(夹带私活)。因此,计划变更是有不同权限的,决策权也分为项目经理、公司管理层、客户三个层级,各个层级都可以在自己的决策范围内进行计划变更,但当影响到上一级时,就需要得到上一级的批准。因此,在企业中通常都会制定一些计划变更的制度,通过一些管理手段来约束计划变更的权限,以求避免计划变更的随意性。

5,公司级多项目管理中的计划变更

公司级的计划变更管理,除了对每个单独的项目的计划变更要进行管理,还要站在公司整体的高度,对所有项目的整体计划进行变更管理。这是企业级项目管理的内容,其中包括多项目管理和项目组合管理。在许多公司中,多项目管理(Program Management)应该是一个很重要的内容。

司级的多项目管理,与每个具体项目的关系,本质上就是项目与子项目的关系。公司中每个具体的项目,就是对应公司全部项目任务的这个大项目(Program)的子项目。所有子项目的范围能够覆盖大项目的范围,所有子项目的时间进度安排形成了大项目的整体进度表,子项目之间的外部依赖关系形成大项目中的内部依赖关系,全部子项目的资源需求和成本预算,形成了大项目的整体预算。因此,大项目的管理方法仍然是项目管理的方法,只是要更多的考虑公司中各个具体项目(子项目)之间的协调问题,包括工作范围的分解和分配、时间进度的协调配合、项目间资源冲突的协调等。特别是在既有产品管理又有项目管理,既有开发任务又有维护任务的公司中,项目主要都是需要跨产品、跨部门的配合,同时进行中的多个项目在产品版本上又需要保证顺序关系,这就使得公司中的多项目管理成为必要,要加强对多个关联项目与多个相关系统之间的矩阵关系的管理。

总之,项目经理的项目管理水平和公司对项目的管理力度,是实现公司级多项目管理的两个必要条件。


火龙果软件/UML软件工程组织致力于提高您的软件工程实践能力,我们不断地吸取业界的宝贵经验,向您提供经过数百家企业验证的有效的工程技术实践经验,同时关注最新的理论进展,帮助您“领跑您所在行业的软件世界”。
资源网站: UML软件工程组织