软件开发费用计算方法

软件开发费用计算方法
软件开发费用计算方法

软件开发项目计算方法

(V2.0)

广东软件行业协会

二○○六年八月

目录

1前言 (2)

1.1 目的 (2)

1.2 软件项目建设类别 (2)

1.3 适用范围 (2)

1.4 名词解释 (3)

2软件项目费用概算 (4)

2.1项目阶段划分 (4)

2.2 各阶段费用构成 (5)

2.3 项目费用概算 (6)

3各项费用取费依据 (7)

3.1 咨询费 (7)

3.2 建设费 (8)

3.3 服务费 (8)

3.4 附加费 (12)

3.5需求变更估算 (12)

4工作量估算方法 (13)

4.1 开发阶段工作量估算 (13)

4.2 实施阶段工作量估算 (15)

4.3 维护阶段工作量估算 (17)

5人月成本估算方法 (18)

6其他事项 (19)

6.1 最终合同金额确定 (19)

6.2 付款方式 (20)

6.3 评估机构 (20)

软件项目规模功能点估算方法 (21)

1 功能点估算流程 (21)

2 功能点分析的要素 (22)

3 功能点计算(初步值UFC) (23)

4 确定技术复杂度因子TCF (24)

5 计算调节后的功能点数FP (25)

参考文献 (26)

1前言

1.1 目的

规范软件市场行为,维护价格公平竞争,同时为软件项目建设经费概算提供科学可信的依据。

1.2 软件项目建设类别

软件产业发展到现今阶段,技术已经很成熟,产品也已经很丰富,同时由于开发工具和操作系统平台的可选择性,软件项目出现了多样化的趋势。同样是软件项目,完成途径和开发手段不同,其费用也会存在很大差异。不同类别的软件项目,其费用构成和概算方法也不同。根据项目建设要求和方式,一般分为以下几类:

新开发项目:从项目的需求分析开始直至产品完成正式交付使用,其工

作覆盖软件产品的分析、设计、测试、实施、运行维护各

阶段。

二次开发:在现有产品的基础上进行提升和改造。

软件移植:已有产品从一个操作系统平台转移到另一个操作系统平台,或者从原来的运行环境切换到另一个新的运行环境所

需要进行的调整和变动。

产品集成:将多个现有软件产品构件整合在一起,组装成比较复杂的

或者更加完整的产品。

1.3 适用范围

本指南适用于应用类定制软件的新开发项目,项目应覆盖软件开发全过

程(包括立项可行性分析,需求分析、编码实现、安装实施、运行维护各个阶段工作)。其中人月成本的计算方法也适用于其他类型的项目。

本指南是站在行业的角度,去评估一个应用软件项目的开发费用应该是多少,而不是站在开发商的角度去计算某企业开发软件时的成本支出是多少。虽然这两者之间会有关联。

对于同一软件开发项目,不同的开发商由于各自的技术、能力、管理、积累以及其他方面的因素,其实际成本支出会有较大差异。而这不在本指南考虑之内。

1.4 名词解释

应用软件:是指针对特定领域开发,为特定目的服务的一类软件。

软件开发:指从软件项目启动到项目实施前这一时间段的工作。其内容包括详细设计、编码、测试、系统调试等方面的工作。

系统实施:指软件项目开发完毕进行安装到项目正式验收这一时间段的工作。其内容包括系统安装、个性化配臵、用户培训等方面的工作,

但不包括各实施点的本地化开发工作。

运行维护:指从软件项目正式验收到合同规定的项目维护期结束的这一时间段的工作。其内容包括在此期间所需要提供的原系统完善性修改

和服务等工作(不包括新增需求和原功能的重大变更)。如:运

行管理、系统平台维护、应用软件维护、数据维护等

验收测试:确定项目是否符合其验收准则,使客户能确定是否接收此项目的正式测试。

功能点(FP):功能点是对软件功能和大小的间接度量单位,一般通过必须和

用户交互的情况的数目来测算程序工作量的大小。功能点分析

法是目前国际上软件行业普遍接受的软件项目规模度量模型。成本系数:成本系数是指完成某个功能点(FP)的规定活动所需要投入的人工时,其单位为:人工时/FP。根据软件项目建设过程的各阶段

工作,可分为:开发成本系数、实施成本系数、维护成本系数。工作量:工作量的计算是按一个开发工作人员在一个月内(日历中的月,即包括国家规定的节假日)能完成的工作量为单位,也就是通常

所讲的“人月”。

人月成本:指软件企业一个月平均需要的所有开销(包括员工成本、国家税收、企业利润、管理成本和质量成本等)摊分到各个员工头上的

金额。

平均工资:指软件企业支付给所有员工的工资总和除以企业员工人数得到的工资数。

2软件项目费用概算

2.1项目阶段划分

软件项目全过程可分为:立项阶段、建设阶段、完成阶段。不同阶段工作重点不同。为保证软件项目开发质量,避免因需求不确定,或者频繁更改所造成的成本上升,同时也利于项目费用概算,软件项目建设最好采取“总体规划、分段实施”的原则。

立项阶段:可委托专业技术咨询机构或者专家进行项目的可行性分析,需求分析;根据需求分析,进行系统设计;根据需求分析、系统设计,计算

工作量,估算项目建设费(预算);根据项目概算进行招投标,确定软件开

发商,签订建设合同。

建设阶段:由软件开发商根据前期需求分析和系统设计,进行编码实现,并负责安装实施、运行维护等工作。项目实施完毕,需委托第三方测试机构

进行验收测试。

完成阶段:项目完成后,在需求变更较大的情形下,可委托专业技术机

构根据实际工作量估算项目建设费(决算),项目结束。

2.2 各阶段费用构成

各阶段的所有费用可分为四类:

咨询费:包括立项阶段的可行性分析,需求分析、系统设计、估价、招投标等方面的工作所需要支出的费用。

服务费:第三方测试机构的验收测试费、监理单位的监理费、进行数据扫描录入等方面工作的数据处理费等。

建设费:软件开发商在开发、实施、维护等方面工作的费用。其中包括:软件开发费、系统实施费、运行维护费。

附加费:针对具有特殊性质的软件开发项目。如:若需要提交源程序,必须增加知识产权费;若涉及保密方面的工作,则须增加保密

费用等。

此外,由于软件项目建设过程中,需求变更不可避免,因而还需要考虑

到因需求变更导致工作量加大带来的费用。软件项目费用构成如图1所示。

图1 软件项目费用构成

2.3 项目费用概算

依上所述,软件项目从立项到结束,项目费用为:

项目概算 = 咨询费+建设费+服务费(+需求变更费+附加费) = 咨询费+开发费+实施费+维护费+验收测试费+监理费 (+需求变更费+附加费)

可行性分析 软件项目费用构成

咨询费

需求分析 系统设计 估价 招标代理 建设费

维护费 实施费 服务费 监理费 测试费 需求变更费 附加费

保密费 知识产权保护费

技术咨询

开发费

其它

数据处理

标准符合性检测

3各项费用取费依据

3.1 咨询费

指软件项目立项前期,请专业机构或者专家进行技术咨询、可行性分析、需求分析,造价评估、方案设计、项目招标代理等方面工作所发生的费用。该部分费用可根据项目预计投入的建设费按照一定比例计取,也可以根据所投入的人月数进行计取,此外还可以由双方协商确定。

在招标活动中,公证处对全过程进行现场公证并对采购合同进行公证,公证费按照国家规定标准计算。

表1 软件行业咨询取费标准

表2 公证服务取费标准

注:

1)按表1计费不足1000元的,按1000元收费。

2)按表2计费不足200元的,按200元收费。

3)技术咨询按耗用工时(日)计费,为完成委托任务发生的差旅、交通费由委托方另行支付。

4)招标代理收费和公证服务收费按差额定率累进法计算。

如某招标代理业务中标金额为600万元,计算招标代理费如下:

100万元*1.0% = 1万元

(300-100)万元*0.8% = 1.6万元

(500-300)万元*0.7% = 1.4万元

(600-500)万元*0.55% = 0.55万元

则合计收费:1 + 1.6 + 1.4 + 0.55 = 4.55万元

3.2 建设费

建设费包括支付给软件开发商的进行软件开发、实施、维护等方面工作的费用。主要依据工作量(完成该项目需要投入的人力,以人月度量)和人月成本进行估算。

建设费 = 开发费+实施费+运行维护费

= (开发工作量+实施工作量+运行维护工作量)×人月成本3.3 服务费

3.3.1 验收测试费

软件项目验收是一个运行环境复杂、技术难度较高、评价体系抽象的过程。该项目验收除经过专家评审外,还应进行相应验收测试,只有两者结合才能为信息化项目验收和鉴定提供定性、定量的科学依据,才能做出较为客观准确的验收和鉴定结论。软件项目的验收测试是根据项目的特点(功能、技术需求和大小等)以及项目投入,按照评价软件质量的功能性、易用性、可靠性、可维护性、可移植性、效率和文档等7个特性进行特性裁减,分为功能确认测试和验收测试。

1)功能确认测试

项目对象:省、市级信息化建设项目包括电子政务建设项目验收,各种渠道申报的与软件相关的科技项目的验收和科技成果鉴定项目。

测试内容:根据申报或鉴定合同的技术条款和软件操作手册及被测软件运行确定测试内容,一般只覆盖软件的功能性、易用性和文档。主要判断被测系统是否完成合同要求的功能及相关特性。

收费标准:8000-10000元。

2)项目验收测试

项目对象:各类信息化建设项目包括电子政务建设项目应用发布之前的验收,各种渠道申报的与软件相关的科技项目的验收和科技成果的鉴定项目,只要用户需求和合同中的条款覆盖效率和可移植性等特性要求的项目。

测试内容:在模拟或实际环境下测试被测系统是否实现了用户需求,是否达到了国家标准的相关要求。依据用户需求分析、合同的技术条款、国家标准的特性要求、软件操作手册和被测软件运行确定测试内容。

收费标准:验收测试费 = 建设费D*各测试项费率之和*调节系数t 各测试项的费率及收费调节系数取值如表3、表4所示。

表3 验收测试项费率表

表4 调节系数t取值范围

注:

1)影响项目验收测试费用的因素一个是项目的大小,另一个是所选择的测试项。被选测试项多少决定测试费率a,项目大小决定收费调节系数L;

2)根据项目特点针对软件各个特性进行选择测试,测试费率为所选择软件特性测试费率a各项之和。3)根据项目大小采取项目建设费越高费率越低原则进行调节。

4)项目验收测试最低收费为: 8000元(不含负载压力测试)

2万元(含负载压力测试)

3.3.2 工程监理费

软件项目监理收费既考虑了信息系统软件项目的特点,又参照了其它监理行业的收费标准、收费方式。一般可按照项目建设费(或合同价格)的一定百分比取费。其取费比率主要根据项目的规模、阶段、内容、复杂程度及监理成本等多方面因素综合计算。计算公式如下:

监理费 = 建设费D*基本费率a*地域调整系数d*工期调整系数e

1)基本费率a根据项目建设费的规模进行调整。取值范围如下:

表5 监理基本费率a取值范围

2)鉴于软件项目实施时分布的地域会有所不同,因此,监理的费率应在基本费率的基础上考虑地域的因素。地域调整系数d取值如下:

表6 地域凋整系数d取值范围

3)鉴于软件项目工期长短不一,因此,监理的费率应在监理的基本费率基础上考虑工期的因素。工期越长,系数越大。工期调整系数e如下:

表7 工期调整系数e取值范围

4)其他

对于非监理原因造成工程延期而产生的监理附加工作,监理单位有权获得监理附加报酬。

监理附加报酬率 = 监理费*附加工作月数/合同规定月数。

对于项目结束后的维护,其监理取费由用户单位和监理单位协商解决。

本参考标准未作规定的,可参考国家相关标准。

3.3.3 数据处理费

项目中如含有大量档案、数据需要录入、处理,则需要考虑相应的数据处理服务费。收费标准可以根据所需要处理的资料的页数核计收费。

一般情况下单纯的数据录入,收费标准为:0.3-0.5元/页。特殊要求的数据处理可依据合同约定。

3.4 附加费

如果用户需要软件开发商提交源代码,则必须支付相应的知识产权费;如果所开发的项目是涉密项目,则需额外再支付给软件开发商保密费。这些费用的计算均与软件开发工作量相关,也就是与项目建设费相关,可按照项目建设费的一定比例计取,或者双方协商。

3.5需求变更估算

由于软件开发过程中,用户的需求有可能不断变化,从而导致开发工作量的变化,费用追加。故在立项阶段即要请专业机构或者专家对需求变更的风险性进行评估,以便在做项目预算时留出足够应付需求变更的经费。

项目需求变更一般发生在项目建设过程中,立项阶段的咨询服务不受需求变化的影响。但验收测试和工程监理工作量会随着需求变化而加大,所以需求变更费为:

需求变更费 =(建设费+验收测试费+监理费)* 需求变更风险系数f

风险系数f可依据以下因素确定:

1)项目的成熟度:如果是新项目,则开发过程中出现需求变更的可能性

很大,且需求变更幅度大,风险系数就高;如果是成熟项目,或者已经有过案例的项目,则需求变化的可能性较小,即使有变化,幅度也不会太高,则风险系数就低。

2)项目的规模大小:如果项目规模小,需求容易确定,变更几率就小,

反之就大;

3)用户业务的稳定性和管理的规范性:用户单位业务的变化和业务流程

的调整,都有可能带来开发过程中需求的变化。

4)前期项目需求分析、系统设计的规范性和完善性:前期的需求分析是

否全面到位、系统设计的是否规范和细致,会影响到开发过程的需求

变化率。

4工作量估算方法

工作量指在软件项目建设过程中需要投入的人力和时间,一般用人月数进行度量。项目建设阶段一般可分为:开发阶段、实施阶段、运行维护阶段。故在工作量需分阶段进行估算。

工作量=开发工作量+实施工作量+维护工作量

另:由于在软件项目开发过程中,因需求变更导致工作量改变的情形不可避免,故可分别在立项阶段进行工作量预算,在项目完成阶段进行工作量核算。

4.1 开发阶段工作量估算

开发工作量是计算实施阶段和维护阶段工作量的基础。主要有两种估算方法。

4.1.1功能点估算法

该方法主要是依据软件项目的功能需求来评估开发工作量。通过分析系统需求计算项目规模(功能点数),再乘以各阶段完成每个功能点所需要投入的人工时(开发成本系数),就可计算出完成项目所需要的人月数。适用于立项阶段需求分析比较详细的项目或者用于项目完成阶段的最终工作量估算。

开发工作量D(人月)= (项目功能点FP*开发成本系数k/H/W)

其中H是指国家规定的一天工作时数,W指一个月工作天数。

功能点FP的估算详见附录—软件项目功能点估算法。

开发成本系数k的大小主要是考虑项目的非技术难度,如开发周期、协调难度、业务的复杂程度、需求的不确定性等因素。根据对实际数据的测算,开发成本系数k取值范围一般为:

表8 开发成本系数k取值范围

针对个别项目,如果有特殊情况(如某些用户业务的特殊要求是一般项目中从未出现过的、开发人员需要到用户现场开发等),则经专业咨询机构或者专家评估,开发成本系数可以超出此范围上限的限制。

4.1.2 任务估算法

任务估算法是把软件项目功能分解为若干个相对独立的任务,再分别估计完成每个任务需要的人员搭配比例及投入时间,每个人员的工作量之和就是该任务的工作量。最后将各个任务的工作量累加起来就得出软件项目的总工作量。该方法适用于立项阶段的工作量估算。

依据软件工程的概念、国内软件开发行业的惯例及经验值,软件开发工作可分为:设计、编码、测试。

设计各个岗位人员工作量可基于以下标准计算:

(1)以程序员的工作量为标准;

(2)高级程序员的工作量为标准工作量的1.5倍;

(3)系统分析员的工作量为标准工作量的2.5倍;

(4)测试工程师的工作量为标准工作量;

(5)高级测试工程师的工作量为标准工作量的1.5倍;

(6)项目管理人员的工作量为标准工作量的3倍;

(7)市场营销人员的工作量为标准工作量;

(8)技术支持工程师的工作量为标准工作量;

(9)文秘的工作量为标准工作量的0.5倍;

例如:完成某个任务的人员投入和时间需求如表9,则其工作量为60.5 人月。

表9 某任务工作量估算表

4.2 实施阶段工作量估算

软件项目的实施范围因项目而异(有些项目只实施一个单位、有些需要实施多个单位、有些甚至需要全市、全省甚至全国实施),所以实施阶段的费用也会有很大的差异,甚至有的项目会出现实施费用超过开发费用的情形。

实施阶段的工作量可依据开发阶段工作量、实施系数来计算。

实施工作量(人月)= 开发工作量D*实施系数s

根据项目是集中式实施还是分布式实施,实施系数s的取值有所不同。

1)集中式实施的项目

实施系数s与“用户数”相关。设n为用户数,一般情况下:

当 0

否则,s=0.2 +((n-100)/100)*q(四舍五入取两位小数);

q是调节因子,取值范围为:0.03≤q≤0.05,具体取值依项目实施难度而定。

2) 分布式实施的项目

实施系数s与“实施单位(点)数”相关。设n为需要实施的单位(点)数,一般情况下:

s =0.2 +(n - 1)*q

q是调节因子,一般取值范围为:0.08≤q≤0.15,具体取值依项目实施难度而定。

3) 个别项目,如果对实施有特殊要求(这些特殊要求是一般项目中从

未出现过的或有本地化开发工作的),或者实施环境、条件、难度等

方面因素的影响,则经专业机构或者专家评估,实施系数可以超出此

范围上限的限制。

4) 如果软件项目是系统集成项目中的一部分,实施时需要整体考虑,

则可将实施费抽出另算。一种是将软件实施费并入到整个集成项目的

实施费用中,另一种就是在软件实施费中加入项目集成的实施费用。

4.3 维护阶段工作量估算

软件项目通过验收,交付使用后,需进行一年的系统维护。维护内容包括:运行管理、系统平台维护、应用软件维护、数据维护等。根据不同的用户要求,系统维护服务可分为以下两种情形:

A级

软件企业派出技术人员常驻用户处,解决日常运行中发生的问题。则其工作量由派驻人员的数目和派驻的时间决定。

软件(系统)维护工作量=派驻的人员数*时间(月)

B级

软件企业在国家规定的正常工作时间,按双方约定的条件和时间到达现场,且每月(或定期)派技术人员到现场进行软件(系统)性能调试,使之运行处于良好状态。则B级的维护工作所需工作量依据开发工作量、实施工作量、维护系数来计算。

运行维护工作量(人月) = (开发工作量+实施工作量)*维护系数w = (开发工作量+开发工作量*实施系数s)*维护系数w

= D*(1+s)*w

维护系数w取值范围为0.15-0.20,具体取值依项目维护难度而定。

针对个别项目,如果对维护有特殊要求(这些特殊要求是一般项目中从未出现过的),则经专业机构或者专家评估,维护成本系数可以不受此限制。

备注:

系统后期维护:系统运行一年之后的系统维护,需另行签订系统维护合约。为了有利于保证用户的利益和扶植软件企业,在维护工作范围不变的前提下,如果新维护合同的维护费用不超过上一年度维护金额的115%,则用户应该和原开发商直接签订维护合同,否则由可进行招投标并确定新维护合同的项目承担单位。

5人月成本估算方法

软件开发项目成本计算中应包括软件项目在开发过程中所耗费的各项费用,包括从设计阶段到测试完毕交付用户使用之间所发生的工资费、材料费、外协费、试验费、固定资产使用费、交通费、管理费等。一般用人月成本作为度量指标。

人月成本是指软件企业一个月平均需要的所有成本开销(包括工资、奖金、福利、办公成本、国家各种税费、管理费用等等)及软件企业合理利润的总和,除以企业员工人数。其成本开销主要包括以下方面:1)工资:指软件企业需要支付给软件开发人员的工资的平均值,设该值为B。

2)国家规定的福利:按照国家政策的缴费基数缴纳的职工福利,其中公积金8%~20%(此处按8%计),医疗保险金12%,养老金22%,失业金2%(即通常所说的四金),另外还有按工资总额计征的工伤保证金0.5%,生育保证金0.5%,残疾基金1.6%,工会基金1%,累计为47.6%。故该项成本为0.476B。

3)奖金及各项物质奖励:指企业支付给企业的奖金及过年过节的一些物质奖励和基本福利。根据经验及广东省软件行业情况,该项成本约为

0.20B。

4)办公成本:包括办公场地租赁费、水电费、差旅费、企业为项目顺利运作所支付的其他费用如市场营销费等各项。根据经验及研究,该项支出约占企业员工成本的三分之一,即该项成本为B/3。

5)人力资源储备费:企业人员流动、人员储备及人员的学习、培养、知识更新,不能创造价值但需要支付成本,该项成本为0.20B。

6)基础设施建设、设备的购臵、折旧费,各项开发平台、开发工具的购买等,该项成本约为0.15B。

7)国家税收和企业利润,根据经验和统计数据,约占企业员工成本的三分之一,故该项成本约为B/3。

8)管理费用:包括公司管理层,部门管理层,人力资源、行政、财务等人员的费用分摊。根据经验和行业通常计算方法,每十个软件人员配备两个管理人员,则管理费用计取的比例为前面七项总和的20%。

综合以上因素,可得出一般程序员的人月成本Q为:

Q = (工资+福利+奖金+办公成本+资源储备+基础建设+税收利润)*( 1 + 管理费率)

= (B+0.20B+0.476B+B/3+0.2B+0.15B+B/3)*1.2

= 3.23*B

注:平均工资B根据国家经济发展和软件行业发展状况每年会有所调整,不同的地区工资水平也会有所差异。可由软件行业协会根据软件行业统计数据和地方经济发布数据,得出全省主要地市每年的平均值并予以发布。

6其他事项

6.1 最终合同金额确定

软件项目完成后,根据最终的系统功能点数和性能要求,可由专业评估机构再次进行评估,根据评估结果确定最终项目的合同金额。其中因需求变更而追加的费用一般不能超过项目概算的40%。如果由于需求发生巨大变更而导致需求变更费用大幅增加,软件开发商需要及时向用户方提出申请,由专家进行评估后决定是终止需求的变更或续签新合同。

软件开发成本估算

软件开发成本估算 软件开发成本估算主要指软件开发过程中所花费的工作量及相应的代价。不同与传统的工业产品,软件的成本不包括原材料和能源的消耗,主要是人的劳动的消耗。另外,软件也没有一个明显的制造过程,它的开发成本是以一次性开发过程所花费的代价来计算的。因此,软件开发成本的估算,应是从软件计划、需求分析、设计、编码、单元测试、集成测试到认证测试,整个开发过程所花费的代价作为依据的。 软件开发成本估算的经验模型 1.Putnam 模型 1978年Putnam提出的,一种动态多变量模型。 L = Ck * K1/3 * td4/3 其中: L-----------源代码行数(以LOC计) K-----------整个开发过程所花费的工作量(以人年计) td-----------开发持续时间(以年计) Ck----------技术状态常数,它反映“妨碍开发进展的限制”,取值因开发环境而异,见下表

从上述方程加以变换,可以得到估算工作量的公式: K = L3/(Ck3*td4) 还可以估算开发时间: td = [L3/(Ck3*K)]1/4 2.COCOMO模型(constructive cost model) 这是由TRW公司开发,Boehm提出的结构化成本估算模型。是一种精确的、易于使用的成本估算方法。 COCOMO模型中用到以下变量: DSI-------源指令条数。不包括注释。1KDSI = 1000DSI。 MM-------开发工作量(以人月计) 1MM = 19 人日 = 152 人时 =1/12 人年TDEV-----开发进度。(以月计) COCOMO模型中,考虑开发环境,软件开发项目的类型可以分为3种: 1.组织型(organic): 相对较小、较简单的软件项目。开发人员对开发目标 理解比较充分,与软件系统相关的工作经验丰富,对软件的使用环境很

软件开发报价的计算方法

软件开发报价的计算方法 1.软件开发价格估算方法 软件开发价格与工作量、商务成本、国家税收和企业利润等项有关。为了便于计算,给出一个计算公式: 软件开发价格=开发工作量×开发费用/人·月 1.1开发工作量 软件开发工作量与估算工作量经验值、风险系数和复用系数等项有关:软件开发工作量=估算工作量经验值×风险系数×复用系数 1.1.1估算工作量经验值(以A来表示) 软什开发工作量的计算,曾有人提出以源代码行或功能点来计算,这些方法实施起来均有不少难度。目前国际上仍旧按以往经验的方式加以计算,国内各软件企业也是采用经验的方式加以估算工作量。 为了更好地规范估算方法,建议可按照国家标准“GB/T 8566-2001软件生存周期过程”所规定的软件开发过程的各项活动来计算工作量。 工作量的计算是按一个开发工作人员在一个月内(日历中的月,即包括国家规定的节假日)能完成的工作量为单位,也就是通常所讲的“人·月”。 特别要提醒的是软件开发过程中既包括了通常所讲的软件开发,也应包括各类软件测试的活动。 1.1.2风险系数(以σ来表示) 估算工作量经验值亦会存在较大风险,造成软件危机的因素很多,这也是一个方面的因素。特别当软件企业对该信息工程项目的业务领域不熟悉或不太熟悉,而且用户又无法或不能完整明白地表达他们的真实的需求,从而造成软件企业需要不断地完善需求获取,修改设计等各项工作。因此: l ≤风险系数≤ 1.5 根据我们对软件企业的了解,超过估算工作量经验值的一半,已是不可接受,所以我们确定“1.5”为极限值。当然这既要看企业的能力,也要看用户能接受的程度。1.1.3复用系数(以τ来表示)

软件开发费用计算

.1软件项目价格评估书 信息技术飞速发展,计算机软件交易市场日趋成熟规范, 我方参照《软件开发和服务项目价格构成及评估方法》,以及,目前国际上通行的也比较科学的估算方法是采用功能点分析方法,使用此方法能够真实、准确地计算出计算机软件的价值以作为市场交易价格的参照依据. 1.价格评估公式: 项目建设费Q=咨询服务费P+项目建设费M(软件开发费D+实施费S+维护费W)+验收测试费C+工程监理费G 2.项目建设费计算公式: 软件开发费D=工作量(人月)*软件人员月人工费用 =(项目功能点*开发成本系数/7.5/22)*(3.23B) 开发成本系数:3000个功能以下3.5人工时/FP-4.0人工时/FP 3000-8000个功能以下4.0人工时/FP-4.5人工时/FP 实施费S =工作量(人月)*软件人员月人工费用 =(项目功能点*实施成本系数/7.5/22)*(3.23B) 分布式实施项目的系数 实施成本系数=开发成本系数*(0.2+(n-1)*k) 比例因子K:0.08<=k<=0.15具体按项目实施难度而定 维护费W=工作量(人月)*软件人员月人工费用 =(项目功能点*维护成本系数/7.5/22)*(3.23B) 维护成本系数=(开发成本系数+实施成本系数)*p

比例因子P一般为15%-20% 软件人员月人工费用=(工资+奖金+福利+办公成本+资源储备+基础建设+税收利润)*(1+管理费用百分比)=3.23B ?软件开发费D: 软件开发费用指对项目进行详细需求分析,系统设计,编码,测试等方面的工作而需支出的费用,取费主要依据项目规模(功能点),开发成本系数和软件人员月人工费,我方根据(附录四:软件功能说明表),对软件的功能进行分析认为:软件项目难度一般,由于各单位对报表的需求不一,所以编制报表的工作量较多,按照软件规模的大小,我们设定软件开发成本系数为4. 1.软件功能点计算 复杂加权因子表(Complexity weights Factor) 系数范围 采用系数 用户输入数EI 3-6 4 用户输出数EO 4-7 5 用户查询表EQ 3-6 5 内部逻辑文件 数ILF 7-15 12 外部接口文件 数EIF 5-10 6 1.软件功能表 数据表 接口 文件 外部 查询 逻 辑表 报 表数

软件开发费用计算方法

软件开发项目计算方法 (V2.0) 广东软件行业协会 二○○六年八月

目录 1前言 (2) 1.1 目的 (2) 1.2 软件项目建设类别 (2) 1.3 适用范围 (2) 1.4 名词解释 (3) 2软件项目费用概算 (4) 2.1项目阶段划分 (4) 2.2 各阶段费用构成 (5) 2.3 项目费用概算 (6) 3各项费用取费依据 (7) 3.1 咨询费 (7) 3.2 建设费 (8) 3.3 服务费 (8) 3.4 附加费 (12) 3.5需求变更估算 (12) 4工作量估算方法 (13) 4.1 开发阶段工作量估算 (13) 4.2 实施阶段工作量估算 (15) 4.3 维护阶段工作量估算 (17) 5人月成本估算方法 (18) 6其他事项 (19) 6.1 最终合同金额确定 (19) 6.2 付款方式 (20) 6.3 评估机构 (20) 软件项目规模功能点估算方法 (21) 1 功能点估算流程 (21) 2 功能点分析的要素 (22) 3 功能点计算(初步值UFC) (23) 4 确定技术复杂度因子TCF (24) 5 计算调节后的功能点数FP (25) 参考文献 (26)

1前言 1.1 目的 规范软件市场行为,维护价格公平竞争,同时为软件项目建设经费概算提供科学可信的依据。 1.2 软件项目建设类别 软件产业发展到现今阶段,技术已经很成熟,产品也已经很丰富,同时由于开发工具和操作系统平台的可选择性,软件项目出现了多样化的趋势。同样是软件项目,完成途径和开发手段不同,其费用也会存在很大差异。不同类别的软件项目,其费用构成和概算方法也不同。根据项目建设要求和方式,一般分为以下几类: 新开发项目:从项目的需求分析开始直至产品完成正式交付使用,其工 作覆盖软件产品的分析、设计、测试、实施、运行维护各 阶段。 二次开发:在现有产品的基础上进行提升和改造。 软件移植:已有产品从一个操作系统平台转移到另一个操作系统平台,或者从原来的运行环境切换到另一个新的运行环境所 需要进行的调整和变动。 产品集成:将多个现有软件产品构件整合在一起,组装成比较复杂的 或者更加完整的产品。 1.3 适用范围 本指南适用于应用类定制软件的新开发项目,项目应覆盖软件开发全过

软件开发报价的计算方法(完整版)

软件开发报价的计算方法(完整版) 1.软件开发价格估算方法 软件开发价格与工作量、商务成本、国家税收和企业利润等项有关。为了便于计算,给出一个计算公式: 软件开发价格=开发工作量×开发费用/人·月 1.1开发工作量 软件开发工作量与估算工作量经验值、风险系数和复用系数等项有关:软件开发工作量=估算工作量经验值×风险系数×复用系数 1.1.1估算工作量经验值(以A来表示) 软什开发工作量的计算,曾有人提出以源代码行或功能点来计算,这些方法实施起来均有不少难度。目前国际上仍旧按以往经验的方式加以计算,国内各软件企业也是采用经验的方式加以估算工作量。 为了更好地规范估算方法,建议可按照国家标准“GB/T 8566-2001软件生存周期过程”所规定的软件开发过程的各项活动来计算工作量。 工作量的计算是按一个开发工作人员在一个月内(日历中的月,即包括国家规定的节假日)能完成的工作量为单位,也就是通常所讲的“人·月”。 特别要提醒的是软件开发过程中既包括了通常所讲的软件开发,也应包括各类软件测试的活动。 1.1.2风险系数(以σ来表示) 估算工作量经验值亦会存在较大风险,造成软件危机的因素很多,这也是一个方面的因素。特别当软件企业对该信息工程项目的业务领域不熟悉或不太熟悉,而且用户又无法或不能完整明白地表达他们的真实的需求,从而造成软件企业需要不断地完善需求获取,修改设计等各项工作。因此: l ≤风险系数≤ 1.5 根据我们对软件企业的了解,超过估算工作量经验值的一半,已是不可接受,所以我们确定“1.5”为极限值。当然这既要看企业的能力,也要看用户能接受的程度。1.1.3复用系数(以τ来表示)

软件开发费用计算方法

文档从互联网中收集,已重新修正排版,word格式支持编辑,如有帮助欢迎下载支持。软件开发项目计算方法 (V2.0) 广东软件行业协会 二○○六年八月

目录 1前言............................................................................................................................ 错误!未定义书签。 1.1 目的 .................................................................................................................... 错误!未定义书签。 1.2 软件项目建设类别 ............................................................................................ 错误!未定义书签。 1.3 适用范围 ............................................................................................................ 错误!未定义书签。 1.4 名词解释 ............................................................................................................ 错误!未定义书签。 2软件项目费用概算.................................................................................................... 错误!未定义书签。 2.1项目阶段划分 ..................................................................................................... 错误!未定义书签。 2.2 各阶段费用构成 ................................................................................................ 错误!未定义书签。 2.3 项目费用概算 .................................................................................................... 错误!未定义书签。3各项费用取费依据.................................................................................................... 错误!未定义书签。 3.1 咨询费 ................................................................................................................ 错误!未定义书签。 3.2 建设费 ................................................................................................................ 错误!未定义书签。 3.3 服务费 ................................................................................................................ 错误!未定义书签。 3.4 附加费 ................................................................................................................ 错误!未定义书签。 3.5需求变更估算 ..................................................................................................... 错误!未定义书签。4工作量估算方法........................................................................................................ 错误!未定义书签。 4.1 开发阶段工作量估算 ........................................................................................ 错误!未定义书签。 4.2 实施阶段工作量估算 ........................................................................................ 错误!未定义书签。 4.3 维护阶段工作量估算 ........................................................................................ 错误!未定义书签。 5人月成本估算方法.................................................................................................... 错误!未定义书签。6其他事项.................................................................................................................... 错误!未定义书签。 6.1 最终合同金额确定 ............................................................................................ 错误!未定义书签。 6.2 付款方式 ............................................................................................................ 错误!未定义书签。 6.3 评估机构 ............................................................................................................ 错误!未定义书签。

软件开发费用计算方法

软件开发项目计算方法 () 广东软件行业协会 二○○六年八月

目录

1前言 目的 规范软件市场行为,维护价格公平竞争,同时为软件项目建设经费概算提供科学可信的依据。 软件项目建设类别 软件产业发展到现今阶段,技术已经很成熟,产品也已经很丰富,同时由于开发工具和操作系统平台的可选择性,软件项目出现了多样化的趋势。同样是软件项目,完成途径和开发手段不同,其费用也会存在很大差异。不同类别的软件项目,其费用构成和概算方法也不同。根据项目建设要求和方式,一般分为以下几类: 新开发项目:从项目的需求分析开始直至产品完成正式交付使用,其工 作覆盖软件产品的分析、设计、测试、实施、运行维护各 阶段。 二次开发:在现有产品的基础上进行提升和改造。 软件移植:已有产品从一个操作系统平台转移到另一个操作系统平台,或者从原来的运行环境切换到另一个新的运行环境所 需要进行的调整和变动。 产品集成:将多个现有软件产品构件整合在一起,组装成比较复杂的或者更加完整的产品。 适用范围 本指南适用于应用类定制软件的新开发项目,项目应覆盖软件开发全过

程(包括立项可行性分析,需求分析、编码实现、安装实施、运行维护各个阶段工作)。其中人月成本的计算方法也适用于其他类型的项目。 本指南是站在行业的角度,去评估一个应用软件项目的开发费用应该是多少,而不是站在开发商的角度去计算某企业开发软件时的成本支出是多少。虽然这两者之间会有关联。 对于同一软件开发项目,不同的开发商由于各自的技术、能力、管理、积累以及其他方面的因素,其实际成本支出会有较大差异。而这不在本指南考虑之内。 名词解释 应用软件:是指针对特定领域开发,为特定目的服务的一类软件。 软件开发:指从软件项目启动到项目实施前这一时间段的工作。其内容包括详细设计、编码、测试、系统调试等方面的工作。 系统实施:指软件项目开发完毕进行安装到项目正式验收这一时间段的工作。其内容包括系统安装、个性化配置、用户培训等方面的工作, 但不包括各实施点的本地化开发工作。 运行维护:指从软件项目正式验收到合同规定的项目维护期结束的这一时间段的工作。其内容包括在此期间所需要提供的原系统完善性修改 和服务等工作(不包括新增需求和原功能的重大变更)。如:运 行管理、系统平台维护、应用软件维护、数据维护等 验收测试:确定项目是否符合其验收准则,使客户能确定是否接收此项目的正式测试。 功能点(FP):功能点是对软件功能和大小的间接度量单位,一般通过必须和

软件开发工作量估算和报价

1.软件开发价格估算方法 软件开发价格与工作量、商务成本、国家税收和企业利润等项有关。为了便于计算,给出一个计算公式: 软件开发价格=开发工作量×开发费用/人·月 开发工作量 软件开发工作量与估算工作量经验值、风险系数和复用系数等项有关: 软件开发工作量=估算工作量经验值×风险系数×复用系数 软什开发工作量的计算,曾有人提出以源代码行或功能点来计算,这些方法实施起来均有不少难度。目前国际上仍旧按以往经验的方式加以计算,国内各软件企业也是采用经验的方式加以估算工作量。 为了更好地规范估算方法,建议可按照国家标准“GB/T8566-2001软件生存周期过程”所规定的软件开发过程的各项活动来计算工作量。 工作量的计算是按一个开发工作人员在一个月内(日历中的月,即包括国家规定的节假日)能完成的工作量为单位,也就是通常所讲的“人·月”。 特别要提醒的是软件开发过程中既包括了通常所讲的软件开发,也应包括各类软件测试的活动。 估算工作量经验值亦会存在较大风险,造成软件危机的因素很多,这也是一个方面的因素。特别当软件企业对该信息工程项目的业务领域不熟悉或不太熟悉,而且用户又无法或不能完整明白地表达他们的真实的需求,从而造成软件企业需要不断地完善需求获取,修改设计等各项工作。因此:

l≤风险系数≤ 根据我们对软件企业的了解,超过估算工作量经验值的一半,已是不可接受,所以我们确定“”为极限值。当然这既要看企业的能力,也要看用户能接受的程度。 估算工作量经验值是软件企业承担一般项目来估算的,但如果软件企业已经采用“基于构件的开发方法”,并己建立起能够复用的构件库(核心资产库),或者已有一些软件产品,仅作二次开发,从而使软件开发工作量减少。因此: ≤复用系数≤1 根据国内外软件企业在实施基于构件开发方法(软件产品线)的经验数据,提高工作效率达到25%(最高值)。 开发费用/人·月 软件企业的商务成本、国家税收、企业利润、管理成本和质量成本。均可摊分到各个软件开发人员头上。 开发费用/人·月=(P+Q+R)×S×τ 人头费主要是员工的工资、奖金和国家规定的各项按人计算的费用。其总量在软件企业中的商务成本占70%-80%。 P=B× 国家规定的公积金7%,医疗保险金12%,养老金22%,失业金2%(即通常所说的四金),另外还有按工资总额计征的工伤保证金%,生育保证金%,残疾基金%,工会基金2%,累计为%。B为平均工资,即企业支付给员工的工资、奖金、物质奖励等多项总和,除以企业员工数,分摊到每个月。

软件开发费用核算管理办法

软件开发费用核算管理办法 一、目的 为加强软件开发项目的管理,加速公司的新产品(新工艺)的研究开发和新技术的推广应用,统筹合理安排软件开发项目费用的开支,特制定本制度。 二、适用范围 本制度适用于北京国都信业科技有限公司软件开发项目(即新产品、新工艺研究开发、新技术推广应用项目)的管理。 三、软件开发费用开支范围 1.软件开发项目所发生的项目调研费、资料费、差旅费、技术协作费,以及专为项目购置的材料和测试仪器、设备等费用。 2.为软件开发项目进行的技术咨询和学术交流等活动所发生的评审费、咨询费、会议费等费用。 3.为搜集行业科技情报及知识产权工作所发生的技术资料费、出版印刷费、专利年费等费用。 4.软件开发人员的工资薪金、办公场所租金、以及用于科技进步奖励所发生的费用。 四、软件开发费用的管理 1.公司财务部是软件开发费用的归口管理部门,具体负责软件开发项目的审定和费用指标方案的制定以及项目结果的评定工作。 2.软件开发费用的拨付按照公司资金拨付的规定执行,各项目组应在软件开发项目立项批准意后方可启用,并由项目承担单位按规定的使用范围严格控制、合理使用。 3.软件开发费用按软件开发项目计划下达到具体项目,实行专款专用,严格管理,不得挪做它用。软件开发项目以合作或委托第三方形式进行的,必须签订项目外包技术合作合同,并经财务部审查后才能生效拨款。 4.软件开发费用在使用中,分管软件开发技术工作的负责人,应按内控制度授权的规定执行,并按照不同的项目进行核销。 5.软件开发费用核销时,须由项目负责人、分管软件开发技术的负责人、总经理审核同意后方可到财务报销付款。 6.采用项目外包或第三方协作完成的有关软件开发项目所取得的软件开发成果,所有权均归属公司,所形成的知识产权纳入公司知识产权管理范围进行管理。

软件开发费用计算方法

. 软件开发项目计算方法 (V2.0) 广东软件行业协会 二○○六年八月

目录 1前言 (2) 1.1 目的 (2) 1.2 软件项目建设类别 (2) 1.3 适用范围 (2) 1.4 名词解释 (3) 2软件项目费用概算 (4) 2.1项目阶段划分 (4) 2.2 各阶段费用构成 (5) 2.3 项目费用概算 (6) 3各项费用取费依据 (7) 3.1 咨询费 (7) 3.2 建设费 (8) 3.3 服务费 (8) 3.4 附加费 (12) 3.5需求变更估算 (12) 4工作量估算方法 (13) 4.1 开发阶段工作量估算 (13) 4.2 实施阶段工作量估算 (15) 4.3 维护阶段工作量估算 (17) 5人月成本估算方法 (18) 6其他事项 (19) 6.1 最终合同金额确定 (19) 6.2 付款方式 (20) 6.3 评估机构 (20) 软件项目规模功能点估算方法 (21) 1 功能点估算流程 (21) 2 功能点分析的要素 (22) 3 功能点计算(初步值UFC) (23) 4 确定技术复杂度因子TCF (24) 5 计算调节后的功能点数FP (25) 参考文献 (26)

1前言 1.1 目的 规范软件市场行为,维护价格公平竞争,同时为软件项目建设经费概算提供科学可信的依据。 1.2 软件项目建设类别 软件产业发展到现今阶段,技术已经很成熟,产品也已经很丰富,同时由于开发工具和操作系统平台的可选择性,软件项目出现了多样化的趋势。同样是软件项目,完成途径和开发手段不同,其费用也会存在很大差异。不同类别的软件项目,其费用构成和概算方法也不同。根据项目建设要求和方式,一般分为以下几类: 新开发项目:从项目的需求分析开始直至产品完成正式交付使用,其工 作覆盖软件产品的分析、设计、测试、实施、运行维护各 阶段。 二次开发:在现有产品的基础上进行提升和改造。 软件移植:已有产品从一个操作系统平台转移到另一个操作系统平台,或者从原来的运行环境切换到另一个新的运行环境所 需要进行的调整和变动。 产品集成:将多个现有软件产品构件整合在一起,组装成比较复杂的 或者更加完整的产品。 1.3 适用范围 本指南适用于应用类定制软件的新开发项目,项目应覆盖软件开发全过

软件开发成本估算

软件成本估算 近年来,由于软件的价格越来越高,在计算机系统中软件所占的比重越来越大,软件价格估计的差错对于一个计算机公司的盈亏起到举足轻重的作用。因此,软件成本的估计受到普遍的重视。 软件价格的计算不是一门精确的学科,因此我们称为成本估算。它受到许多因素的影响,包括人的技术和环境的影响。在开发工作尚未开始之前作软件成本估价就要冒险。有的公司采用“三段估价”的办法,在开发初期的计划阶段订出初步估算价,在要求分析阶段后给出一个修正估算价格,在设计完成之后给出最终估算价格。在软件成本估算方面的工作大多数都从分析与软件成本相关的因素入手。 一、影响软件成本的因素 1. 软件人员的业务水平 软件人员的素质、经验、掌握知识的不同在工作中的表现有很大的差别。有人作过试验,组织一些不同程度的软件人员开发同一课题,对开发的程序进行统计分析,结果发现,完成得好的和差的,生产率相差五倍,甚至十几倍。可见软件人员的业务水平对软件产品的生产率影响是很大的。 2. 软件产品按开发的复杂性可分为三类: 一类是应用程序,如用高级语言写的科学计算、数据处理、企业管理等用户程序。 二类是实用程序,如用系统程序设计语言或汇编语言写出的编译程序、汇编程序、联接编辑程序、输入加载程序。 三类是系统程序,如用汇编语言或系统程序语言写的操作系统、实时处理控制系统等。这三类程序,以系统程序的生产率为1,以应用程序开发的复杂为1,可以画出三类程序的生产率和复杂性的比例关系图表。 见表2.3 表2.3 生产率和复杂性比例关系表 项目系统程序实用程序应用程序 生产率 1 5—1025—100 复杂性9 31 B.Bo?hm教授进一步给出了这三种软件产品的程序规模和工作量的相互关系的公式。程序的规模是以源程序每千行语句(或指令)为单位。程序的工作量以一人一月为单位,记为PM这三类程序,每个人每月生产程序的千行数为: 应用程序是: PM=2.4*(KDSI)**1.05 (其中KDSI为千行源代码数) 实用程序是 PM=3.0*(KDSI)**1.12 系统程序是 PM=3.6*(KDSI)**1.20 例如,三类程序所选取的开发项目都是60000行的程序,所需投入的人-数三类不同程序大体比例为了:1:1.7:2.8,工作量估计曲线大约如图21所示。 估计工作量

软件项目开发成本估算案例分析

软件成本估算应用案例分析 本文以某公司开发一套人力资源管理系统为例来讲解软件成本估算的方法及过程。 项目需求: 某甲方需要一套人力资源管理系统,该软件企业想要去投标,甲方单位业务部门人员列出了比较原始的业务需求,具体需求描述如下: 1)组织架构管理 对公司的组织架构进行维护和图形化显示,包括部门、岗位等信息。可以对部门进行新建、修改、删除、合并、改变归属关系、设定岗位人数并根据已录入的档案信息自动显示实际岗位人数。支持部门、岗位信息的EXCEL模板导入功能。可以对岗位进行新建、修改、查询、删除等,岗位信息包括岗位说明、相关联工资级别等。 2)招聘管理 对于空缺岗位生成招聘申请,人力资源主管和部门主管审批后自动发布到外部招聘渠道。可以查询招聘信息或删除已过期的招聘信息。对应聘人员信息进行管理,将得到的简历、面试情况录入到系统并进行维护。 3)档案管理 对员工的信息进行管理,包括员工基本信息(如姓名、年龄、性别、岗位、电话、邮件等)、家庭档案信息、培训记录、工作记录。还包括员工照片、社保号码等。授权用户可以对员工档案进行查询或进行修改(如调动、离职、绩效考

核信息填写等) 4)人力地图 将公司的全部或某部门组织架构图显示出来,并可查看员工的基本信息。本人可以维护部分个人信息,如手机号码、个人主页地址、个人说明等。 5)培训管理 制订公司年度培训计划进行管理,并对每次公司级培训建立培训记录并对培训效果进行分析。提供年度培训计划的建立、修改、审核、审批等功能。对每次培训进行管理,可自动发送培训通知,培训后填写培训满意度、培训总结。可以对某时间段内的培训或选定培训进行培训效果的比较和分析 6)人力资源分析 包括基于人数的分析和基于部门的分析。基于人数的分析包括统计各岗位、各部门、各学历、各年龄段的人数、各岗位/部门实际人数和空缺人数等。基于部门的分析包括分析各部门到岗率、入/离职情况、岗位构成、学历构成、年龄构成等。 7)报表中心 授权用户可查看或打印员工基本信息、培训信息、工作情况、考核情况、并提供人力资源常用模板(如离职申请、培训申请等)的下载和打印。 软件项目成本估算: (1)测算规模 基于上述的业务需求,用预估功能点方法进行规模测算。测算出来的调整后功能点规模是260。具体如表D-6所示:

在软件项目成本计算中引入估算

在软件项目成本计算中引入估算、预算和决算体系 2008-5-27 15:50 摘要:软件项目的成本估算和成本控制一直是软件项目管理研究的一大难题,本文提出 在软件项目成本估算中采用功能点方法,在软件项目成本预算中实施工作结构分解和COCOMO方法结合的方法,在软件项目结束后引入决算和审计机制,为软件企业建立起一个基于估算、预算和决算的知识库系统,来达到提高成本管理能力的目的。 关键字:软件成本估算,功能点,WBS, COCOMO,估算,预算,决算 引言 软件成本超支是软件项目中经常遇到的问题。很多软件项目经理都曾经历过这样的情况, 由于开发成本的超支,软件项目做完之后,不仅不能得到上级领导的表扬,甚至连项目奖金 都拿不到,而这一切都来源于当初对项目成本估算的不准。 随着软件开发技术的发展,软件成本在计算机系统总成本中影响越来越大,它直接影响到投资者的决策和软件项目的开发。没有合理而准确的软件成本估算,就无法很好地进行软件项目的管理。 据国际数据公司的研究报告显示,全球500强企业中,信息技术投资超过生产设备投 资的企业达65%.然而软件项目的开发情况却不容乐观,1995年,美国大概只有10%的软件 项目可以按时交付,而且费用也不超支,约30%的项目没有完成就被取消了。 项目超支的原因是多方面的,其中一个主要原因是由于软件开发过程中,成本控制工作 没有做好,没有对资源配置进行优化,因此造成了成本浪费。而更多的原因则来自对软件项 目成本的错误估算,用一个不可能的成本来实现一个比预算昂对得多的软件,不管如何控制 都将无法避免成本超支的噩运。 常用软件成本估算模型介绍在软件成本估算领域,有很多的估算模型,这些模型经过了 几十年的发展,其中部分模型成为了目前软件成本估算的常用模型,如功能点、DEL PH、SDC 和COCO MO等。其中以功能点和COCOMO模型应用最广。 功能点估算模型 功能点方法的本质是站在客户的角度度量系统,它认为系统的功能可以分为以下5类: 内部逻辑文件、外部接口文件、外部输入、外部输出和外部查询。根据计算规则首先确定每 个功能的分类及其功能复杂度,从而可以得到每个功能的权值,全部功能的权值相加就得到 “未调整的功能点数”。 功能点方法可以在早期度量软件的规模,软件的规模与它的工作量、进度和成本关系紧 密,早期准确的软件规模度量有助于确定软件价格和提高策划过程中估算的能力。

软件开发报价的计算方法完整版

软件开发报价的计算方 法 HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】

软件开发报价的计算方法 1.软件开发价格估算方法 软件开发价格与工作量、商务成本、国家税收和企业利润等项有关。为了便于计算,给出一个计算公式: 软件开发价格=开发工作量×开发费用/人·月 开发工作量 软件开发工作量与估算工作量经验值、风险系数和复用系数等项有关: 软件开发工作量=估算工作量经验值×风险系数×复用系数 估算工作量经验值(以A来表示) 软什开发工作量的计算,曾有人提出以源代码行或功能点来计算,这些方法实施起来均有不少难度。目前国际上仍旧按以往经验的方式加以计算,国内各软件企业也是采用经验的方式加以估算工作量。 为了更好地规范估算方法,建议可按照国家标准“GB/T 8566-2001软件生存周期过程”所规定的软件开发过程的各项活动来计算工作量。 工作量的计算是按一个开发工作人员在一个月内(日历中的月,即包括国家规定的节假日)能完成的工作量为单位,也就是通常所讲的“人·月”。 特别要提醒的是软件开发过程中既包括了通常所讲的软件开发,也应包括各类软件测试的活动。 风险系数(以σ来表示) 估算工作量经验值亦会存在较大风险,造成软件危机的因素很多,这也是一个方面的因素。特别当软件企业对该信息工程项目的业务领域不熟悉或不太熟悉,而且用户又无法或不能完整明白地表达他们的真实的需求,从而造成软件企业需要不断地完善需求获取,修改设计等各项工作。因此: l ≤风险系数≤ 根据我们对软件企业的了解,超过估算工作量经验值的一半,已是不可接受,所以我们确定“”为极限值。当然这既要看企业的能力,也要看用户能接受的程度。

软件项目中的成本构成及估算方法

软件项目中的成本构成及估算方法 随着知识经济、信息时代的来临,计算机软件业迅猛发展。商品化、资本化、资产化的计算机软件的价值评估的社会需求也日益增多,而且有越来越多的趋势。由于系统软件通常是一些规模大、复杂程度高的人一机系统,因此,系统软件的开发、使用、维护、管理的过程,是一个非常复杂的系统工程,需要有巨大的人力、物力、财力资源,需要各种计算机软、硬件的支持。这一特点是在系统软件评估中应予充分考虑的,也是从成本途径评估系统软件价值时应予着重关注的。据统计,软件成本在软、硬件总成本中的份额,已从50年代的百分之十几,上升到近期的百分之七八十,而且还在持续上升。软件成本中的开发成本和维护成本的比例,也从50年代的接近1:1,达到了近期的1:2。系统软件开发成本和维护成本在整个生命周期中份额。本文对上表的数字作了部分调整。主在维护阶段剔除了完善性维护成本。这一项成本不应列入委托评估系统软件的本次价值评估。这样,开发、维护成本在整个生命周期中的份额也相应发生了变化。 一、系统软件的成本构成系统软件的成本作为一个经济学范畴,应反映软件产品在其生产过程中所耗费的各项费用,为原材料、燃料、动力、折旧、人工费、管理费用、财务费用待项开支的总和。从财务角度来看,列入系统软件的成本有如下的项目:(1)硬件购置费如计算机及相关设备的购置,不间断电源、空调器等的购置费。(2)软件购置费,如操作系统软件、数据库系统软件和其它应用软件的购置费。(3)人工费,主要是开发人员、操作人员、管理人员、的工资福利费等。(4)培训费。(5)通讯费,如购置计算机网络设备、通讯线路器材、租用公用通讯线路等的费用。(6)基本建设费,如新建、扩建机房、购置计算机机台、机柜等的费用。(7)

软件项目报价方式

软件项目价格评估书 信息技术飞速发展,计算机软件交易市场日趋成熟规范, 我方参照《软件开发和服务项目价格构成及评估方法》,以及,目前国际上通行的也比较科学的估算方法是采用功能点分析方法,使用此方法能够真实、准确地计算出计算机软件的价值以作为市场交易价格的参照依据. 价格评估公式: 项目建设费Q=咨询服务费P+项目建设费M(软件开发费D+实施费S+维护费W)+验收测试费C+工程监理费G 项目建设费计算公式: 软件开发费D=工作量(人月)*软件人员月人工费用 =(项目功能点*开发成本系数/7.5/22)*(3.23B) 开发成本系数:3000个功能以下3.5人工时/FP-4.0人工时/FP 3000-8000个功能以下4.0人工时/FP-4.5人工时/FP 实施费S =工作量(人月)*软件人员月人工费用 =(项目功能点*实施成本系数/7.5/22)*(3.23B) 分布式实施项目的系数 实施成本系数=开发成本系数*(0.2+(n-1)*k) 比例因子K:0.08<=k<=0.15具体按项目实施难度而定 维护费W=工作量(人月)*软件人员月人工费用 =(项目功能点*维护成本系数/7.5/22)*(3.23B) 维护成本系数=(开发成本系数+实施成本系数)*p 比例因子P一般为15%-20% 软件人员月人工费用=(工资+奖金+福利+办公成本+资源储备+基础建设+税收利润)*(1+管理费用百分比)=3.23B 软件开发费D: 软件开发费用指对项目进行详细需求分析,系统设计,编码,测试等方面的工作而需支出的费用,取费主要依据项目规模(功能点),开发成本系数和软件人员月人工费,对软件的功能进行分析认为:软件项目难度一般,由于各单位对报表的需求不一,所以编制报表的工作量较多,按照软件规模的大小,我们设定软件开发成本系数4. 软件功能点计算 复杂加权因子表(Complexity weights Factor) 系数范围采用系数 用户输入数EI 3-6 4 用户输出数EO 4-7 5 用户查询表EQ 3-6 5 内部逻辑文件数ILF 7-15 12 外部接口文件数EIF 5-10 6 软件功能表 数据表接口文件外部查询逻辑表报表数 功能22 5 24 0 231

4种软件成本估算方法解析

4种软件成本估算方法解析 当下行业内在进行软件成本估算时,常用的有4种估算方法。这4种软件成本估算方法分别是: 以“估”为主的——经验法和类推法。 以“算”为主的——类比法和方程法。 下面我们分别介绍一下这4大软件成本估算方法。 经验法:经验法也叫专家法,是由行业内经验丰富的专家背靠前一起依据自己的行业经验对软件项目进行整体的估算。前期的经验法基本上属于拍脑袋来进行项目的大概估算,后续的经验法便基于WBS的软件进行估算和加进了DELPHI/加权平均。这种方法依赖评估人员的主观性过大,所以估算出的结果误差较大。 类推法:类推法是基于量化的经验进行估算的。采用类推法时,所选择的历史项目与待评估的项目一定要是高度相似的,历史数据也要尽量选择本组织内的数据,并且一定要对差异之处进行调整。类推法虽然是迄今为止理论上最可靠的估算方法,由于它是以“估”为主的,脱离不了评估人员的主观性,所以使用类推法的估算结果经常产生极大偏差。 类比法:类比法是基于大量历史项目样本数据来确定目标项目的预测值,通常是以50百分位数为参考而非平均值。当待评估项目与已完成项目在某些项目属性(如应用领域、系统规模、复杂度、开发团队经验等)类似时,可以使用类比法。类比法的行业基准较少,此时可以通过选择单个项目属性进行筛选比对,根据结果再进行工作量调整。 方程法:方程法是基于基准数据建模,可以行业数据与企业数据相结合,通

过输入各项参数,确定估算值。 当需求极其模糊或不确定时,如果此时具有高度类似的历史项目,则可直接采用类推法,若此时具有与本项目部分属性类似的一组基准数据,则可以直接采用类比法。对于规模估算已经开展的项目,可采用方程法。

软件开发报价计算方法

软件开发报价计算方法: 1.软件开发价格估算方法 软件开发价格与工作量、商务成本、国家税收和企业利润等项有关。即: 软件开发价格=开发工作量X开发费用/人?天 1.1 开发工作量 软件开发工作量与估算工作量经验值、风险系数和复用系数等项有关: 软件开发工作量=估算工作量经验值X风险系数X复用系数 1.1.1 估算工作量经验值 软什开发工作量的计算,目前国际上以往经验的方式加以计算,国内各软件企业也是采用经验的方式加以估算工作量。 为了更好地规范估算方法,建议可按照国家标准“GB/T 8566-2001 软件生存周期过程” 所规定的软件开发过程的各项活动来计算工作量。 工作量的计算是按一个开发工作人员在一个月内(日历中的月,即包括国家规定的节假日)能完成的工作量为单位,也就是通常所讲的“人?天”。 软件开发过程中既包括了通常所讲的软件开发,也应包括各类软件测试的活动。 1.1.2 风险系数 估算工作量经验值亦会存在较大风险,造成软件危机的因素很多,这也是一个方面的因素。特别当软件企业对该信息工程项目的业务领域不熟悉或不太熟悉,而且用户 又无法或不能完整明白地表达他们的真实的需求,从而造成软件企业需要不断地完善需求获取,修改设计等各项工作。因此: I <风险系数<1.5 1.1.3 复用系数 估算工作量经验值是软件企业承担一般项目来估算的,但如果软件企业已经采用“基于构件的开发方法” ,并己建立起能够复用的构件库(核心资产库),或者已有一些软件产品,仅作二次开发,从而使软件开发工作量减少。因此: 0.25 <复用系数<1 根据国内外软件企业在实施基于构件开发方法(软件产品线)的经验数据,提高工作效率达到

软件项目的成本预算

实验五软件项目的成本预算 实验目的 1.掌握基于软件项目的成本估算与WBS进行软件项目的成本预算的方 法; 2.理解累计预算成本的概念,掌握基准预算(按时间分段的项目成本 预算)的图形描述方法。 3.熟悉“时间-成本累计曲线”图的绘制方法。 实验内容 1.以项目组为单位,讨论一个相对合理的人力资源费用比例,形成本 项目的人力资源资费标准,如教材P109中的表4-26所示。 本项目的资源费用比例如下图所示: 资源费用比例 资源名称类型缩写最大单位标准费率加班费率每次使用成本成本累算基准日历1何迅超工时何100%¥80.00/工时¥0.00/工时¥0.00/工时按比例标准 2薛志立工时薛100%¥80.00/工时¥0.00/工时¥0.00/工时按比例标准 3吴力工时吴100%¥80.00/工时¥0.00/工时¥0.00/工时按比例标准 4林学振工时林100%¥80.00/工时¥0.00/工时¥0.00/工时按比例标准 5梁晓施工时梁100%¥70.00/工时¥0.00/工时¥0.00/工时按比例标准 6吴育烁工时吴100%¥80.00/工时¥0.00/工时¥0.00/工时按比例标准 7吴智辉工时吴100%¥80.00/工时¥0.00/工时¥0.00/工时按比例标准 8叶梦娇工时叶100%¥75.00/工时¥0.00/工时¥0.00/工时按比例标准 9刘凯茵工时刘100%¥75.00/工时¥0.00/工时¥0.00/工时按比例标准 2.以项目组为单位,对于选定的项目,根据试验四的成本估算结果, 结合WBS和项目的进度计划,分摊项目成本,编制项目的项目成本预算计划 (要求精细到模块级粒度),结果如教材P09的表4-27所示。 项目成本预算如下图所示

相关文档
最新文档