`

项目管理过程之变更控制

阅读更多

变更控制的目的并不是避免变更的发生,而是对变更进行管理,确保变更有序进行。对于软件开发项目来说,发生变更的环节比较多,因此变更控制显得格外重要。

项目中引起变更的因素有两个:一是来自外部的变更要求,如客户要求修改工作范围和需求等;二是开发过程内部的变更要求,如为解决测试中发现的一些错误而修改源码甚至设计。比较而言,最难处理的是来自外部的需求变更,因为IT项目需求变更的概率大,引发的工作量也大(特别是到项目的后期)。

变更控制不能仅在过程中靠流程控制,有效的方法是在事前明确定义。事前控制的一种方法是在项目开始前明确定义,否则“变化”也无从谈起。另一种方法是评审,特别是对需求进行评审,这往往是项目成败的关键。需求评审的目的不仅是“确认”,更重要的是找出不正确的地方并进行修改,使其尽量接近“真实”需求。另外,需求通过正式评审后应作为重要基线,从此之后即开始对需求变更进行控制。

虽然可以事前定义好变更控制流程,但在各种压力下真正“控制”起来其实非常困难。下面给大家分析一个变更失控的项目案例:

王先生刚出任项目经理,并承接了一个中型软件项目。上任时公司高层再三叮咛他一定要尊重客户,充分满足客户需求。项目开始比较顺利,但进入到后期,客户频繁的需求变更带来很多额外工作。王先生动员大家加班,保持了项目的正常进度,客户相当满意。

但需求变更却越来越多。为了节省时间,客户的业务人员不再向王先生申请变更,而是直接找程序员商量。程序员疲于应付,往往直接改程序而不做任何记录,很多相关文档也忘记修改。很快王先生就发现:需求、设计和代码无法保持一致,甚至没有人能说清楚现在系统“到底改成什么样了”。版本管理也出现了混乱,很多人违反配置管理规定,直接在测试环境中修改和编译程序。但在进度压力下,他也只能佯装不知此事。但因频繁出现“改好的错误又重新出现”的问题,客户已经明确表示“失去了耐心”。

而这还只是噩梦的开始。一个程序员未经许可擅自修改了核心模块,造成系统运行异常缓慢,大量应用程序超时退出。虽然最终花费了整整3天的时间解决了这个问题,但客户却投诉了,表示“无法容忍这种低下的项目管理水平”。更糟糕的是,因为担心系统中还隐含着其他类似的错误,客户高层对项目的质量也疑虑重重。

随后发生的事情让王先生更加为难:客户的两个负责人对界面风格的看法不一致,并为此发生了激烈争执。王先生知道如果发表意见可能会得罪其中一方,于是保持了沉默。最终客户决定调整所有界面,王先生只好立刻动员大家抓紧时间修改。可后来当听说因修改界面而造成了项目一周的延误后,客户方原来发生争执的两人这次却非常一致,同时气愤地质问王先生:“为什么你不早点告诉我们要延期!早知这样才不会让你改呢!”王先生委屈极了,疑惑自己到底错在哪里了。

从上面的案例中可以看到各种变更失控的现象和造成的后果,王先生主要犯了几个错误:

1) 没有明确的授权。事先应该明确客户方有权提出变更申请的人员和实施方有权受理变更的人员,并要控制双方人数。这样做才可以对变更有整体的控制。绝不能进行 “私下交易”,而没有人能完整地知道到底改了些什么。另外,授权双方接口人的好处是可以屏蔽客户内部的矛盾,如果只有一个接口人,内部尚未达成一致时变更是无法提出来的。从实际经验看,授权可以显著减少变更,特别是那些因内部看法不同而导致的反复变更。

2)对变更进行必要的审核。并不是所有的变更都要修改,也不是所有变更都要立刻修改,审核的目的就是为了决定是否需要修改和什么时候修改比如案例中提到的界面风格问题,就可以先不修改,或者规划一下修改的时间待到以后进行优化。另外,对于核心模块的修改要严格审核把关,否则会引起全局问题,案例中提到的“擅自修改核心模块”造成的事故就是因为没有审核而造成的。

3)对变更的影响没有评估。变更都是有代价的,应该评估一下变更的代价和对项目的影响,要让客户了解变更的后果,并与客户一起做判断。案例中客户最后的质问正是因为没有事前告诉客户变更的影响造成的。如果客户不知道你为变更付出的代价,对你的辛苦便难以体会。案例中客户刚开始对王先生加班处理变更相当满意,但只是对工作态度满意,后期当变更引发一系列问题时客户并没有感谢王先生的苦劳。

4)应该让客户确认是否接受变更的代价。在评估代价并且与客户讨论的过程中,可以请客户一起做判断“我可以修改,但您能接受后果吗?”案例中如果王先生评估了修改界面的工作量并请客户确认,则有三种可能:客户预先接受延期这一后果,也就不会再质问王先生了;如果客户认为代价太大,则王先生就不必修改了;如果认为可以缩短延期时间,则王先生至少争取到了与客户协商的机会,让客户知道为此项目组需要付出加班的代价,吃个“明亏”。

上述步骤完成后,要等客户确认变更再组织实施变更的相关工作。变更要按配置管理(读者可以查阅相关的资料)的规定执行,确保所有交付物的一致性和完整性。同时,对所有的变更要跟踪和验证,确保都按要求完成了

最后,要特别提醒的是:要在项目开始就对项目组和客户进行宣传和培训,让所有成员都理解变更控制的重要意义;在项目过程中要对变更控制的执行情况进行审计,发现违反规定的事件要严肃处理,否则过程很快就会失效。

综上所述,变更控制的目的是管理变化。变更控制对项目成败有重要影响,事前要明确定义;事中要严格执行,实施过程要跟踪和验证;事后要严格审计。实施变更之前有四个重要控制点:授权、审核、评估和确认;在实施过程要进行跟踪和验证,确保变更被正确执行。

分享到:
评论

相关推荐

    项目管理 - 变更控制流程

    变更控制流程是项目管理中的一个重要环节,旨在确保项目变更得到恰当的处理,减少变更对项目目标的不利影响。以下是对给定文件中提到的变更控制流程的详细解析: 1. 干系人提出变更请求 变更控制流程的起点是干系人...

    专题资料(2021-2022年)IT项目管理3.2项目变更控制表.doc

    【IT项目管理3.2项目变更控制表】 在IT项目的执行过程中,变更控制是至关重要的一个环节,它确保项目的稳定性和质量,同时适应业务需求的变化。项目变更控制表是这一过程中的核心工具,用于记录、审批和跟踪项目的...

    项目管理项目计划变更控制报告

    这份"项目管理项目计划变更控制报告"可能是为了记录和分析项目过程中发生的变更,以便团队理解变更的原因、过程以及对项目的影响。 项目计划变更控制涉及到以下几个核心知识点: 1. **变更申请**:当项目中出现...

    CMMI变更控制管理过程

    变更控制管理过程涉及对项目需求、设计、代码或文档等各方面的更改进行系统性的跟踪、审批和实施。 **1. 目的与范围** 变更控制管理过程的主要目的是确保所有变更都经过适当的审批,以避免未经验证的变更导致系统...

    项目管理之变更申请表.doc

    《项目管理之变更申请表》文档是这一过程的核心工具,用来规范和记录项目中的任何变动。以下是对该文档内容的详细解读。 1. **变更管理流程**:在项目实施过程中,任何可能影响项目范围、进度、成本或质量的因素都...

    项目管理过程项目变更相关文档模版资料

    在项目管理过程中,项目变更是一项不可或缺的活动,它涉及到项目的进度、成本、质量以及范围等多个方面。本资料包提供了一系列与项目变更相关的文档模版,旨在帮助项目经理和团队有效地管理和控制项目的变更流程。 ...

    项目管理之计划变更管理

    2. **变更审查**:变更控制委员会(CCB)会评估变更请求,考虑其对项目成本、进度、质量和其他关键因素的影响。 3. **决策**:CCB基于评估结果决定是否批准变更。如果批准,将制定详细的变更实施计划;如果拒绝,...

    项目管理配置项变更控制报告

    配置项变更控制报告是项目管理中的重要文档,它记录了整个项目过程中配置项的变更情况,以确保产品的一致性、完整性和可追溯性。这篇报告的核心在于如何有效地管理和控制软件开发过程中的变更,防止混乱和错误,保证...

    项目计划变更控制报告1.doc

    《项目计划变更控制报告》是项目管理中的一个重要环节,它涉及到项目的进度、成本、质量等多个关键因素。在项目执行过程中,由于市场需求变化、资源限制、技术更新等原因,往往需要对原有的项目计划进行调整,这就...

    配置管理-变更控制表

    变更控制表(Change Control Table)作为变更控制流程的核心工具之一,在项目开发过程中扮演着至关重要的角色。它不仅记录了项目生命周期内的所有变更活动,还提供了变更决策的支持依据。 #### 二、变更控制表结构...

    项目变更管理流程表格

    项目变更管理是项目管理中的关键环节,特别是在大型或复杂项目中,有效管理变更能确保项目的顺利进行,符合预期目标,并保持资源的合理分配。本文将详细介绍"项目变更管理流程表格"所涵盖的知识点。 首先,项目变更...

    软件项目变更管理流程.doc

    有效的变更管理流程可以帮助项目团队适应这些变化,同时保持项目的进度、预算和质量目标。 22 变更流程 22.1 概要 变更管理流程通常包括以下几个关键步骤: 1. **识别变更**:项目团队成员、客户或其他利益相关者...

    浅析软件项目管理中的需求变更控制

    在软件项目管理中,需求变更控制是一项至关重要的任务,因为它直接影响到项目的成功与否。需求变更通常源于多种因素,包括用户对系统功能的理解差异、业务逻辑的变化、试用过程中的反馈以及技术的升级。这些变化都是...

    项目管理的过程组和项目管理知识领域映射关系

    这些活动通常按照一定的顺序进行,形成了所谓的“项目管理过程组”。同时,为了确保项目的成功实施,项目管理还涉及多个知识领域,每个领域都有其特定的目标、工具和技术。理解项目管理过程组与项目管理知识领域之间...

    项目需求变更控制流程(模板)

    项目需求变更控制流程是指在项目过程中对变更情况的管理和控制,以确保项目的顺利进行。该流程主要涉及到变更申请、分析、审批、实施、测试和追踪等环节。 一、变更申请 变更申请是指项目组成员或客户代表提出的...

    项目管理47 个管理过程输入输出工具技术

    输入工具和技术包括专家判断、引导技术、项目管理信息系统、会议、分析技术、变更控制工具、访谈、焦点小组、引导式研讨会、群体创新技术、群体决策技术、问卷调查、观察、原型法、标杆对照、系统交互图、文件分析等...

    项目管理过程文档

    "项目管理过程文档"是项目经理进行有效项目管理的核心工具之一,它包含了从项目启动到项目收尾的全过程记录和指导材料。以下是对这个主题的详细阐述: 1. **项目启动阶段**:在这个阶段,项目经理需要制定项目章程...

    项目管理 计划、进度和控制的系统方法.pdf

    项目管理是现代管理学的重要分支之一,它的核心内容包括计划、进度和控制三个方面。本文将围绕“项目管理:计划、进度和控制的系统方法”这一主题,详细阐述这三个方面所涉及的关键知识点。 首先,项目管理中的计划...

    软件开发与项目管理-1期 配置项变更控制报告.pdf

    这份"软件开发与项目管理-1期 配置项变更控制报告"详细阐述了如何系统地处理和管理配置项的变更过程。下面将深入探讨这个主题。 首先,我们来看变更申请(1.1.1.1. 变更申请)。当项目中的某个配置项需要更改时,...

    pmp变更控制流程

    在项目管理专业认证PMP(Project Management Professional)中,变更控制流程是项目管理中一个非常关键的部分。变更控制流程确保项目在面对变化时能够保持其目标、范围、时间和成本的合理性,以及质量的可接受性。一...

Global site tag (gtag.js) - Google Analytics