软件开发
成本
成本测算

软件开发如何进行成本估算?

比如这个具体的例子: 开发一种新的软件产品, 估计需要开发40kloc。项目经理可以选择从两 个开发人员池中招聘: 具有超高的分析师能力和非常低的编程…
关注者
16
被浏览
33,351

10 个回答

估算人月是一件十分困难的事情

发布于 2018-12-29 16:51

题目和正文好像是两个不同的问题?好吧,对于成本估算,除非你用过相同的技术、相同的团队,面对相同的用户做过相同的项目,否则准确的成本估算是不可能的(甚至粗略的估算都不太可能),但如果有这样的条件,那干嘛不直接用原来的程序呢?

所以我诚实的说,这种估算其实没什么意义。当然我理解客户很想要一个结果,但根本上说,客户真正应该看重的是你控制项目成本和进度的能力,如果他只想听到一个明确的数字,那这个项目的前景恐怕很值得担忧。

至于人员选择的问题,涉及到人的事情,更没有什么标准答案了。选择你能驾驭的模式就好。

发布于 2018-12-29 22:00

在对一个软件项目进行成本估算或评估时,应该包括从项目立项直至项目研发活动结束所花费的资源总和,并且可以按阶段进行估算或测量。

软件成本估算的基本过程是什么呢?

软件成本估算的过程可分为:估算规模、估算工作量、估算工期和估算成本这4个过程,最终确定软件成本。其中成本估算需要对直接人力成本、间接人力成本、间接非人力成本及直接非人力成本分别进行估算。

1、估算规模

通常情况下,软件规模的估算是软件成本估算过程的起点。估算规模是后续计算软件项目的工作量、成本和进度的主要依据,是项目范围管理的关键,因此,在条件允许的情况下,应该进行软件项目规模估算。

规模估算时,要根据可行性研究报告或类似文档明确项目需求及系统边界。选择估算方法时,要依据项目特点和需求详细程度来决定。

若当前项目的需求不确定,可跳过这一环节,进入下个一环节。


2、估算工作量

软件项目工作量估算可采用方程法、类比法和类推法。

类推法:软件项目需求极其模糊或不确定时,如果有高度相似的历史项目,可采用此方法,利用历史项目数据来粗略估算工作量。

类比法:软件项目需求极其模糊或不确定时,如果有与本项目部分属性类似的一组基准数据,可采用类比法,利用基准数据来粗略估算工作量。

方程法:已经开展了规模估算的项目,可以采用方程法,通过各项参数来确定待估算项目的工作量。

项目工作量估算都应该采用两种估算方法来对估算结果进行交叉验证,以追求估算的准确性。工作量的估算结果是一个范围,不是单一的值。


3、估算工期

软件项目工期的估算同样可以采用类推法、类比法和方程法。


4、估算成本

类比法和类推法同样适用于需求极期模糊或不确定时的成本估算。

成本估算结果通常为一个范围。


在获得工作量和工期后,采用科学的方法来进行成本估算。中基数联做为北京软件造价评估技术创新联盟的授权合作伙伴,在对软件成本估算时,采用快速功能点法进行成本估算。

版权来自net。欢迎垂询~

发布于 2019-01-05 14:47

你是怎么知道需要开发40kloc的?不同水平的人写代码的质量是不同的。比较早期的项目,有些是根据代码行来估算项目规模大小和费用的。现在已经有了更好的NESMA估算法。该方法会评估一套软件的功能点数量(把功能点作为软件规模大小衡量的基本单位,如同重量的千克,长度的米等等),根据功能点数量来评价一套软件的规模大小。

软件成本分为如下几个部分:直接人力成本、间接人力成本、直接非人力成本、间接非人力成本,还有多个因素的调整因子。

根据功能点数量,我们可以计算直接人力成本。直接人力成本包含项目组直接参与人员的工资、奖金、福利等。这就可以看到,北京的开发团队人员工资跟二三线城市的是不同的,所以,区域差异存在直接人力成本差异,这个人员工资均值数据是有行业统计数据可查的(软件行业基准数据)。最后导致不同城市的开发团队成本可能存在差异,当然代码质量可能也有不同。

所以,你从2个开发人员池来选择对比,应根据多种因素来靠量。

发布于 2019-12-11 16:29

项目经理没有分析能力吗?

否则怎么知道需要开发40KLOC?

就您的举例肯定优先选择编程能力强的开发人员,不然软件谁来编程?

而且软件开发成本的估算和您举的例子关联并不大,

软件开发成本评估需要先将软件的功能需求转换成功能点,

再结合调整因子来综合评估成本。

发布于 2021-10-13 09:58

日常开发中,往往出现开发周期一再延长,返工成本增加,开发成本大幅增加。如何科学高效估算开发项目规模及提出合理报价?

1、提高用户需求质量,降低返工几率。

CoCode平台针对这一问题,不仅对用户需求或用户故事进行三级分类,更通过开发工具进一步提升用户需求质量。CoCode需求分析工具,快速分析用户需求缺陷,对用户完整性以及全面反应用户需求有非常重要的警示作用,提升了用户需求质量。

CoCode免费开发工具

2、明确用户需求,工具自动估算项目规模

CoCode平台通过提高用户需求质量、自动生成UML用例图等方式精准锁定客户需求,需求分析工具使用COSMIC和IFPUG项目规模估算法,自动估算项目规模大小,估算工作量和项目报价。

CoCode估算工具

发布于 2022-07-06 11:01

分析和编码是不同的能力,如同谈【软件工程】和【编程语言】一样,泾渭分明;但同时又相辅相成:若没有一定的编程能力,何来优秀的分析能力?若只是coding强,也不见得有构建方案和项目管理的能力。

但如果非要选,我倾向于整体分析能力较强的那位比较合适,当然应该给他配置优秀的coding,并且他要善于倾听意见来补足自己的短板,这好像又是另一方面的素质了(coding强的人往往需要突破一个“知见障”,即要认识到IT本质上是为业务服务的。我们做产品也好,做项目也好,做得都是解决问题的方案,这个说起来话有长了)。

说回成本和周期估算,是困难且专业的一件事,和团队水平、项目复杂度、项目执行情况等均有极大关系,不知道大家有没有听说过【人月神话】?Finally,建议请既精通【分析+编程+项目经验】的专家来估算,或者如果项目不太复杂也可试试 dev.hireview.cn等第三方评估。

发布于 2020-10-23 16:18

软件开发如何进行成本估算

  在对一个软件项目进行成本估算或评估时,应该包括从项目立项直至项目研发活动结束所花费的资源总和,并且可以按阶段进行估算或测量。

软件开发可以来这里,这个首叽的开始是壹伍扒中间的是壹壹叁叁最后的是驷柒驷驷,按照顺序组合起来就可以找到。

  软件成本估算的基本过程是什么呢?

  软件成本估算的过程可分为:估算规模、估算工作量、估算工期和估算成本这4个过程,最终确定软件成本。其中成本估算需要对直接人力成本、间接人力成本、间接非人力成本及直接非人力成本分别进行估算。

  1、估算规模

  通常情况下,软件规模的估算是软件成本估算过程的起点。估算规模是后续计算软件项目的工作量、成本和进度的主要依据,是项目范围管理的关键,因此,在条件允许的情况下,应该进行软件项目规模估算。

  规模估算时,要根据可行性研究报告或类似文档明确项目需求及系统边界。选择估算方法时,要依据项目特点和需求详细程度来决定。

  若当前项目的需求不确定,可跳过这一环节,进入下个一环节。

  2、估算工作量

  软件项目工作量估算可采用方程法、类比法和类推法。

  类推法:软件项目需求极其模糊或不确定时,如果有高度相似的历史项目,可采用此方法,利用历史项目数据来粗略估算工作量。

  类比法:软件项目需求极其模糊或不确定时,如果有与本项目部分属性类似的一组基准数据,可采用类比法,利用基准数据来粗略估算工作量。

  方程法:已经开展了规模估算的项目,可以采用方程法,通过各项参数来确定待估算项目的工作量。

  项目工作量估算都应该采用两种估算方法来对估算结果进行交叉验证,以追求估算的准确性。工作量的估算结果是一个范围,不是单一的值。

  3、估算工期

  软件项目工期的估算同样可以采用类推法、类比法和方程法。

  4、估算成本

  类比法和类推法同样适用于需求极期模糊或不确定时的成本估算。

  成本估算结果通常为一个范围。

  在获得工作量和工期后,采用科学的方法来进行成本估算。中基数联做为北京软件造价评估技术创新联盟的授权合作伙伴,在对软件成本估算时,采用快速功能点法进行成本估算。

发布于 2021-11-19 19:04

一、系统软件的成本构成 系统软件的成本作为一个经济学范畴,应反映软件产品在其生产过程中所耗费的各项费用,为原材料、燃料、动力、折旧、人工费、管理费用、财务费用待项开支的总和。
从财务角度来看,列入系统软件的成本有如下的项目:
(1)硬件购置费如计算机及相关设备的购置,不 间断电源、空调器等的购置费。
(2)软件购置费,如操作系统软件、数据库系统软件和其它应用软件的购 置费。
(3)人工费,主要是开发人员、操作人员、管理人员、的工资福利费等。
(4)培训费。
(5)通讯费,如 购置计算机网络设备、通讯线路器材、租用公用通讯线路等的费用。
(6)基本建设费,如新建、扩建机房、购置计算机机台、机柜等的费用。
(7)财务费用。
(8)管理费用,如办公费、差旅费、会议费、交通费。
(9)材料费,如打印纸、包带、磁盘等的购置费。
(10)水、电、汽、气费。
(11)专有技术购置费。
(12)其它费用,如资料费、固定资产折旧费及咨询费。
从系统软件生命周期构成的两阶段即开发阶段和维护阶段看,系统软件的成本由开发成本和维护成本构成。其中开发成本由软件开发成本、硬件成本和其他成本组成,包括了系统软件的分析/设计费用(含系统调研、需求分析、系统分析)、实施费用(含编程/测试、硬件购买与安装、系统软件购置、数据收集、人员培训)及系统切换等方面的费用;维护成本由运行费用(含人工费、材料费、固定资产折旧费、专有技术及技术资料购置费)、管理费(含审计费、系统服务费、行政管理费)及维护费(含纠错性维护费用及适应性维护费用)。
二、系统软件成测算
综上所述,系统软件的成本由软件的开发和维护成本所构成,即: c=c1+c2 (1)
式中:c为系统软件的开发成本;c1为系统软件的开发成本所构成;c2为系统软件的维护成本。
1、系统软件的开发成本c1的测算。
我们认为系统软件的开发成本按其工作量及单位工作量成本来测算是可行的,具体测算方法为按系统软 件的软件规模(一般为软件源程序的指令行数,不包括注释行)、社会平均规模指数以及工作量修正因素来 进行。尤其是cad系统软件的实际测算,结合国内外研究成果的综合分析和专家咨询,软件社会平均生产率 参数和软件社会平均规模指数可分别确定为3.5和1.3左右;软件工作量订由八个因子、五个等级组成。
2、系统软件维护成本c2的测算。
系统软件的维护为修正现有可运行软件并维护欺其主要功能不变的过程。系统软件在其交付使用后,其维护阶段在软件生命周期或生存期中占较大比重,有的可达软件生存周期的50-70%。因此,系统软件的维护成本是软件成本测算中不可忽略的一部分。
系统软件的维护包括三类:a、改正、纠正性维护;b、适应性维护;c、完美性维护。其中c类是为扩充 功能、提高性能而进行的维护,在软件资产价值评估中一般不计入该系统软件成本,而a、b两类,则与软 件的开发过程有着紧密的联系,应计入软件成本。
在系统软件维护阶段,对软件工作量的影响因素与开发阶段的影响因素基本相同,是开发阶段影响因素 的后的影响。因此,系统维护的可靠性越大,规模越复杂,隐错越难发现,纠错越难。系统软件越复杂, 要使其适应软、硬环境变化,进行适应性维护也越困难。当然,可靠性大、复杂度高的系统软件,其可维 护性要求也越高,软件在运行中出错的可能性也会少些。基于上述分析,系统软件维护成本的测算,可按 系统软件开发成本乘以一个该系统软件的维护参数来求取。这一维护参数,可按系统软件的复杂度从简单 到一般、到复杂的顺序,分别取0.15、0.20、0.25及0.30、0.35、0.40等。
计算机系统软件作为计算机系统的组成部分,是信息社会的重要商品,也是知识经济社会中的重要资产。 系统软件同其他计算机软件一样,具有如下的特点:
1、系统软件是由许多人共同完成的高强度智力劳动的结晶,是建立在知识、经验和智慧基础上的具有独 创性的产物。系统软件的开发可以工程化,软件生产可以工厂化,因此,系统软件具有价值和使用价值。 同时,系统软件具有独创性(即原始性),所以软件著作权人对系统软件产品依法享有发表权、开发者身份权、使用权、许可权、获取报酬权及转让权。
2、系统软件产品是无形的,存在于磁盘等介质的有形载体中,通过载体进行交易。因此,带有系统 软件的磁盘交换价值,是磁盘自声价值与系统软件之和,而且主要是系统软件的价值。
3、系统软件产品的复制(批量生产)相应简单,其复制成本同其开发成本比较,几乎可以忽略不 计。因此,系统软件产品易被复制乃至剽窃。为保护系统软件产品的著作权,必须依法登记。
4、系统软件产品一般没有有形损耗,仅有无形损耗。系统软件产品的维护,一是由于系统软件自身 的复杂性,特别是为了对运行中新发现的隐错进行改正性维护;二是由于系统软件对其硬、软件环境有依赖性。硬、软环境改变时,系统软件要进行适应性维护;三是由于需求的变化,要求增强系统软件功能和提高系统软件性能,系统软件要进行完美性维护。因此,系统软件的维护在其生命周期中占有重要地位。同时,系统软件的维护过程是一个软件价值的增值过程。由上述测算方法可知,系统软件的维护费用,即使不计入完善性维护费用也已相当昂贵。不断的升级的新版本代替旧版本软件也是系统软件价值评估中应予考虑的一个特点.

发布于 2020-10-24 14:35

软件(开发)成本的构成

软件成本度量需要先估算软件的规模,即所需工作量的估算,然后根据工作量,通过一定的公式估算出成本。首先我们理解软件生命周期包括策划阶段、需求阶段、设计阶段、构建阶段、测试阶段、部署阶段。软件规模估算所估算的正是后四个阶段的工作量。

软件成本的构成可分为直接成本和间接成本,具体可分为直接人力成本,间接人力成本,间接非人力成本,直接非人力成本。

l 直接人力成本,包括开发方项目组成员的工资、奖金、福利等人力资源费用

l 直接非人力成本,包括办公费、差旅费、培训费、业务费、采购费及其他费用

l 间接人力成本,指开发方服务于研发管理整理需求的非项目组人员的人力资源费用分摊

l 间接非人力成本,指开发方不为研发某个特定项目而产生,但服务于真题研发活动的非人力成本分摊

软件开发工作量如何评估?

成本的估算整体上可以先通过工作量估算出直接人力成本,再加上直接非人力成本,最后再加上间接成本。

在获得了工作量估算结果后,可通过公式估算出项目预算。如可以通过以下公式计算:调整后工作量/人月折算系数*平均人力成本费率+直接非人力成本。

软件成本主要受哪些因素影响?

不同类型的软件,影响其研发成本的因素差异很大。对以功能需求为主的软件(如OA、CRM、ERP等,是最常见的一类软件,我们称为“功能密集型”软件),影响其成本的因素主要有3个:功能规模、生成率、人工单价。

其成本的估算,可采用如下的近似公式:软件成本=软件规模大小*人员生产率*人工单价。

欢迎咨询嘉量云,登录网站可免费领取国标(官方网站: fairmetric.net/,官方电话:400 921 0386)

编辑于 2022-01-07 11:56