软件开发报价的计算方法

http://blog.sina.com.cn/s/blog_53decb410100hows.html

1.软件开发价格估算方法
    软件开发价格与工作量、商务成本、国家税收和企业利润等项有关。为了便于计算,给出一个计算公式:

软件开发价格 = 开发工作量 × 开发费用/人·月

1.1开发工作量
    软件开发工作量与估算工作量经验值、风险系数和复用系数等项有关:

软件开发工作量 = 估算工作量经验值 × 风险系数 × 复用系数

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

l ≤ 风险系数 ≤ 1.5

根据我们对软件企业的了解,超过估算工作量经验值的一半,已是不可接受,所以我们确定“1.5”为极限值。当然这既要看企业的能力,也要看用户能接受的程度。
1.1.3复用系数(以τ来表示)
    估算工作量经验值是软件企业承担一般项目来估算的,但如果软件企业已经采用“基于构件的开发方法” ,并己建立起能够复用的构件库(核心资产库),或者已有一些软件产品,仅作二次开发,从而使软件开发工作量减少。因此:

0.25 ≤ 复用系数 ≤ 1

根据国内外软件企业在实施基于构件开发方法(软件产品线)的经验数据,提高工作效率达到25%(最高值)。
1.2开发费用/人·月
    软件企业的商务成本、国家税收、企业利润、管理成本和质量成本。均可摊分到各个软件开发人员头上。

开发费用/人·月 =(P+Q+R)× S× τ

1.2.1 P(人头费)
    人头费主要是员工的工资、奖金和国家规定的各项按人计算的费用。其总量在软件企业中的商务成本占70%-80%。

P = B × 1.476

国家规定的公积金 7%,医疗保险金12%,养老金22%,失业金 2%(即通常所说的四金),另外还有按工资总额计征的工伤保证金0.5%,生育保证金0.5%,残疾基金1.6%,工会基金2%,累计为47.6%。
    B为平均工资,即企业支付给员工的工资、奖金、物质奖励等多项总和,除以企业员工数,分摊到每个月。
1.2.2 Q(办公费)
    办公费包括企业办公房屋租赁费和物业管理费、通信费、办公消耗品、水电空调费、设备折旧、差旅费,另外也包括企业对员工的在职培训所支付的费用,其总量在软件企业中的商务成本占20%-30%。

Q = B/3

此处办公费用按商务成本的25%计算。
1.2.3 R(国家税收和企业利润)
    由于国家实施发展软件产业的优惠政策,故不单独列出计算,但软件企业仍需承担缴纳国家税收的义务,可一并与企业利润一起考虑。
    另外,软件企业的员工不可能全年满负荷地工作,即使一年十二个月都安排工作,但也需抽出时间进行在职培训和提职的岗前培训。据我们的了解,软件企业的员工一年能有10个月到 11个月的工作也是正常的。

R = B/3

此处为我们的建议方案,各软件企业可视情况加以变更。
1.2.4 S(管理系数)
    通常每个机构的管理人员都会有一定的比例,参考一些机构的做法,按每十个软件人员配备两个管理人员即管理成本:

1 ≤ S ≤ 1.2

1.2.5 T(优质系数)
    提高软件质量,必然有所开支,即质量成本,对于不同的软件企业来说,其质量成本不尽相同。
    软件企业与其他企业一样,也有诚信和品牌等诸多因素,从而增加企业的开支。
    目前我们可以按通过 ISO9000质量体系认证和CMM或CMMI的认证来确定,分别取值1.05、1.1、1.15、1.2。
    今后建议可对软件企业的资质分为四级。由软件行业协会根据CMMI的认证、品牌、诚信程度等各种因素加以确定。此体系建设还有待进一步探索。
    据此,我们综合上述各点:
    开发费用/人·月 =(B × 1.476 + B/3 + B/3)× l.2 × T
                     = B ×(1.476 + 2/3)× 1.2 × T
                     = B × 2 .575 × T
                     = B × λ
    当T=1.05时,λ=2.7
    当T=1.2时,λ=3.09
    因此,2.7 ≤ λ ≤ 3.09
    对于承接国外软件外包业务,一方面员工的工资较高,另外工作的安排也较难满负荷工作,用此建议R=B/2。因此
    开发费用/人·月 = B(1.476 + 1/3 + 1/2)× 1.2 × T
                     = B × 2.767 × T
                     = B × λ
    当T=1.05时,λ=2.906
    当T=1.2时,λ=3.32
    因此,2.9 ≤ λ ≤ 3.32
    结论:
        软件开发价格 = A × σ × τ × B × λ
            A:估算工作量经验值
            B:软件企业的平均工资/人·月
            Q:风险系数l ≤ Q ≤ 1.5
            T:复用系数0.25 ≤ τ ≤ 1
           λ:综合系数2.7 ≤ λ ≤ 3.09
2. 软件(系统)维护收费价格估算方法
    在完成信心工程项目的系统集成和应用软件开发,并交付用户正式运行的一年内,对软件(系统)实行免费维护服务一年。
    在正式运行一年后,软件企业应与用户签定软件(系统)维护合同。该合同属技术转让合同,也可属技术开发合同。
    根据不同的用户要求,可分四种级别进行软件(系统)维护。
2.1 A级
    软件企业派出技术人员常驻用户,解决日常运行中发生的问题。
2.1.1 U(系统建设投资额)
    用户需要软件企业维护的系统,该系统建设的投资额。如用户只需要软件企业维护其所开发的应用软件,U就是该应用软件开发费;如用户需要软件企业维护整个系统,包括计算机硬件、软件、网络和应用软件,则U就是该信息工程项目的总投资额。
2.1.2 N(技术人员数)
    软件企业派出N个技术人员,常驻用户,因此:

软件(系统)维护费/年 = U × 15% 或 B × λ × N × 12

B、λ参见1.
2.2 B级
     软件企业每周七天,每天24小时(即7×24小时)响应,2小时到现场,且每天派技术人员到现场进行软件(系统)性能调试,使之运行处于良好状态。

软件(系统)维护费/年 = U × 10%

2.3 C级
    软件企业7×24小时响应,2小时到场。

软件(系统)维护费/年=U × 5%

2.4 D级
    用户的信息工程系统或应用软件发生问题,由原承担的软件企业派人维护。
2.4.1 B’
    这种维护方式要求软件企业需要保存所有的技术档案,更需要软件企业抽出专人来不断熟悉和全面掌握该软件(系统)的各项技术细节。因此,软件企业的这项支出必然要在维护费用收入中得到回报。
    以1.1.3节中的B 作为参数,将其人·月单位改为人·天,以B’表示。
2.4.2 τ’
    软件企业如果采用基于构件开发方法,并建立起构件库,则会大大提高软件维护的效率。另外,如果有多家用户运行的系统大致类似,也可有所提高效率。
    以1.1.3节中的τ 作为参数,以τ’来表示。因此:

软件(系统)维护费/次=B’ × τ’× n

此次n表示所需要的人·天数。τ’的取值是0.2 ≤ τ’≤ 1。
3. 系统集成价格的估算方法
    将整个系统所涉及到的设备、软件、网络整和起来,并能正常地运行,其运行的结果能达到用户建立该系统的目标。这就是系统集成的含义。因此,可以理解为单纯的设备采购和供应并不涉及系统集成,以及单纯的应用软件开发也并不涉及系统集成。
    系统集成费应与整个系统的规模、整个系统的复杂程度等项有关。
    系统规模往往与系统建设费用密切相关。为了简便计算,以系统建设费用(以U来表示)为参考坐标。复杂程度(以α来表示)可分四种级别来区分。

系统集成费 = U × α × T

T参见1.2.5节
3.1 A级
    整个系统涉及到计算机硬件、软件、局域网络,且体系结构在三层次以下(含三层次)。

5% ≤ α ≤ 8%

3.2 B级
    整个系统涉及到计算机硬件、软件、局域网络、互联网,且体系结构在三层以上(含三层次)。

7% ≤ α ≤ 10%

3.3 C级
    整个系统涉及到计算机硬件、软件、局域网络、互联网以及多种网络接口。

8% ≤ α ≤ 12%

3.4 D级
    整个系统涉及到计算机硬件、软件、网络、通信以及各种数据采集设备接口或者与用主系统有接口。

10% ≤ α ≤ 15%

4. 系统解决方案费用估算方法
    根据用户所提出的初步需求,软件企业根据以往的经验为之提供整个系统建设的方案,包括需购买的计算机硬件、软件、网络设备和应用软件开发的大体设想、费用估 算、进度初步安排、信息化所涉及到的规章制度的一些规划,有时还会涉及信息中心的建设等等。这就是系统解决方案所要完成的工作。
    目前国内市场对于系统解决方案是一种智力劳动成果的认识不足,以及国内多数招标公司并不熟悉信息技术,从而更加使得系统解决方案收费变得困难。因此,目前的收费处于过渡阶段。
    系统解决方案费用与整个系统的规模、复杂程度等项有关。
    系统规模往往与系统建设费用密切相关,为了简便计算,以系统建设的总投资(以U来表示)为参考坐标。
    复杂程度就是用户的功能、性能要求复杂性、信息接口的类型和数量有关,以β来表示。

解决方案费用=U × β × T

T参见 1.2.5节
    关于β我们参照第3节所列各级。
    A级: 0.7% ≤ β ≤ 1.2%
    B级:     1% ≤ β ≤ 1.8%
    C级: 1.5% ≤ β ≤ 2.2%
    D级:    2% ≤ β ≤ 3%

时间: 2024-08-29 11:33:40

软件开发报价的计算方法的相关文章

项目管理理论与实践(7)——软件开发报价的计算方法

1.软件开发价格估算方法软件开发价格与工作量.商务成本.国家税收和企业利润等项有关.为了便于计算,给出一个计算公式: 软件开发价格 = 开发工作量 × 开发费用/人·月 1.1开发工作量软件开发工作量与估算工作量经验值.风险系数和复用系数等项有关: 软件开发工作量 = 估算工作量经验值 × 风险系数 × 复用系数 1.1.1估算工作量经验值(以A来表示)软什开发工作量的计算,曾有人提出以源代码行或功能点来计算,这些方法实施起来均有不少难度.目前国际上仍旧按以往经验的方式加以计算,国内各软件企业也

软件项目报价方法

题:软件项目报价方法 广告:========================================================== 欢迎使用[豆瓣读书] 管理你的阅读,查阅书评,编写读书笔记等. ^^ app下载:http://itunes.apple.com/cn/app/id695492935 ================================================================= 软件项目一般包括解决方案.开发.维护.系统集成等.以下

小规模软件开发团队现存问题思考若干

小规模软件开发团队现存问题思考若干 这里指的是创业初期的软件开发团队,由于面临较大的财政压力,不得不接一些外包来养活自己,然后再抽时间做自己的软件或平台的小规模创业团队.本文系自己的一点浅显的思考,观点较为浅薄,如果存在错误的地方,还望有经验的大神们指正. 一.创业初期的软件开发团队,大多存在以下几点问题: 1.没有产品经理: 没有产品经理,导致软件系统架构设计过于随意,而且项目人员搭配不均衡,最终导致存在以下几个详细的问题(1)设计思路不一致(2)软件流程不一致(3)各终端与后台字段命名不一致

软件如何报价如何定价

软件如何报价如何定价一直是软件业讨论的热点.这算捅了马蜂窝了. 有个网友给我一个评论,很值得深思和大家讨论:      刚开始写得不错,越写越觉得离谱,不是三五个人了,和教材接近了.现在做项目的价钱是我们能够左右的吗,你算着80万,人家招标价60万,别人报30万,你干不干.不干有人干.既要吃饭回扣项目又要做好,这是真的.我想问一下,中国的软件项目需求到底多大.我觉得你在算你自己的帐,算得不错.可是人家客户人不认账.中国不光你这一个公司. 我经常说:我们是商业软件公司开发.我们的编写代码工作是为了

减少存储过程封装业务逻辑-web开发与传统软件开发的思维模式不同

本篇文章讨论并不是:不要使用存储过程,因为有些事情还是要存储过程来完成,不可能不用.而是关于:"业务逻辑是不是要封装在存储过程中实现,这样子php.java等就是调用存储过程". 业务逻辑,通俗说就是:比如要取数据的操作,取出会员编号为x的数据,原来我们一般是封装成函数,或者直接编写sql语句查询.现在是交给数据库的存储过程去完成. +------------------------------------------------------------ 写这篇文章的缘由 +-----

58红包系统开发软件,58红包扫雷APP开发服务,58红包扫雷软件开发详情,58红包扫雷系统定制开发

58红包系统开发软件[蔡经理 136-1236-3414 微|电] (非平台方,玩家勿扰),58红包系统扫雷开发服务,58红包扫雷APP开发服务,58红包扫雷软件开发详情,58红包扫雷系统定制开发.我公司拥有技术开发团队一百多人,有大量红包扫雷系统开发经验和案例,欢迎联系我索取报价. 从发展规划的顶层设计来看,金融科技得到了高度肯定,这对整个行业来说都是吃了一颗定心丸.那么,伴随着金融科技发展壮大的第三方支付产业,该如何抓住这一机遇呢? 无论是发展规划的整体设计,还是仅就支付服务而言的单独条款,

PC蛋蛋 app软件开发, bj28 H5框架搭建,加拿大28系统定制

移动互联网和pc蛋蛋软件开发,pc蛋蛋app开发时代的来临,可以说使整个人类世界站在了一个新时代的前沿.移动互联网时代在为人们的生活带来更加便捷.丰富和流畅的信息体验的同时,也加快了人们的工作.生活节奏,并在无形中改变了人们早已习惯了几个世纪的信息获取方式和决策方式.毫不夸张地说,移动互联网正在改变一切,而且这种改变不可逆转.这些改变既增加了互联网营销的难度,也为其带来了前所未有的机遇,下面就跟随移动互联网营销的脚步去了解一下到底什么是移动互联网营销,开启你的移动互联网营销之旅. Pc蛋蛋软件开

结构化方法和面向对象方法在软件开发中的对比

学习过C语言和JAVA的同学们一定清楚,这两种语言代表了两种不同的开发方式,即以C语言为代表的结构化开发方法和JAVA代表的面向对象的开发方法.由于二者在程序结构上有着很大的区别,因此,在软件开发领域中,根据自己的需求来选择合理的开发方式就显得尤为重要. 开发软件通常有三个层次: 1.满足用户需求 2.可维护性,即可修改性,让软件能随着用户需求的变更而容易改变 3.可重用性(在其它软件中,能尽量重用该软件的模块) 通过对软件的这三个主要层次的分析,我们就能在实际开发中确定我们的选择. 结构化方法

敏捷软件开发简述

前言:由于我读了邹欣老师的<构建之法:现代软件工程(第二版)>,因此对敏捷软件开发有了比较大的兴趣.于是我在网上找了一些论文,比如Requirements Engineering and Agile Software Development.A decade of agile methodologies: Towards explaining agile software development.在读了这些论文之后,对敏捷软件开发有了大致的了解.这篇博文主要是简单介绍敏捷软件开发,重点集中在主