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

1.1适用范围
l适用于应用定制软件的新开发项目,应涵盖软件开发的全过程。
l是从行业的角度来评估一个应用软件项目的开发成本,而不是从开发者的角度来计算一个企业的软件开发成本。
2.软件项目的估计成本
2.1项目阶段的划分
软件项目的整个过程可以分为:项目立项阶段、建设阶段和完成阶段。不同阶段的工作重点不同。为了保证软件项目开发的质量,避免因需求不确定或频繁变更导致的成本增加,同时有利于项目成本估算,软件项目建设最好采用“整体规划,分段实施”的原则。
项目立项阶段:
可以委托专业技术咨询机构或者专家对项目进行可行性分析和需求分析;根据需求分析,设计系统;根据需求分析和系统设计,计算工作量,估算项目建设成本;根据项目预算进行投标,确定软件开发商,签订施工合同。
施工阶段:
软件开发人员根据前期的需求分析和系统设计,实施编码,并负责安装、实施、运行和维护等工作。项目完成后,需要委托第三方检测机构进行验收检测。
完成阶段:
项目完成后,当需求发生较大变化时,可委托专业技术机构根据实际工作量估算项目建设成本,项目结束。
2.2各阶段的成本构成
每个阶段的所有成本可以分为四类:
咨询费:包括可行性分析、需求分析、系统设计、估价、招标等费用。在项目立项阶段。
服务费:第三方检测机构的验收检测费、监理单位的监理费、数据扫描录入的数据处理费等。
构建成本:软件开发人员在开发、实现、维护等方面的工作成本。包括:软件开发费、系统实施费、运维费。
附加费:用于特殊性质的软件开发项目。比如需要提交源程序,必须增加知识产权费;如果涉及到保密的工作,就要增加保密费。
软件项目费用构成2.3项目成本估算
根据以上所述,软件项目的成本是:
项目预算=咨询费+施工费+服务费+附加费
3.各种费用的基础。
3.1咨询费
指专业机构或专家在技术咨询、可行性分析、需求分析、成本评估、方案设计、工程招标代理等方面发生的费用。在软件项目建立的早期阶段。部分费用可按工程概算造价的一定比例计算,或按投入的人工月数计算,也可由双方协商确定。
在招标活动中,公证处现场全程公证,并对购房合同进行公证,公证费按国家标准计算。
软件行业咨询费标准公证费收取标准注意:
1.按表1计费不足1000元的,按1000元计费。
2.按表2计费不足200元的,按200元计费。
3.技术咨询按工作时间收费,为完成委托任务而发生的差旅费和交通费由委托方另行支付。
4.招标代理费和公证服务费按差别费率累进法计算。
5.如果一笔招标代理业务的中标金额为600万元,招标代理费计算如下:
100万元* 1.0% = 1万元

万元* 0.8% = 1.6万元。
万元* 0.7% = 14000元。
万元*0.55% = 0.55万元。
总收费:1+1.6+1.4+0.55 = 4.55万元。
3.2施工成本
建设费包括支付给软件开发商的软件开发、实施和维护费用。根据工作量和人月费用估算。
l施工成本= ×人月成本
工作量估算方法
工作量是指软件项目建设过程中需要投入的人力和时间,一般以月数来衡量。项目的建设阶段一般可分为:开发阶段、实施阶段和运营维护阶段。所以工作量需要分阶段估算。
工作量=开发工作量+实施工作量+维护工作量
3.2.1开发阶段工作量估算开发工作量是实施阶段和维护阶段工作量计算的基础。有两种主要的估算方法。点估计法任务估计法
3.2.1.1功能点估计法
这种方法主要是根据软件项目的功能需求来评估开发工作量。通过分析系统需求,计算出项目规模,再乘以每个阶段完成每个功能点所需的人工,就可以计算出完成项目所需的人工月数。适用于在项目启动阶段进行详细需求分析或在项目完成阶段进行最终工作量估算的项目。
l开发工作量D=
其中l h指国家规定的一天内的工作时间,w指一个月内的工作天数。
L功能点FP的估算见附录-软件项目功能点估算方法。
开发成本系数K主要考虑项目的非技术难度,如开发周期、协调难度、业务复杂程度、需求不确定性等因素。根据实际数据计算,开发成本系数k的取值范围一般为:
3.2.1.2任务估算法
任务估算法是将软件项目功能分解成若干个相对独立的任务,然后估算完成每项任务所需的人员配备比例和投入时间,每个人的工作量之和就是该任务的工作量。最后,把每个任务的工作量加起来,得到软件项目的总工作量。该方法适用于项目立项阶段的工作量估算。
根据软件工程的概念,国内软件开发行业的实践和经验,软件开发可以分为设计、编码和测试。
l基于程序员的工作量;
l高级程序员的工作量是标准工作量的1.5倍;
l系统分析师的工作量是标准工作量的2.5倍;
l测试工程师的工作量为标准工作量;
l高级测试工程师的工作量为标准工作量的1.5倍;
l项目管理人员工作量为标准工作量的3倍;
l营销人员的工作量是标准工作量;
l技术支持工程师的工作量为标准工作量;
l秘书工作量为标准工作量的0.5倍;
例如,如果完成一项任务所需的人员投入和时间,工作量将是60.5人-月。
3.2.2实施阶段的工作量估算
软件的实现范围因项目而异,所以实现阶段的成本会有很大差异,甚至有些项目会出现实现成本超过开发成本的情况。

实施阶段的工作量可以根据开发阶段的工作量和实施系数来计算。
实施工作量=开发工作量D*实施系数s
根据项目是集中式还是分布式,实现系数s的值是不同的。
集中实施项目
实现系数s与用户数量有关。设置n为用户数量,一般情况下:
当 0


