项目管理-项目成本管理

目录

一、成本管理概述

二、成本估算

2.1 定义

2.2 成本估算方法

2.2.1 自顶向下的估算

2.2.1.1 估算方法

2.2.1.2 优点

2.2.1.3 缺点

2.2.2 自底向上的估算

2.2.2.1 估算方法

2.2.2.2 优点

2.2.2.3 缺点

2.2.3 差别估算法

三、成本预算

3.1 定义

3.2 成本预算的步骤

3.3 直接成本与间接成本

3.3.1 非直接成本

3.3.2 隐没成本

3.3.3 学习曲线

3.3.4 项目完成的时限

3.3.5 质量要求

3.3.6 保留

3.4 管理储备

3.5 零基准预算

四、成本控制

4.1 定义

4.2 注意事项

4.3 挣值分析方法

4.3.1 定义

4.3.2 基本参数

4.3.3 评价指标

4.3.4 评价曲线

4.3.5 项目完成成本再预

4.3.5.1 定义

4.3.5.2 三种估算方法

4.3.5.3 估算举例


一、成本管理概述

项目成本是指为完成项目目标而付出的费用和耗费的资源。影响项目成本的因素非常多,而且变化大。在这些因素中,质量、进度和范围对项目成本的影响不但非常突出而且关联性很强。价格和管理水平对于项目成本也具有重要的影响。

项目成本管理是在整个项目的实施过程中,为确保项目在批准的预算条件下尽可能保质按期完成,而对所需的各个过程进行管理与控制。项目成本管理包括成本估算、成本预算和成本控制三个过程。成本估算是对完成项目所需成本的估计和计划,是项目计划中的一个重要的、关键的、敏感的部分;成本预算是把估算的总成本分配到项目的名个工作包,建立成本基准计划以衡量项目绩效;成本控制保证各项工作在各自的预算范围内进行。

二、成本估算

2.1 定义

成本估算是对项目投入的各种资源的成本进行估算,并编制费用估算书。要进行项目成本的估算,需要大量的数据资料,这些资料包括资源的类型和数量、每种资源的单价、每项资源占有的时间。因此,成本估算和活动资源估算往往是结合在一起的。

2.2 成本估算方法

成本估算主要靠分解和类推的手段进行,基本估算方法分为三类:自顶向下的估算自底向上的估算和差别估算法。

2.2.1 自顶向下的估算

2.2.1.1 估算方法

自顶向下估算的主要思想是从项目的整体出发,进行类推。即估算人员根据以前已完成项目所消耗的总成本(或总工作量),来推算将要开发的软件的总成本(或总工作量),然后按比例将它分配到各开发任务单元中去。

2.2.1.2 优点

自顶向下估算的主要优点是,管理层会综合考虑项目中的资源分配,由于管理层的经验,他们能相对准确地把握项目的整体需求,能够把预算控制在有效的范围内,并且避免有些任务有过多的预算,而另外一些被忽视的现象。自顶向下估算工作量小,速度快。

2.2.1.3 缺点

自顶向下估算的主要缺点是,如果下层人员认为所估算的成本不足以完成任务时由于在公司地位的不同,他们很可能保持沉默,而不是试图和管理层进行有效的沟通讨论更为合理的估算,默默地等待管理层发现估算中的问题再自行纠正。这样,会使项目的执行出现困难,甚至是失败。自顶向下估算对项目中的特殊困难估计不足,估算出来的成本盲目性大,有时甚至会遗漏系统的某些部分。

2.2.2 自底向上的估算

2.2.2.1 估算方法

自底向上估算的主要思想是把系统进行细分,直到每一个子任务都已经明确所需要的开发工作量,然后把它们加起来,得到系统开发的总工作量。这是一种常见的估算方法。

2.2.2.2 优点

自底向上估算的主要优点是,在任务和子任务上的估算更为精确,这是由于项目实施人员更了解每个子任务所需要的资源。这种方法也能够避免开发人员对管理层所估值的不满和对立。

2.2.2.3 缺点

自底向上估算的主要缺点是,缺少各项子任务之间相互联系所需要的工作量,还缺少许多系统级工作量(例如,配置管理、质量管理等)。因此,往往估算值偏低,必须用其他方法进行检验和校正。

要保证自底向上估算的精确性,前提条件就是需要开发人员熟悉所做的子任务。这种方式的估算的关键是要保证所有的项目任务都要涉及到,这一点也相当困难。

另外,由于开发人员可能认为管理层会按照比例削减自己所估算的成本,或者出于“安全”的估计,他们会高估自己任务所需要的成本,而这必然导致总体成本的高估。因此,管理层会根据经验,认为需要削减开发人员的估计值,而这种削减恰恰证实了开发人员的估计。这样,项目估算就陷入了一个怪圈。

2.2.3 差别估算法

差别估算法综合了自顶向下估算和自底向上估算的优点,其主要思想是把项目与过去已完成的项目进行类比,从其开发的各个子任务中区分出类似的部分和不同的部分。类似的部分按实际量进行计算,不同的部分则采用相应的方法(例如,德尔菲法等)进行估算。

这种方法的优点是可以提高估算的准确程度,缺点是不容易明确“类似”的界限。

三、成本预算

3.1 定义

成本预算是进行项目成本控制的基础,是将估算的成本分配到项目的各项具体工作上,以确定项目各项工作和活动的成本定额,制订项目成本的控制标准,规定项目意外成本的划分与使用规则。

3.2 成本预算的步骤

成本预算的基本步骤如下:

  1. 分摊项目总成本到 WBS的各个工作包中,为每个工作包建立总预算成本。在将所有工作包的预算成本相加时,结果不能超过项目的总预算成本。
  2. 将每个工作包分配得到的成本再二次分配到工作包所包含的各项活动上。
  3. 确定各项成本预算支出的时间计划,以及每个时间点对应的累积预算成本,编制项目成本预算计划。

3.3 直接成本与间接成本

在进行成本预算时,除了要考虑项目的直接成本,还要考虑其间接成本和一些对成本有影响的其他因素,可能包括以下一些:

3.3.1 非直接成本

包括租金、保险和其他管理费用。例如,如果项目中有些任务是项目组成员在项目期限内无法完成的,那么就可能需要进行项目的外包或者聘请专业的顾问;如果项目需要专业的工具或者设备,而又没有必要采购这些设备,那么采用租用的方式就必须付租金。

3.3.2 隐没成本

隐没成本(沉没成本)是当前项目的以前尝试已经发生过的成本。例如,一个系统的上一次失败的产品花费了N元,那么这N元就是为同一个系统的下一个项目的隐没成本。考虑到已经投入了许多的成本,人们往往不再愿意继续投入,但是隐没成本应该被忘记,不应该成为项目选择的理由。

3.3.3 学习曲线

在信息系统项目中,如果采用了项目组成员未使用过的技术和方法,那么,在使用这些技术和方法的初期,项目组成员有一个学习的过程,许多时间和劳动投入到尝试和试验中。这些尝试和试验会增加项目的成本。同样,对于项目组从未从事的项目要比对原有项目的升级的成本高得多,也是由于项目组必须学习新行业的术语原理和流程。

3.3.4 项目完成的时限

一般来说,项目需要完成的时限越短,那么成本就越高,压缩信息系统的交付日期,不仅要支付项目组成员的加班费用,而且如果过于压缩进度,项目组可能在设计和测试上就会减少投入,项目的风险会提高。

3.3.5 质量要求

显然,成本估算要根据产品质量要求的不同而不同。例如,月火箭的控制软件和微波炉的控制软件不但完成的功能不同,而且质量要求也大相径庭,其成本估算自然有很大的差异。

3.3.6 保留

保留是为风险和未预料的情况而准备的预密成本。遗憾的是,有时候管理层和客户会把保留成本进行削减。没有保密,将使项目的抗风险能力降低。

3.4 管理储备

管理储备是为范围和成本的潜在变化而预留的预算,它们是未知的,项目经理在使用之前必须得到批准。管理储备不是项目成本基线的一部分,但包含在项目的预算中。它们未被作为预算进行分配,因此,不是挣值分析的一部分。

3.5 零基准预算

零基准预算是指在项目预算中,并不以过去的相似的项目成本作为成本预算的基然后根据项目之间的规模、性质、质量要求、工期要求等不同,对基准进行调节来准,对新的项目进行成本预算。而是项目以零作为基准,估计所有的工作任务的成本。

例如,某网站在上一个 Web 查询应用项目中,成本是2万元。现在有一个新的 Web查询应用项目,那么对比两个项目之间的差距,如果新的项目范围估计要扩大20%,则成本预算可以在2万元的基础上增加 20%。而零基准的成本预算却不能在过去的项目基础上进行增加。这种成本预算的方法必须以零作为基准。零基准预算的主要目标是减少浪费,避免一些实际上没有继续存在必要的成本支出,由于预算人员的惰性或者疏忽而继续在新的项目中存在。

四、成本控制

4.1 定义

项目成本控制是按照事先确定的成本基准计划,通过运用多种恰当的方法,对项目实施过程中所消耗费用的使用情况进行管理和控制,以确保项目的实际成本限制在项目成本预算范围内。

4.2 注意事项

成本控制必须识别可能引起项目成本基准计划发生变动的因素,并对这些因素施加影响,以保证该变化朝着有利的方向发展。监费用实施情况,发现实际费用和成本计划的偏差,并找出偏差的原因,阻止不正确、不合理和未经批准的费用变更。

4.3 挣值分析方法

4.3.1 定义

在项目成本控制中,主要采用挣值分析方法。挣值分析是一种进度和成本测量技术可用来估计和确定变更的程度和范围,因此,也称为偏差分析法。

挣值分析通过测量和计算已完成工作的预算费用、已完成工作的实际费用和计划工作的预算费用,得到有关计划实施的进度和费用偏差,而达到判断项目预算和进度计划执行情况的目的。

4.3.2 基本参数

  1. 计划工作量的预算费用(Budgeted Cost for Work Scheduled,BCWS):指项目实施过程中某阶段计划要求完成的工作量所需的预算工时(或费用)。
    计算公式为:BCWS=计划工作量x预算定额
    BCWS主要是反映进度计划应当完成的工作量,而不是反映应消耗的工时(或费用)。
    BCWS有时也称为PV(Planned Value)。
  2. 已完成工作量的实际费用(Actual Cost for Work Performed,ACWP):项目实施过程中某阶段实际完成的工作量所消耗的工时(或费用)。ACWP主要反映项目执行的实际消耗指标,有时也简称为AC。
  3. 已完成工作量的预算成本(Budgeted CostforWorkPerformed,BCWP):项目实施过程中某阶段实际完成工作量及按预算定额计算出来的工时(或费用),即挣值(Earned Value,EV)。BCWP的计算公式为:BCWP=已完成工作量x预算定额
  4. 剩余工作的成本(Estimate toCompletion,ETC):完成项目剩余工作预计还需要花费的成本。
    ETC用于预测项目完工所需要花费的成本,其计算公式为:ETC=BCWS-BCWP=PV-EV或ETC=剩余工作的PV*AC/EV

4.3.3 评价指标

  1. 进度偏差(Schedule Variance,SV):指检查日期BCWP与BCWS之间的差异。其计算公式为:
    SV=BCWP-BCWS=EV-PV
    当SV>0 时,表示进度提前;当SV<0时,表示进度延误;当SV=0时,表示实际进度与计划进度一致。
  2. 费用偏差(Cost Variance,CV):检查期间BCWP与ACWP之间的差异,计算公式为:
    CV=BCWP-ACWP=EV-AC
    当CV<0时,表示执行效果不佳,即实际消耗费用超过预算值(超支);当CV>0时,表示实际消耗费用低于预算值(有节余或效率高);当CV=0时,表示实际消耗费用等于预算值。
  3. 成本绩效指数(CostPerformanceIndex,CPI):预算费用与实际费用值之比(或工时值之比),即:
    CPI=BCWP/ACWP=EV/AC
    当 CPI>1时,表示低于预算,即实际费用低于预算费用;当CPI<1时,表示超出预算,即实际费用高于预算费用;当CPI=1时,表示实际费用等于预算费用。
  4. 进度绩效指数(SchedulPerformance Index,SPI):项目挣值与计划之比,即SPI=BCWP/BCWS=EV/PV
    当SPI>1时,表示进度提前,即实际进度比计划进度快;当SPI<1时,表示进度延误,即实际进度比计划进度慢;当SPI=1时,表示实际进度等于计划进度。

4.3.4 评价曲线

挣值分析的评价曲线如下图所示:

图的横坐标表示时间,纵坐标则表示费用。图中 BCWS 曲线为计划工作量的预算费用曲线,表示项目投入的费用随时间的推移在不断积累,直至项目结束达到它的最大值。因为曲线呈S形状,所以也称为S曲线。ACWP同样是随项目推进而不断增加的,也是呈S形的曲线。
利用评价曲线可进行成本和进度评价。例如,图种所示的项目,CV<0,SV<0,这表示项目执行效果不佳,即费用超支,进度延误,应采取相应的补救措施。

4.3.5 项目完成成本再预

4.3.5.1 定义

项目出现成本偏差,意味着原来的成本预算出现了问题,已完成工作的预算成本和实际成本不相符。这必然会对项目的总体实际成本带来影响,这时候,就需要重新估算项目的成本。

4.3.5.2 三种估算方法

这个重新估算的成本称为最终估算成本(EstimateatCompletion,EAC)或完工估算。有三种再次进行估算的方法。

  1. 认为项目日后的工作将和以前的工作效率相同,未完成的工作的实际成本和未完成工作预算的比例与已完成工作的实际成本和预算的比率相同。
    EAC=(ACWP/BCWP)XBAC=(AC/EV)XBAC=BACICPI=AC+BAC-EV)/CPI
    其中,BAC为完成工作预算(BudgetatCompletion),即整个项目的所有阶段的预算的总和,也就是整个项目成本的预算值。
  2. 假定未完成工作的效率和已完成工作的效率没有什么关系,对未完成的工作,依然使用原来的预算值,那么,对于最终估算成本就是已完成工作的实际成本加上未完成工作的预算成本:
    EAC=ACWP+BAC-BCWP=AC+BAC-EV
  3. 重新对未完成的工作进行估算,这需要一定的工作量。当使用这种方法时,实际上是对计划中的成本预算的否定,认为需要进行重新估算。
    EAC=ACWP+未完成工作新的成本估算值
4.3.5.3 估算举例

为了便于大家理解上述概念,这里举一个非常简单的例子。某网站在线测试项目涉及对 10个函数代码的编写(假设每个函数代码的编写工作量相等),项目由2个程序员进行结对编程,计划在10天内完成,总体预算是1000元,每个函数的平均成本是100元。项目进行到了第5天,实际消耗费用是400元,完成了3个函数代码的编写。根据这些信息,可以计算在第5天项目的各种指标数据如下:

计划预算成本:BCWS=100x5=500元

已完成工作的实际成本:ACWP=400元。

已完成工作的预算成本:BCWP=3x100=300元。

偏差数据如下:

成本偏差:CV=BCWP-ACWP=300-400=-100元。

进度偏差:SV=BCWP-BCWS=300500=-200元

成本绩效指数:CPI=BCWP/ACWP=300/400=0.75。

进度绩效指数:SPI=BCWP/BCWS=300/500=0.6。

从指标数据可以看出,这个项目如同许多信息系统项目一样,不但进度落后,而且成本超支。这时候,为了降低项目成本,可以采用把结对编程改为由单个程序员编写代码,降低程序员工资等措施。

对于剩下的工作的成本估算,三种方法得出的结论也各不相同:

  1. 如果认为剩下工作的效率和已完成工作的效率相同,则:
    EAC=(ACWP/BCWP)XBAC=(400/300)x1000=1333元
  2. 如果认为剩下工作的效率和已完成工作的效率无关,则:
    EAC=ACWP+(BAC-BCWP)=400+(1000-300)=1100元
  3. 如果重新对剩下的工作进行估算时,如果项目组使用了代码生成工具,可以极大地提高效率,减少人工成本,使每个函数代码的成本有望降为70元,则新的估算为:
    EAC=ACWP+未完成工作新的成本估算=400+7x70=890元

好了,本次内容就分享到这,欢迎大家关注《项目管理》专栏,后续会继续输出相关内容文章。如果有帮助到大家,欢迎大家点赞+关注+收藏,有疑问也欢迎大家评论留言!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/1390.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ccfcsp201312-2 ISBN号码

注意&#xff1a;50分 -- u10&#xff0c;最后一位为X 代码&#xff1a; #include <bits/stdc.h> using namespace std; string s; int a[12]; int main() {cin >> s;a[1] s[0] - 0;a[2] s[2] - 0;a[3] s[3] - 0;a[4] s[4] - 0;a[5] s[6] - 0;a[6] s[7] - …

Jupyter Notebook更改默认打开的浏览器和工作目录

Jupyter Notebook更改工作目录 打开cmd&#xff0c;输入&#xff1a;jupyter notebook --generate-config&#xff0c;可以得到Jupyter Notebook配置文件的路径&#xff0c;找到路径下的jupyter_notebook_config.py文件&#xff0c;用记事本或者Sublime打开文件 找到&#xff…

统一SQL-支持unpivot列转行

统一SQL介绍 https://www.light-pg.com/docs/LTSQL/current/index.html 源和目标 源数据库&#xff1a;Oracle 目标数据库&#xff1a;TDSQL-MySQL 操作目标 在Oracle中&#xff0c;可以使用unpivot将列转换成行&#xff0c;在TDSQL-MySQL中没有对应的功能&#xff0c;由…

HDMI to TYPE-C芯片|HDMI2.0转TYPE-C转接器方案|CS5802设计方案|ASL CS5802

CS5802输入端可以是1080P、4K30、4K60HZ这三种规格,输出的接口可以是TYPE-C信号接口,或者是TYPE-C信号接口,输入端HDMI由4路信号组成&#xff0c;支持1.62Gbps、2.7Gbps、5.4Gbps链路速率。内置可选SSC功能可降低EMI的干扰状况。 ASL CS5802芯片概述&#xff1a; 符合HDMI规范…

二分查找详解

二分查找是一种查找方式&#xff0c;用于在已经排好序的数组中寻找某个特定的数 我们直接来介绍二分查找的查找方法 左边界与右边界 左闭右闭&#xff1a; n为数组元素个数&#xff0c;a为目标数字 我们以左闭右闭区间为例&#xff0c;left为左边界0,right为右边界n-1&…

不同条件累加(C语言)

一、题目&#xff1b; 二、N-S流程图&#xff1b; 三、运行结果&#xff1b; 四、源代码&#xff1b; # define _CRT_SECURE_NO_WARNINGS # include <stdio.h>int main() {//初始化变量值&#xff1b;int i 0;int j 0;float result1 0;float result2 0;float result…

牛客小白月赛91 ----- Bingbong的回文路径 ---- 题解

Bingbong的回文路径&#xff1a; 题目描述&#xff1a; 思路解析&#xff1a; 现在有一棵树&#xff0c;树上每个结点上都有一个小写字母&#xff0c;那么如果唯一确定了x和y两个结点&#xff0c;那么就唯一确定了一个字符串路径&#xff08;最短路径&#xff09;。 -现在给出…

CSS 画一个三角形

一、前言 在前端开发的时候&#xff0c;我们有时候会需要用到一个三角形的形状&#xff0c;比如地址选择或者播放器里面播放按钮 通常情况下&#xff0c;我们会使用图片或者svg去完成三角形效果图&#xff0c;但如果单纯使用css如何完成一个三角形呢&#xff1f; 实现过程似…

3、MATLAB中矩阵和多维矩阵介绍

文章目录 一、矩阵二、矩阵举例三、定义变量四、定义矩阵五、获取变量值 一、矩阵 MATLAB中数据的基本格式是矩阵&#xff1b; 二维矩阵是一个带有以行和列排列的元素的矩阵表&#xff1b;如果右m行、n列&#xff0c;这个矩阵的大小就是m x n&#xff1b;多维矩阵的维数大于2…

[jinja2]模板访问对象属性

甚至可以用. 访问字典 .访问一般用得是最多的

【java解决线程间变量不可见性的方案】

解决线程间变量不可见性的方案 一、 背景 所有的实例变量和类变量都存储在主内存&#xff0c;但每个线程都有自己的工作内存&#xff0c;保留了主内存的共享变量的副本&#xff0c;线程修改的是共享变量&#xff0c;但是每个线程每次只能读取工作内存里的值&#xff0c;所以会…

Elasticsearch:(二)2.安装kibana

1.环境安装介绍: 安装java环境安装Elasticsearch安装kibana安装Elasticsearch-head插件 本节文章主要讲解kibana的安装。 2.下载 下载Elasticsearch对应的版本,参考官方自身产品兼容版本:支持一览表 | Elastic 下载地址:Kibana 7.17.20 | Elastic Kibana 7.17.20 | Ela…

操作教程丨MaxKB+Ollama:快速构建基于大语言模型的本地知识库问答系统

2024年4月12日&#xff0c;1Panel开源项目组正式对外介绍了其官方出品的开源子项目——MaxKB&#xff08;github.com/1Panel-dev/MaxKB&#xff09;。MaxKB是一款基于LLM&#xff08;Large Language Model&#xff09;大语言模型的知识库问答系统。MaxKB的产品命名内涵为“Max …

C++ stl容器stack,queue,priority_queue的底层模拟实现

目录 前言&#xff1a; 文档借鉴&#xff1a;Reference - C Reference 1.deque a.deque的结构特点&#xff1a; b.deque的迭代器结构&#xff1a; c.面试题&#xff1a; 2.stack 3.queue 4.仿函数 5.priority_queue 总结&#xff1a; 前言&#xff1a; 本篇一共简单…

04节-51单片机-数码管模块

1.静态数码管显示 LED数码管&#xff1a;数码管是一种简单、廉价的显示器&#xff0c;是由多个发光二极管封装在一起组成“8”字型的器件 下图展示了数码管的线路连接 数码管的连接方式分为&#xff0c;公共端&#xff0c;共阴极和共阳极连接&#xff1a; 多个数码管共用引…

存储过程的查询

Oracle从入门到总裁:​​​​​​https://blog.csdn.net/weixin_67859959/article/details/135209645 在实际使用中&#xff0c;经常会需要查询数据库中已有的存储过程或者某一个存储过程的内容&#xff0c; 下面就介绍-下如何查询存储过程。 这需要使用到数据字典 user_sou…

Linux设置真实IP

1.查看ens33网卡信息 vi /etc/sysconfig/network-scripts/ifcfg-ens33 #添加以下内容 BOOTPROTODHCP #协议类型 dhcp bootp none ONBOOTyes #启动时是否激活 yes | no#修改文件完成后&#xff0c;重启网络 service network restartping www.baidu.com #验证网络是否生效 ifco…

宝塔面板国际版aaPanel 精简版安装

宝塔面板国际版aaPanel 精简版安装 很多人都知道宝塔面板&#xff0c;但不知道宝塔面板还有英文版&#xff0c;宝塔面板英文版不是单纯的宝塔面板的翻译&#xff0c;而是根据老外的使用习惯及国外的网络环境做了一定的优化&#xff0c; 比如&#xff1a;去掉了手机号验证、去…

数据结构----顺序表

在学习顺序表之前&#xff0c;我们先来了解一下数据结构。 数据是什么呢&#xff1f; 我们在生活中常见的名字&#xff0c;数字&#xff0c;性别等都属于数据。 结构又是什么呢&#xff1f; 在计算机中&#xff0c;结构就是用来保存数据的方式。 总的来说&#xff0c;数据…

Python 基础02-Python 入门

官方文档&#xff1a;3.10.13 Documentation 一、Python 代码编写习惯 1. Python 中的编码 在 Python 3 版本之后&#xff0c;Python 默认使用 UTF-8 编码。UTF-8 是一种针对 Unicode 的可变长度字符编码。 2. 注释 注释可以对代码起到解释说明的作用&#xff0c;注释内容…