-->

一站式装修网


软件项目造价评估的技术方案(软件项目的成本如何估算(软件工程成本估算方法))

时间:2023-10-03 作者:希元


做软件开发的成本究竟如何估算

软件成本评估的6个步骤:

1、软件规模评估:

软件规模评估是软件成本评估的基础,是为了保证软件成本评估结果的客观性和透明性,软件规模信息必不可少。

在软件规模评估过程中,如果能够以软件功能点方法作为主要的软件规模评估方法,同时辅以其他的非标准评估方法,例如代码行方法、用例数方法等,应用不同的软件规模评估方法对规模评估结果进行真实性交叉检验,一方面可以提高软件规模评估结果的可信度;另一方面,也可以对不同类型的项目干系人也会具有更强的说服力。

在实际的软件规模评估过程中,软件组织或者个人也可以根据自身的特点采用有别于上述评估方法的其他方法。但要注意的是,不管采用哪种软件规模评估方法,都要尽可能的保证这个方法所评估结果的一致性和客观性。

2、软件工作量评估

如果说我们能够算出开发软件、维护软件所投入的人员工作量,那么我们也就相当于得到了相应的软件成本。在软件行业中的绝大多数项目里面,影响软件工作量的最主要因素还是软件规模因素,当软件规模越来越大时,也就意味着我们需要投入的工作量越多,这两者之间是存在着正相关的关系。

在软件工作量的评估中,还包含了五个小步骤,也就是收集历史工作量数据、分析历史工作量数据、建立工作量评估模型、评估工作量、工作量模型的标定和更新。通过这些步骤可以积累更多关于软件组织开发工作量和维护工作量的数据,在此基础之上,建立相应的工作量评估模型,从而为后续的工作量评估任务提供支持方法。

3、软件阶段工作量评估

在这个步骤中,软件成本评估团队应该充分考虑软件项目的工期因素,对软件项目总工作量安排和各个阶段工作量安排进行优化分析,将软件项目的总工作量以合理可行的方式分解为各个阶段的工作量。

不仅如此,还要考虑软件项目工期所面临的各种工期约束条件,例如一些来自客户的强制工期要求、市场竞争性、可用的人力资源、项目各阶段人力资源分配的合理比例等约束条件,都在这个步骤中明确介绍了一系列阶段工作量安排的改进和优化方法,包括阶段工作量汇总法、资源平滑法、快速跟踪法、赶工法以及软件阶段工作量的可行性评估方法等。

这些方法的主要目的就是在于将软件工作总量以合理、可行的方式分配到软件项目的各个阶段,确保在不超出工作总量的前提下,尽可能降低人员成本、优化人力资源配置,为软件预算、软件开发计划制定等管理活动提供充分的决策支持信息。

4、软件人员成本评估

在这个步骤里面,我们将会详细说明如何在软件开发和维护所需的工作量转换为对应的费用信息,以便为相关的项目外部干系人提供更直接的决策依据。在软件人员成本评估中,也包含有单一人员成本评估法、分类人员成本评估法和行业人员成本评估法。

5、软件风险评估

在软件开发的过程中,许多软件组织明确认识到软件行业的开发人员已经默认和接受了无偿加班这一行业事实,这样一来,就算没有识别相应的风险信息,但也没有严重后果,也就是说,如果风险发生了,那就加班。

这个步骤中通过应用不同的风险评价方法,将软件项目的风险信息转换为项目的成本信息,从而建立软件项目的风险预算。

6、软件成本报告与更新

软件项目在开发过程中时,经常容易发生各种软件需求变更、人员变更、工期变更等多种类型的变更,这些变更无一例外地将对软件成本产生明显的影响。

在这个步骤中,可以分析软件成本更新面临的困难,有哪些典型的软件成本更新的信息来源,从机制设计的角度确保尽可能全面获取软件成本变更信息。最后遵循软件组织所建立的软件成本更新过程,将软件成本变更信息反映到更新后的软件成本评估结果中。

项目工作量的评估中,“人天”是什么单位

人天是工作量单位。含义就是1个人1天做的工作量。

一个工程需要的早期评估有三项:工作量、持续时间、预算。在这三项中,工作量必须首先评估。当了解工程所需的工作量,你就可以分配决定工程持续时间的资源,进而可以评估人力资源和非人力资源花费。用下面的过程来评估你的工程所需总工作量:

1.决定评估所需的精确度。典型的情况是,评估的精确度越高,所需的细节就越多,所需时间也越多。如果要求你做一个粗略的评估(-25%-+75%),你可能会在较高的水平利用最少量的细节迅速完成工作。另一方面,如果你必须提供一个精确的评估时(≤10%),可能需要多花一点时间,且在一个较低的水平需要更多的细节完成这项工作。

2.为每一个活动和整个工程的工作量做一个最初的评估。有很多可用的技巧用于评估工作量,包括任务分解(工作细分结构)、专家意见、类推等。

3.添加专用资源时间。确保你已经包括兼职人员和专用资源所需的时间。例如,这一工程可能包括兼职人员、熟练的专家、法律人员、行政人员等。

4.考虑返工(可选的)。在理想世界中,所有交付的工程一开始都是完美无缺,但在现实世界中,通常并不是这样。不考虑返工的工作计划可能较容易完成,因为低估了全部的交付工程包含的工作量。

5.添加工程管理时间,这是成功的工程管理所必须的。一般说来,增加15%的工作量用于工程管理。例如,如果一项工程评估需要12000个小时(7-8个人),那么一个全职项目经理人(1800小时)是必须的。如果一项工程评估需要1000小时,工程管理时间应该是150小时。

6.添加意外事故时间。偶然是用来反映评估的不确定性和风险性,如果要求你做一项并不完全确定的评估工作,那么可能要增加50%、75%或者更多的时间以反映不确定性。如果以前你已经多次做过这样的工程,你的意外时间可能很小——可能是5%。

7.计算加上所有细节部分的总工作量。

8.如果必要再看一遍,进行适当修改。有时当你加上工程的所有组成部分时,评估会看起来明显的高一些或低一些。如果你的评估看起来不正确,再回头看一下你的设想,调整所作评估以更好的反映现实情况。我把这种情况称为从你的经理和赞助者最初的延期。如果你的赞助商认为你评估太高,并且你也认为没有理由反对他,那么你还要在评估上作更多的工作。要确保你的评估看起来是合理的,并且准备好反击那些反对的观点。

9.文档化所有设想。你永远不会确切地了解一项工程的所有细节,因此,文档化所有你做出的设想和评估,这一点很重要。

10.这类严格的评估方法将会帮助你在可以获得的时间和资源的情况下尽量做出精确的评估。

软件成本评估都包含哪些内容

完整的软件造价评估应该包含哪些?

1估算基础

对估算对象(需求、任务等)的拆分颗粒度定义了上限与下限,以提升估算的准确度。

完备识别了估算对象,没有遗漏的需求或任务。

估算人员经过了估算方法的系统培训。

定义了组织级的估算方法。

2规模估算

从不估算规模或经验估算规模升级为客观度量规模,比如采用国际标准的功能点方法或自定义的规模度量方法,无论是哪种方法,规模与工作量之间应该是强相关的才是合理的。

如果对本公司的项目而言,规模与工作量不强相关,也可以是复杂度等其他因子,对这些因子应该也与工作量做了相关性分析,与工作量应该强相关才是合理的。

3工作量估算

建立了从规模的客观度量用定量模型推算出项目总工作量。

建立了工作量分布百分比的性能基线,可以从总工作量推算各阶段或各类任务的工作量。比如开发的工作量、测试的工作量。

能够用PPB或PPM推算出各种关键活动的最少投入工作量,比如需求评审的工作量、代码评审的工作量、系统测试的工作量等。

工作量的估算结果应该是一个区间,而不是单点值。如,总工作量不超过100人月。

4成本估算

从工作量到成本有定量的计算方法。

成本的估算结果应该也是一个区间,而不是单点值。比如不超过30万,或者在25到30万之间等。

5工期估算

识别了项目的关键路径与关键链。

对项目的工期进行了模拟,得到满足项目工期要求的概率有多大。如果概率太低,对关键路链上的任务、投入的资源与需要完成的需求进行了优化。

6评审与修订估算

保存了估算记录,估算结果经过了评审。

随着需求和任务的明确,在开发过程中修订了估算结果。

7持续改进估算过程

对比了估算结果与实际结果,对估算偏差率建立了过程性能基线或过程性能模型。

总结了估算有关的经验教训。

对估算方法和过程进行了持续优化。

跟踪检查了估算方法与过程在组织级的落地实施情况。

软件项目的成本如何估算(软件工程成本估算方法)

一、系统软件的成本构成系统软件的成本作为一个经济学范畴,应反映软件产品在其生产过程中所耗费的各项费用,为原材料、燃料、动力、折旧、人工费、管理费用、财务费用待项开支的总和

从财务角度来看,列入系统软件的成本有如下的项目:(1)硬件购置费如计算机及相关设备的购置,不间断电源、空调器等的购置费

(2)软件购置费,如操作系统软件、数据库系统软件和其它应用软件的购置费

(3)人工费,主要是开发人员、操作人员、管理人员、的工资福利费等

(4)培训费

(5)通讯费,如购置计算机网络设备、通讯线路器材、租用公用通讯线路等的费用

(6)基本建设费,如新建、扩建机房、购置计算机机台、机柜等的费用

(7)财务费用

(8)管理费用,如办公费、差旅费、会议费、交通费

(9)材料费,如打印纸、包带、磁盘等的购置费

(10)水、电、汽、气费

(11)专有技术购置费

(12)其它费用,如资料费、固定资产折旧费及咨询费

从系统软件生命周期构成的两阶段即开发阶段和维护阶段看,系统软件的成本由开发成本和维护成本构成

其中开发成本由软件开发成本、硬件成本和其他成本组成,包括了系统软件的分析/设计费用(含系统调研、需求分析、系统分析)、实施费用(含编程/测试、硬件购买与安装、系统软件购置、数据收集、人员培训)及系统切换等方面的费用;维护成本由运行费用(含人工费、材料费、固定资产折旧费、专有技术及技术资料购置费)、管理费(含审计费、系统服务费、行政管理费)及维护费(含纠错性维护费用及适应性维护费用)

二、系统软件成测算综上所述,系统软件的成本由软件的开发和维护成本所构成,即:C=C1C2(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、系统软件产品一般没有有形损耗,仅有无形损耗

系统软件产品的维护,一是由于系统软件自身的复杂性,特别是为了对运行中新发现的隐错进行改正性维护;二是由于系统软件对其硬、软件环境有依赖性

硬、软环境改变时,系统软件要进行适应性维护;三是由于需求的变化,要求增强系统软件功能和提高系统软件性能,系统软件要进行完美性维护

因此,系统软件的维护在其生命周期中占有重要地位

同时,系统软件的维护过程是一个软件价值的增值过程

由上述测算方法可知,系统软件的维护费用,即使不计入完善性维护费用也已相当昂贵

不断的升级的新版本代替旧版本软件也是系统软件价值评估中应予考虑的一个特点

标签: 估算 成本 软件

相关推荐

2022年旧房翻新改造,10秒在线估算装修价...

1、2022年旧房翻新改造,10秒在线估算装修价格真的靠谱吗10秒在线估算装修价格的准确度取决于多种因素:适用...

2021装修价格在线估算,10秒出结果效果图...

1、2021装修价格在线估算,10秒出结果效果图中的颜色搭配真的靠谱吗在线装修价格估算工具的可靠性在线装修价...

如何在10秒内估算卧室装修需要多少钱

1、如何在10秒内估算卧室装修需要多少钱1. 测量卧室面积(长 x 宽)。2. 乘以每平方米/英尺的平均装修成本(...

10秒能估算出装修多少钱一平米吗

1、10秒能估算出装修多少钱一平米吗10 秒内估算装修多少钱一平米是不可能的。装修成本受多种因素影响,包括...

装修案例


装修知识