赞
踩
为了确定工作量度量单位,可设定一个“标准程序员”,例如具有15~18个月开发经验的程序员。
例如:如果一个软件项目的工作量是20人月,而企业的人力成本参数是2万元/人月,则完成项目工作量所需的成本是40万元。
(1)软硬件购置成本:这部分费用虽然可以作为企业的固定资产,但因技术折旧太快,需要在项目开发中分摊一部分费用。
(2)人工成本(软件开发、系统集成费用):主要是指开发人员、操作人员、管理人员的工资福利费等。在软件项目中人工费用总是占有相当大的份额,有的可以占到项目总成本的80%以上。
(3)维护成本: 维护成本是在项目交付使用之后,承诺给客户的后续服务所必需的开支。可以说,软件业属于服务行业,其项目的后期服务是项目必不可少的重要实施内容。所以,维护成本在项目生命周期成本中,占有相当大的比例。
(4)培训费:培训费是项目完毕后对使用方进行具体操作的培训所花的费用。
(5)业务费、差旅费:软件项目常以招投标的方式进行,并且会经过多次的谈判协商才能最终达成协议,在进行业务洽谈过程中所发生的各项费用比如业务宣传费、会议费、招待费、招投标费等必须以合理的方式计入项目的总成本费用中去。此外,对异地客户的服务需要一定的差旅费用。
(6)管理及服务费:这部分费用是指项目应分摊的公司管理层、财务及办公等服务人员的费用。
(7)其他费用:包括:基本建设费用,如新建、扩建机房、购置计算机机台、机柜等的费用;材料费,如打印纸、磁盘等购置费;水、电、气费;资料、固定资产折旧费及咨询费等等。
(1)直接成本。与具体项目的开发直接相关的成本。如人员的工资、外包外购成本等。又可细分为开发成本、管理成本、质量成本等。
(2)间接成本。不归属于一个具体的项目,是企业的运营成本,分摊到各个项目中。如房租、水电、保安、税收、福利、培训,等等。
优点:
缺点:
每个技术复杂度影响因素的取值范围:
TCF=0.65+0.01(sum(Fi)): Fi:0-5,TCF:0.65~1.35
A:可以校准的常量; S为软件规模; E为规模的指数,说明不同规模软件具有的相对规模经济和不经济性;EM为成本驱动因子,反映某个项目特征对完成项目开发所需工作量的影响程度;n为描述软件项目特征的成本驱动因子的个数。
静态单变量模型。
在基本模型基础上考虑各种影响因素(工作量驱动因子),调整模型。
中等COCOMO模型基础上考虑软件工程中各个步骤的影响。
工作量系数是根据成本驱动因子的打分计算得出,是对公式的校正系数。
非常低(very low) 1.46
低(low) 1.19
正常(nominal) 1.00
高(hign) 0.80
非常高(very hign) 0.71
工作量系数=F1*F2*…Fi…*Fn
(1)应用组成(application composition)模型。这个模型主要用于估算构建原型的工作量,用于项目规划阶段。
(2)早期设计(early design)模型。适用于体系结构设计阶段。
(3)后体系结构(post-architecture)模型。适用于完成体系结构设计之后的软件开发阶段。
(1)项目先例性:指出对于开发组织来说该项目的新颖程度。
(2)开发灵活性:为了实现预先确定的外部接口需求及为了及早开发出产品而需要增加的工作量。
(3)风险排除度:反映了重大风险已被排除的比例。
(4)项目组凝聚力:反映了开发人员在目标和文化背景等方面相一致的程度,以及开发人员组成一个小组工作的经验。
(5)过程成熟度:反映了按照能力成熟度模型度量出的项目组织的过程成熟度。
产品功能分解与规模估算表:
工作量估算表:
项目人力成本 = 项目工作量×平均人力资源单价×成本系数
该过程步骤如下:
1.对项目进行任务分解:1,2,…,i,…,n
2.估算每个任务的成本Ci
3.项目的开发成本=C1+C2+……+Ci+……+Cn
4.项目总估算成本= 直接成本+间接成本
5.项目总报价=项目总估算成本+风险利润
a为比例系数,可根据企业的具体情况而定,例如20%--25%。
=直接成本+直接成本*间接成本系数
=直接成本(1+间接成本系数)
=工作量*人力成本参数*(1+间接成本系数)
例如:某项目的工作量是40人月,成本系数为2万元/人月,则项目的总估算成本为40*2=80万元。
a是利润系数,根据企业、项目的不同而不同。
=项目总估算成本(1+a%)
6个人月的工作量可表示为6+3、6-1人月。
6个人月的工作量可表示为5~9人月。
用直方图表示的按月编制的成本基准
用时间-成本累计曲线表示的成本基准
降低人力资源的费率往往会打击工作人员的积极性,但可以通过降低其他资源的费率来实现,比如降低能源消耗、设备费用、耗材费用等。
使任务高效率地执行,避免浪费时间,从而适当减少任务的工时,可以降低任务的费用。
加班需要支付加班费率,这通常要高于正常情况下的人力资源费率,所以减少加班可以有效的减少项目成本。
用廉价的资源替换比较高价的资源,但有一个前提,那就是替换的资源同样能胜任这项任务。
确认删除该任务对项目没有影响或影响在可控制范围内才可采用。
项目成本控制过程
BCWS=1000,BCWP=850,ACWP=900
CV=BCWP-ACWP=850-900= -50元
SV=BCWP-BCWS=850-1000= -150元
BCWS=1000,BCWP=850,ACWP=900
CPI=BCWP/ACWP=850/900= 0.94
SPI=BCWP/BCWS=850/1000= 0.85
使用本规则的前提是任务分解足够详细。
例如:工作包的工作量<1人1周的工作量
2. 0/100规则:当一项工作没有完成时,不产生任何价值,直到完成后才获得全部的价值。
3. 其它经验加权规则,如20/80规则等。
截止到5月31日:
BCWS = 39800元,ACWP = 35000元,
BCWP = 37000元
CV= BCWP – ACWP =2000元
SV = BCWP – BCWS = -2800元
SPI = BCWP/BCWS = 0.93
CPI = BCWP/ACWP = 1.06
EAC = BAC/CPI = 53000/1.06 = 50000元
项目的阶段计划
软件设计的细化计划
第三周的BCWP
分析结果(第三周的项目性能分析:假设实际的工作量9人天)
ACWP=9(人天)
BCWS=7(人天)
BCWP=6.5(人天)
BAC=31(人天)
SV=BCWP-BCWS=-0.5(人天),进度落后0.5人天工作量
SPI=BCWP/BCWS=92.8%,以计划进度的92.8%效能在工作。
CV=BCWP-ACWP=-2.5(人天),超出预算2.5人天
CPI=BCWP/ACWP=72.2%,以超预算27.8%的状态在工作
EAC=BAC/CPI=43(人天),按目前的工作性能,项目总预算为43人天。
VAC=BAC-EAC=-12(人天),超出预算12人天的工作量
SAC=10/SPI=10.8(周)按目前的进度,完工时间是10.8周
总结:这个项目将推迟0.8周(4个工作日)左右,超出预算27.8%,完成预算比较困难。
此时应仔细研究原因,然后解决问题,如果是计划做得不合理,就要修正计划。
“软件缺陷管理和度量系统”项目成本估算
基本概念
理解软件项目规模、工作量、成本的概念
软件规模度量
理解代码行和功能点及其特征
成本估算
了解类比估算法、自下而上估算法、专家估算法,理解参数估算法、分解-累计估算法
成本预算
掌握成本预算的目的、成本基准的表示方法,了解降低成本预算的方法
成本控制
理解挣值分析法
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。