首页 | 互联网 | IT动态 | IT培训 | Cisco | Windows | Linux | Java | .Net | Oracle | 软件测试 | C/C++ | 嵌入式开发 | 存储世界 | 服务器
网络设备 | IDC | 安全 | 求职招聘 | 数字网校 | 网页设计 | 平面设计 | 技术专题 | 电子书下载 | 教学视频 | 源码下载 | 搜索 | 博客 | 论坛
 您现在的位置: 中国IT实验室 >> 项目管理 >> 成本管理 >> 正文
软件开发成本估算
来源:ChinaItLab  时间:2007-4-11

  软件开发成本估算主要指软件开发过程中所花费的工作量及相应的代价。 不同与传统的工业产品,软件的成本不包括原材料和能源的消耗,主要是人的劳动的消耗。另外,软件也没有一个明显的制造过程,它的开发成本是以一次性开发过程所花费的代价来计算的。因此,软件开发成本的估算,应是从软件计划、需求分析、设计、编码、单元测试、集成测试到认证测试,整个开发过程所花费的代价作为依据的。

  软件开发成本估算的经验模型

  Putnam 模型

  1978年Putnam提出的,一种动态多变量模型。
  L = Ck * K1/3 * td4/3
  其中: L-----------源代码行数(以LOC计)
  K-----------整个开发过程所花费的工作量(以人年计)
  td-----------开发持续时间(以年计)
  Ck----------技术状态常数,它反映“妨碍开发进展的限制”,取值因开发环境而异,见下表

Ck的典型值 开发环境 开发环境举例
2000 没有系统的开发方法,缺乏文档和复审
8000 有合适的系统的开发方法,有充分的文档和复审
11000 有自动的开发工具和技术

  从上述方程加以变换,可以得到估算工作量的公式: K = L3/(Ck3*td4)
  还可以估算开发时间: td = [L3/(Ck3*K)]1/4

  COCOMO模型(constructive cost model)

  这是由TRW公司开发,Boehm提出的结构化成本估算模型。是一种精确的、易于使用的成本估算方法。
  COCOMO模型中用到以下变量:
  DSI-------源指令条数。不包括注释。1KDSI = 1000DSI。
  MM-------开发工作量(以人月计) 1MM = 19 人日 = 152 人时 =1/12 人年
  TDEV-----开发进度。(以月计)

  COCOMO模型中,考虑开发环境,软件开发项目的类型可以分为3种:

  组织型(organic): 相对较小、较简单的软件项目。开发人员对开发目标理解比较充分,与软件系统相关的工作经验丰富,对软件的使用环境很熟悉,受硬件的约束较小,程序的规模不是很大(<50000行)

  嵌入型(embedded): 要求在紧密联系的硬件、软件和操作的限制条件下运行,通常与某种复杂的硬件设备紧密结合在一起。对接口,数据结构,算法的要求高。软件规模任意。如大而复杂的事务处理系统,大型/超大型操作系统,航天用控制系统,大型指挥系统等。

  半独立型(semidetached): 介于上述两种软件之间。规模和复杂度都属于中等或更高。最大可达30万行。

  估算公式:
  基本COCOMO模型估算工作量和进度的公式如下
  工作量: MM = r*(KDSI)c
  进度: TDKV = a(MM)b
  其中经验常数 r, c, a, b 取决于项目的总体类型。

  COCOMO模型按其详细程度可以分为三级:基本COCOMO模型,中间COCOMO模型,详细COCOMO模型。其中基本COCOMO模型是是一个静态单变量模型,它用一个以已估算出来的原代码行数(LOC)为自变量的经验函数计算软件开发工作量。 中级COCOMO模型在基本COCOMO模型的基础上,再用涉及产品、硬件、人员、项目等方面的影响因素调整工作量的估算。详细COCOMO模型包括中间COCOMO模型的所有特性,但更进一步考虑了软件工程中每一步骤(如分析、设计)的影响。

  基本COCOMO模型

  通过统计63个历史项目的历史数据,得到如下计算公式。

总体类型 工作量 进度
组织型 MM = 10.4*(KDSI)1.05 TDKV = 10.5(MM)0.38
半独立型 MM = 3.0*(KDSI)1.12 TDKV = 10.5(MM)0.35
嵌入型 MM = 3.0*(KDSI)1.20 TDKV = 10.5(MM)0.32

  进度计划是从时间的角度对项目进行规划,而成本估算则是从费用的角度对项目进行规划。这里的费用应理解为一个抽象概念,它可以是工时、材料或人员等。

  成本估算是对完成项目所需费用的估计和计划,是项目计划中的一个重要组成部分。要实行成本控制,首先要进行成本估算。理想的是,完成某项任务所需费用可根据历史标准估算。但对许多工业来说,由于项目和计划变化多端,把以前的活动与现实对比几乎是不可能的。费用的信息,不管是否根据历史标准,都只能将其作为一种估算。而且,在费时较长的大型项目中,还应考虑到今后几年的职工工资结构是否会发生变化,今后几年原材料费用的上涨如何,经营基础以及管理费用在整个项目寿命周期内会不会变化等问题。所以,成本估算显然是在一个无法以高度可靠性预计的环境下进行。在项目管理过程中,为了使时间、费用和工作范围内的资源得到最佳利用,人们开发出了不少成本估算方法,以尽量得到较好的估算。这里简要介绍以下几种。

  1.经验估算法

  进行估计的人应有专门知识和丰富的经验,据此提出一个近似的数字。这种方法是一种最原始的方法,还称不上估算,只是一种近似的猜测。它对要求很快拿出一个大概数字的项目是可以的,但对要求详细的估算显然是不能满足要求的。

  2.因素估算法

  这是比较科学的一种传统估算方法。它以过去为根据来预测未来,并利用数学知识。它的基本方法是利用规模和成本图。如图所示,图上的线表示规模和成本的关系,图上的点是根据过去类似项目的资料而描绘,根据这些点描绘出的线体现了规模和成本之间的基本关系。这里画的是直线,但也有可能是曲线。成本包括不同的组成部分,如材料、人工和运费等。这些都可以有不同的曲线。项目规模知道以后,就可以利用这些线找出成本各个不同组成部分的近似数字。

 

[1] [2] 下一页

【责编:runlz】

中国IT教育热线咨询
  相关文章
工程项目成本管理和成本控制
制造企业ERP全面成本管理实施记实
谈建筑施工企业成本管理
成本控制的数字化管理
项目管理模式下动态薪酬管理体系设计
企业IT部门成本管理研究
项目成本的投资估算
医院建设工程项目的成本管理具体分析
配送中心物流成本管理及分析
施工项目成本管理基础工作
   推荐文章
 精彩友情推荐
·Asp源码 PHP源码
·CGI源码 JSP源码
·建站书籍教程
·服务器软件 .net源码
·建站工具软件
·IDC资讯大全
·机房品质万里行
·IDC托管必备知识
·全国IDC报价
·网站推广优化
中国IT实验室--项目管理
 进度管理  质量管理  需求管理  采购管理
普通文章施工项目成本管理基础工作07-30
普通文章关于项目计划调整的原则01-29
普通文章项目工期的绩效跟踪步骤01-29
普通文章浅析软件项目进度管理中的积习流弊01-29
普通文章重视项目收尾管理工作10-17
普通文章关键链进度管理的两个重点10-17
普通文章IT项目管理-计划-进度安排10-17
普通文章谈网站项目的WBS分解10-17
普通文章进度控制问题对信息化建设项目的影响09-11
普通文章浅谈业主对工程项目建设的进度控制09-04
普通文章项目管理的质量保证计划07-28
普通文章质量管理,企业稳步发展的必然选择07-28
普通文章谁是质量管理的灵魂07-28
普通文章项目中的软件质量管理07-28
普通文章质量管理知识小结07-28
普通文章软件项目过程管理保证软件质量07-28
普通文章软件项目质量管理责任分配07-28
普通文章质量管理八项原则07-28
普通文章项目管理:软件质量的可靠保证07-28
普通文章项目管理中的质量控制问题07-28
普通文章需求分析中的用户识别与调查[2]09-20
普通文章需求分析中的用户识别与调查[1]09-20
普通文章实际项目中可使用的性能需求07-24
普通文章软件项目需求的关键06-26
普通文章需求捕获指南(四)—需求捕获技术06-19
普通文章需求捕获指南(三)—需求捕获的阶段组成(06-19
普通文章需求捕获指南(三)—需求捕获的阶段组成(06-14
普通文章需求捕获指南(三)—需求捕获的阶段组成(06-14
普通文章需求捕获指南(三)—需求捕获的阶段组成(06-14
普通文章需求捕获指南(二)—需求捕获的问题及过程06-14
普通文章军队工程建设项目招投标规范化探讨07-24
推荐文章国际招投标项目管理的模式和经验07-24
普通文章战略采购管理:一个被忽视的利润源泉08-14
普通文章浅析采购成本控制与绩效管理08-07
普通文章剖析手机研发企业的采购管理06-26
普通文章项目采购项目管理:架起理论与实践的桥梁06-18
普通文章加强对政府采购中标项目验收监管的实践06-18
推荐文章如何应对零星IT项目采购06-15
普通文章外国政府贷款项目采购公司招标办法06-15
普通文章项目采购管理06-13
  培训中心
  ITLab技术交流平台: