受困进度跟踪 挣值分析破解.doc
受困进度跟踪 挣值分析破解 在软件开发项目中,质量、成本、进度三大目标不但是项目经理最为关注和最为头痛的事情,也是项目管理的核心所在。但目前许多软件开发项目却经常存在着质量偏差、进度延误、成本超支的问题。其中,进度跟踪更一直被视为是软件开发的第一大难题,受到许多开发团队和客户方的高度关注。 挣值分析法是一种有效的项目成本和进度跟踪的集成方法。它能为软件项目在成本、进度的监控提供依据,使项目目标清晰,过程控制有序。本文先对软件项目进度跟踪工具 :挣值分析法进行概念和使用方法的论述,然后提出如何应用挣值分析法进行进度跟踪的实施策略。 为什么进度控制是开发管理重中之重 ? (1)软件开发过程度量的必要性 一般来说,软件开发过程度量是指通过各种不同的量度 (Metric)对软件生命周期中的各个元素进行度量 (Measure)。它能够为项目管理者提供开发过程的各种重要信息,同时也是评估软件开发活 动效率的基础。项目跟踪的目的是为了保证项目目标的达成,其中项目周期是重要的项目目标之一,因此项目进度是重要的监控内容。否则,产品质量和成本完成了,但进度和时间达不到要求,仍然是失败的。 在计划阶段虽然我们已经打造了一把计划的尺子,但到了实施阶段要如何使用这把尺子还是一个大问题了。因为谁也无法左右时间的流速和流向,面对时间人类只能被动地计划和控制。因此,许多软件开发项目经理在面对进度管理如何度量时会产生种种困惑。例如:项目计划如何才能真正的发挥作用,而不成为挂在墙上的样板图 ?如何才能既及时又准确的获知项目 进度的实际情况 ?有什么方法可对项目进度进行更加客观的评价 ?还有,如何才能实现对项目进度进行跟踪和预测,并提早预警 ? (2)如何对项目进行进度跟踪 ? 目前在软件开发项目管理配置中,进度控制和跟踪是不可或缺的。在软件能力成熟度模型 (CMM)或能力成熟度模型集成 (CMMI)中,进度控制和跟踪都是重要的、较难实施的关键领域。例如, CMM 将软件开发项目管理分为两个部分,即软件项目计划 (Software Project Planning)和软件项目跟踪及监控 (Software Project Tracking and Oversighting)。其中,软件项目计划是指为完成软件项目而制定规划性的计划,而软件项目跟踪和监控是指建立对实际进展的可视性跟踪,使管理者能在软件开发过程中明显偏离软件计划时采取有效措施。 在软件开发中有一句俗语是:时间就是金钱,时间就是效益。开发项目能否在预定的时间内完成,是项目管理最为重要的问题之一。因此,进度控制管理是软件开发的灵魂。如果单纯的使用时间进度的计划值和实际值进行比较,或者单纯的使用项目成本的预算值和实际值进行比较,都不能保证全面反映项目进度本身的绩效。因为只有在完成工 作任务的前提下,时间、成本的差异才有可比性。而且如果仅仅是使用这两组数据直接进行比较,还会在评价项目绩效时有失公平。这也是许多项目经理在软件开发进度管理上的困惑之一。 挣值法是如何解决进度跟踪难题 ? (1)什么是挣值分析法 挣值法又称为赢得值法或偏差分析法。挣值分析法是在项目实施中使用较多的一种方法,是对项目进度和成本进行综合控制和跟踪的一种有效方法。挣值法的核心是将项目在任一时间的计划指标、完成状况、和资源耗费进行综合度量,并将它们转化为货币形式然后用数学计算方式进行比较。因此,挣值分析法实际上是一种分析项目实际情况与期望目标之间差异的方法,故又常被称为偏差分析法。 挣值分析法的测量指标大多取自传统标准成本系统的测量体系,然后再通过成本、预算和进度数据之间的比较,计算出以货币为单位的成本偏差和进度偏差。它是一种用具有可比性的财务数据来表达进度测量结果和进度偏差的方法。其独特之处在于以数字化的预算和成本来衡量进度,优点是直观、简单和清晰。挣值法的另一个重要优点是可以预测项目可能发生的工期滞后量和成本的超支量,从而及时提醒项目经理应该要采取纠正措施,为项目管理和控制提供了有效手段。 (2)挣 值法的评价指标和判断方式 挣值法通过引入了一个中间指标 --挣值,来表示实际完成的工作和所对应的预算成本,使得在预期计划和实际情况之间建立了一个桥梁。挣值法使用了三个基本参数:计划值 (PV)、实际成本 (AC)和挣值 (EV)。计划值 (PV, Plan Value)又叫计划工作量的预算费用,是指在软件开发过程中某阶段计划要求完成的工作量所需的预算工时 (或费用 )。其计算公式是: PV=计划工作量 *预算定额。 PV 主要反映进度计划应当完成的工作量,而不是反映应消耗的工时或费用。实际成本(AC, Actual Cost)又 叫已完成工作量的实际费用,是指软件开发过程中某阶段实际完成的工作量所消耗的工时 (或费用 )。主要反映项目执行的实际消耗指标。挣值 (EV, Earned Value),又叫已完成工作量的预算成本,是指项目过程中某阶段实际完成工作量及按预算定额计算出来的工时 (或费用 )。其计算公式是: EV =已完成工作量 *预算定额。 挣值分析法通过四个评价指标来分析进度:进度偏差 (SV)、成本偏差 (CV)、成本绩效指数 (CPI)和进度绩效指标 (SPI)。其中:①进度偏差 (SV, Schedule Variance):是指检查日期 EV 和 PV 之间的差异。其计算公式是 SV=EV-PV:当 SV为正值时,表示进度提前 ;当 SV 等于零时,表示实际与计划相符。当 SV 为负值时,表示进度延误。②成本偏差 (CV, Cost Variance):是指检查期间 EV 和 AC之间的差异。其计算公式是 CV=EV-AC:当 CV 为正值时,表示实际消耗的人工 (或费用 )低于预算值,即有结余或效率高 ;当 CV 等于零时,表示实际消耗的人工 (或费用 )等预算值 ;当 CV 为负值时,表示实际消耗的人工 (或费用 )超出预算值或超支。③成本绩效指标 (CPI, Cost Performed Index):指预算费用与实际费用之比 (或工时值之比 )。其计算公式是 CPI=EV/AC:当 CPI>1 时,表示低于预算,即实际费用低于预算费用 ;当 CPI=1 时,表示实际费用与预算费用吻合 ;当 CPI1 时,表示进度超前,当 SPI=1 时,表示实际进度与计划进度相同 ;当 SPI<1.0 时,表示项目进度滞后。 (3)挣值分析法对进度管理的现实意义 挣值法是项 目进度管理的一种方法,主要用于项目成本和进度的监控。那么,挣值分析法对进度管理究竟有什么现实意义 ?前文我们已经说过,挣值管理的目的是在保证质量目标不变的前提下,通过对偏差的分析尽早的对项目完工时的最终进度与成本做出预测,并通过分析偏差产生的原因,实施相应的纠正措施从而降低项目风险。 众所周知,当进度如果延迟时,我们可以通过赶工或快速跟进的方式把进度赶上,但无疑这样会增加成本,并有可能导致超支。而一旦发生超支,所有的花销都将变成沉没成本,这是无法挽回的。如果这种状况继续持续下去,就会使到超支的情况变得越来 越糟糕,导致项目最后的实际成本将远远超过最初的预算,会给开发团队和客户造成巨大的损失。 因此,尽早的发现偏差并采取相应的纠正措施是非常重要的。因为在项目早期发现偏差而采取纠正措施所付出的代价,会远远小于在项目接近完工时而进行纠正措施所付出的代价。同时,越早发现偏差也将会有更多的反应时间来采取纠正措施。另一方面,我们还要根据当前的项目进度状况去预测项目最终完成时所需的费用,即项目完工估算,同时还要估算出所需追加的费用,即完工尚需费用的估算。 建立挣值法进度控制体系的步骤 (1)建立分层次的项目计划 体系 如果项目计划赶不上变化,项目计划就是一纸文档的片面认识就会在开发团队内盛行。因此,要想控制好项目进度就必须要先建立执行性强的项目计划体系。有效的项目计划体系务必要具备层次性和细分性,也就是说项目计划要应因管理层次的不同而在形式上、内容上有所区分。例如,供高级管理者监控的计划、供项目经理或底层小组长分派任务的计划应有不同的形式和内容。一般来说,供高层监控的计划是里程碑式的宏观计划,是项目的总体 "路线图 "。该计划凸现项目控制的关键点,如项目阶段划分、里程碑划分、交付物和关键任务划分等。 同时,挣值 法是基于对 WBS(工作分解结构 )底层工作任务的估计值进行跟踪的方法。因此,挣值法要求在软件开发前应该要制定详细的 WBS 工作分解结构。另外,为了在项目中更好的应用挣值法,项目经理还需要准备好这些首要数据:计划完成的工作预计成本预算、实际完成的工作预计成本预算、实际完成的工作实际成本和项目总预算等。 (2)建立进度跟踪的挣值控制体系 没有跟踪和控制,再好的项目计划也只是一个摆设,因为项目实施可能完全是另外一个样子。因此,在项目实施状态下,项目经理的主要工作就是要跟踪和控制项目按计划实施。所以,项目经理需 要在项目团队内推广挣值法的思路,建立推行挣值控制体系的职责和工作流程。例如,如何采集挣值需要的数据,如何设置跟踪和报告数据。或当项目偏离计划时,采取什么措施使项目回到原计划的轨道,或者调整计划生成新的基准。另外,进度管理并不是一个静态的过程,项目进度与项目计划也是互动的,需要不断调度、协调,保证项目整体的动态平衡。 (3)建立客观的挣值量度指标 当有了项目计划与进度跟踪体系后,就可以进行项目度量了。挣值度量的四个指标具体为:进度偏差 SV、成本偏差 CV、成本绩效指数 CPI 和进度绩效指数SPI。这些指标 的度量结果可以用来对项目进度进行评价,也可以用于检查项目进度的偏差程度,以进一步调整项目的执行。但由于每个开发团队对进度偏差的要求和敏感度不同,在应用挣值法时对项目计划和跟踪的颗粒度也会要求不同。所以,开发团队应该根据自身的管理要求和项目的实际情况来确定相应的量度指标。也就是说,这些量度指标的范围会有所不同。例如,对于某些开发团队来说,SPI 在 (0.9, 1.1)是可以接受的,但对另一个开发团队则可能是不可接受。 (4)将进度控制进行可视化 最后,为了使进度控制更具直观和方便,应该要使用 Network Diagram 视图来管理。因为用图形化的进度指示可以对项目的进度情况有更清晰、更详细的了解,还可以通过以流程图格式对进度和任务进行分组控制,以达到高效项目控制的目的。