① 一个软件项目如何评估工作量和成本
软件开发成本估算过程可进一步细分为软件规模估算、工作量估算、成本估算和确定软件开发成本等四个过程。
其中成本估算需要对直接人力成本、间接人力成本、间接非人力成本及直接非人力成本分别进行估算。
国家标准《GB/T 36964-2018 软件工程 软件开发成本度量规范》中建议的软件开发成本估算基本流程如下图所示:
国家准中的四个估算过程,层层递进,逐步细化,最终达到科学、一致的成本估算。
一、软件规模估算
通常情况下,规模估算是软件成本估算过程的起点。
估算规模是后续计算软件项目的工作量、成本和进度的主要输入,是项目范围管理的关键,因此,在条件允许的情况下,应首先进行规模估算。
在规模估算过程中,需要注意以下情况:
在规模估算开始前,应根据可行性研究报告或类似文档明确项目需求及系统边界。项目需求除包含最基本的业务需求外,还应进行初步的子系统/模块划分,并对每一子系统或模块的基本用户需求进行说明,以保证可以根据项目需求进行规模预估。
依据项目特点和需求详细程度不同,通常估算人员在选择估算方法时应采用纳入国际标准的功能点方法进行功能规模估算,在适用IFPUG或NESMA方法时,可以根据需求的粒度和管理需要,选择预估功能点方法、估算功能点方法或者详细功能点方法。
若当前的项目需求极其模糊或不确定,可不进行规模估算,而直接采用类比法或类推法估算工作量和成本。
二、工作量估算
在完成规模估算后,应当开展工作量估算工作,若当前项目未开展规模估算,也可直接启动工作量估算工作。
工作量估算时,可采用方程法、类比法、类推法、功能点法:
方程法:即基于基准数据建立参数模型,通过输入各项参数,确定估算值。
类比法:即将待估算项目的部分属性与类似的一组基准数据进行比对,进而确定估算值。
类推法:即将待估算项目的部分属性与高度类似的一个或几个已完成项目的数据进行比对,并进行适当调整后确定估算值。
功能点法:从用户视角出发,通过量化系统功能来度量软件的规模,这种度量主要基于系统的逻辑设计。功能点规模度量方法在国际上的应用已经比较广泛,并且已经取代代码行成为最主流的软件规模度量方法。
在开展工作量估算的过程中,需要注意以下情况:
当需求极其模糊或不确定时,如果此时具有高度类似的历史项目,则可直接采用类推法,充分利用历史项目数据来粗略估算工作量。
当需求极其模糊或不确定时,如果此时具有与本项目部分属性类似的一组基准数据,则可直接采用类比法,充分利用基准数据来粗略估算工作量。
对于规模估算已经开展的项目,可采用方程法,通过输入各项参数,确定待估算项目的工作量。若客户或高层对项目的工期有明确的要求时,在采用方程法估算工作量时,工期要求有可能是方程的参数之一。
为追求估算的准确性,建议在条件允许的情况下,可采用两种估算方法,对估算结果进行交叉验证,若估算结果差别不大,可直接使用两种估算结果的平均值或以某种估算结果为准,若差别较大,需进行差异分析。
工作量的估算结果宜为一个范围而不是单一的值。
三、成本估算
在获得了工作量估算结果后,可采用科学的方法进行成本估算。
在成本估算过程中,应需要注意的情况:
类比法和类推法,同样适用于需求极其模糊或不确定时的成本估算;
间接成本是否与工作量估算结果相关取决于间接成本分摊计算方式。在绝大多数组织,项目周期越长,项目组成员越多,其分摊的间接成本就越高,此时项目的间接成本与工作量估算结果直接相关;
直接非人力成本通常与工作量估算结果无关,宜单独分项测算;
成本估算结果,也通常为一个范围,而不是单一的值。
四、确定软件开发成本
在《软件工程 软件开发成本度量规范》中,将软件开发成本分为四类,主要是为便于对成本构成(即哪些成本属于开发成本,哪些不属于开发成本)进行清晰界定。
而在实际确定软件开发成本时,通常并不是分别测定四类成本,加和后获得总成本,而是通常采用以下两种方式确定总成本:
根据人力成本费率及工作量估算直接人力成本和间接成本之和,再加上直接非人力成本,获得总成本;
根据规模综合单价和软件规模,测算出直接人力成本和间接成本之和,再加上直接非人力成本,获得总成本。
在进行软件的规模、工作量、成本估算时应遵循以下原则:
在规模估算时,应根据项目特点和需求的详细程度选择合适的估算方法;
充分利用基准数据,采用方程法、类比法或类推法,对工作量和成本进行估算;
工作量和成本的估算结果宜为一个范围值;
在进行成本估算时,如有明确的工期要求,应充分考虑工期对项目成本的影响,可以根据项目实际情况以及工期对项目的影响程度,对成本的估算结果进行调整;
成本估算过程中宜采用不同的方法分别估算并进行交叉验证。如果不同方法的估算结果产生较大差异,可采用专家评审方法确定估算结果,也可使用较简单的加权平均方法;
在软件项目的不同场景下(如预算、招投标、项目计划和变更管理等)采用国家标准时,相关要求见国家标准中附录A。
除了上述主要原则外,我们还需注意在使用基准数据时:
对于委托方和第三方,建议使用或参考软件行业基准数据进行估算。估算模型的调整因子的增减或取值有可能随着行业基准数据的变化而变化。
对于开发方,在引入行业基准数据的基础上,可逐步建立组织级基准数据库,以提高估算精度。组织级基准数据定义应与行业基准数据定义保持一致,以便于与行业基准数据进行比对分析,并持续提升组织能力。
② 如何进行项目成本估算
房地产开发项目投资与成本费用估算表
序号 计算依据 单价(元/㎡) 合价(万元)
1 开发成本 1.1+1.2+1.3+1.4+1.5+1.6+1.7+1.8
1.1 土地使用权出让金
1.2 土地征用及拆迁安置补偿费
1.3 前期工程费
1.4 建安工程费
1.5 基础设施费
1.6 公共配套设施费
1.7 开发期间税费
1.8 不可预见费 (1.1+1.2+1.3+1.4+1.5+1.6)×3%~5%
2 开发费用 2.1+2.2+2.3
2.1 管理费用 1×3%
2.2 销售费用 销售收入×4%~6%
2.3 财务费用 贷款还本付息
3 合计 1+2
③ 项目成本估算
项目成本估算,是指为实现项目的目标,根据项目资源计划确定的资源需求,以及市场上各资源的价格信息,对项目所需资源的成本进行的估算。
④ 项目成本估算的方法包括
项目成本估价,首先应该列出预算清单,然后逐一进行相加。
⑤ 项目成本估算的意义及依据有哪些
依据是项目资源计划确定的资源需求和计划,以及各种项目资源的价格信息。意义是能估算和确定出项目各种活动的成本和整个项目总成本,是一项项目成本管理工作。
项目成本估算的方法包括类比估算法,在项目成本估算精确度要求不是很高的情况下使用的项目成本估算;参数估计法,利用项目特性参数去建立数学模型来估算项目成本;标准定额法,依依据国家或地方主管部门,或者项目成本管理咨询机构编制的标准定额估算项目成本。
(5)如何为项目添加估计成本扩展阅读:
项目成本的具体组成:
1、包括项目定义与决策工作成本;项目设计成本;项目采购成本;项目实施成本四项。
2、具体的项目成本科目:人工成本,为各种劳力的成本;物料成本,项目过程中消耗和占用的物料资源费用;顾问费用,各种咨询和专家服务费用;设备费用,包括折旧、租赁费用等;其他费用,如保险、分包商的法定利润等;不可预见费,,为预防项目变更的管理储备。
⑥ 项目成本管理的估算方法
进度计划是从时间的角度对项目进行规划,而成本估算则是从费用的角度对项目进行规划。这里的费用应理解为一个抽象概念,它可以是工时、材料或人员等。
成本估算是对完成项目所需费用的估计和计划,是项目计划中的一个重要组成部分。要实行成本控制,首先要进行成本估算。理想的是,完成某项任务所需费用可根据历史标准估算。但对许多工业来说,由于项目和计划变化多端,把以前的活动与现实对比几乎是不可能的。费用的信息,不管是否根据历史标准,都只能将其作为一种估算。而且,在费时较长的大型项目中,还应考虑到今后几年的职工工资结构是否会发生变化,今后几年原材料费用的上涨如何,经营基础以及管理费用在整个项目寿命周期内会不会变化等问题。所以,成本估算显然是在一个无法以高度可靠性预计的环境下进行。在项目管理过程中,为了使时间、费用和工作范围内的资源得到最佳利用,人们开发出了不少成本估算方法,以尽量得到较好的估算。这里简要介绍以下几种。 这是比较科学的一种传统估算方法。它以过去为根据来预测未来,并利用数学知识。它的基本方法是利用规模和成本图。如图所示,图上的线表示规模和成本的关系,图上的点是根据过去类似项目的资料而描绘,根据这些点描绘出的线体现了规模和成本之间的基本关系。这里画的是直线,但也有可能是曲线。成本包括不同的组成部分,如材料、人工和运费等。这些都可以有不同的曲线。项目规模知道以后,就可以利用这些线找出成本各个不同组成部分的近似数字。
这里要注意的是,找这些点要有一个“基准年度”,目的是消除通货膨胀的影响。画在图上的点应该是经过调整的数字。例如以1980年为基准年,其他年份的数字都以1980年为准进行调整,然后才能描点划线。项目规模确定之后,从线上找出相应的点,但这个点是以1980年为基准的数字,还需要再调整到当年,才是估算出的成本数字。此外,如果项目周期较长,还应考虑到今后几年可能发生的通货膨胀、材料涨价等因素。
做这种成本估算,前提是有过去类似项目的资料,而且这些资料应在同一基础上,具有可比性。 即利用WBS方法,先把项目任务进行合理的细分,分到可以确认的程度,如某种材料,某种设备,某一活动单元等。然后估算每个WBS要素的费用。采用这一方法的前提条件或先决步骤是:
①对项目需求作出一个完整的限定。
②制定完成任务所必需的逻辑步骤。
③编制WBS表。
项目需求的完整限定应包括工作报告书、规格书以及总进度表。工作报告书是指实施项目所需的各项工作的叙述性说明,它应确认必须达到的目标。如果有资金等限制,该信息也应包括在内。规格书是对工时、设备以及材料标价的根据。它应该能使项目人员和用户了解工时、设备以及材料估价的依据。总进度表应明确项目实施的主要阶段和分界点,其中应包括长期定货、原型试验、设计评审会议以及其他任何关键的决策点。如果可能,用来指导成本估算的总进度表应含有项目开始和结束的日历时间。
一旦项目需求被勾划出来,就应制定完成任务所必需的逻辑步骤。在现代大型复杂项目中,通常是用箭头图来表明项目任务的逻辑程序,并以此作为下一步绘制CPM或PERT图以及WBS表的根据。
编制WBS表的最简单方法是依据箭头图。把箭头图上的每一项活动当作一项工作任务,在此基础上再描绘分工作任务。
进度表和WBS表完成之后,就可以进行成本估算了。在大型项目中,成本估算的结果最后应以下述的报告形式表述出来:
①对每个WBS要素的详细费用估算。还应有一个各项分工作、分任务的费用汇总表,以及项目和整个计划的累积报表。
②每个部门的计划工时曲线。如果部门工时曲线含有“峰”和“谷”,应考虑对进度表作若干改变,以得到工时的均衡性。
③逐月的工时费用总结。以便项目费用必须削减时,项目负责人能够利用此表和工时曲线作权衡性研究。
④逐年费用分配表。此表以WBS要素来划分,表明每年(或每季度)所需费用。此表实质上是每项活动的项目现金流量的总结。
⑤原料及支出预测,它表明供货商的供货时间、支付方式、承担义务以及支付原料的现金流量等。
采用这种方法估算成本需要进行大量的计算,工作量较大,所以只计算本身也需要花费一定的时间和费用。但这种方法的准确度较高,用这种方法作出的这些报表不仅仅是成本估算的表述,还可以用来作为项目控制的依据。最高管理层则可以用这些报表来选择和批准项目,评定项目的优先性。 以上介绍了三种成本估算的方法。除此之外,在实践中还可将几种方法结合起来使用。例如,对项目的主要部分进行详细估算,其他部分则按过去的经验或用因素估算法进行估算。
⑦ 三种项目成本估算方法
项目进度计划是从时间的角度对项目进行规划,而项目成本估算则是从费用的角度对项目进行规划。这里的费用应理解为一个抽象概念,它可以是工时、材料或人员等。
成本估算是对完成项目所需费用的估计和计划,是项目计划中的一个重要组成部分。要实行成本控制,首先要进行成本估算。理想的是,完成某项任务所需费用可根据历史标准估算。但对许多工业来说,由于项目和计划变化多端,把以前的活动与现实对比几乎是不可能的。费用的信息,不管是否根据历史标准,都只能将其作为一种估算。而且,在费时较长的大型项目中,还应考虑到今后几年的职工工资结构是否会发生变化,今后几年原材料费用的上涨如何,经营基础以及管理费用在整个项目寿命周期内会不会变化等问题。所以,成本估算显然是在一个无法以高度可靠性预计的环境下进行。在项目管理过程中,为了使时间、费用和工作范围内的资源得到最佳利用,人们开发出了不少成本估算方法,以尽量得到较好的估算。这里简要介绍以下几种。
1.经验估算法
进行成本估计的人应有专门知识和丰富的经验,据此提出一个近似的数字。这种方法是一种最原始的方法,还称不上估算,只是一种近似的猜测。它对要求很快拿出一个大概数字的项目是可以的,但对要求详细的估算显然是不能满足要求的。
2.因素估算法
这是比较科学的一种传统估算方法。它以过去为根据来预测未来,并利用数学知识。它的基本方法是利用规模和成本图。图上的线表示规模和成本的关系,图上的点是根据过去类似项目的资料而描绘,根据这些点描绘出的线体现了规模和成本之间的基本关系。这里画的是直线,但也有可能是曲线。成本包括不同的组成部分,如材料、人工和运费等。这些都可以有不同的曲线。项目规模知道以后,就可以利用这些线找出成本各个不同组成部分的近似数字。
这里要注意的是,找这些点要有一个“基准年度”,目的是消除通货膨胀的影响。画在图上的点应该是经过调整的数字。例如以1980年为基准年,其他年份的数字都以1980年为准进行调整,然后才能描点划线。项目规模确定之后,从线上找出相应的点,但这个点是以1980年为基准的数字,还需要再调整到当年,才是估算出的成本数字。此外,如果项目周期较长,还应考虑到今后几年可能发生的通货膨胀、材料涨价等因素。
做这种成本估算,前提是有过去类似项目的资料,而且这些资料应在同一基础上,具有可比性。
3.WBS基础上的全面详细估算
这种方法即利用WBS方法(WBS:Work Breakdown Structure 工作分解结构),先把项目任务进行合理的细分,分到可以确认的程度,如某种材料,某种设备,某一活动单元等。然后估算每个WBS要素的费用。采用这一方法的前提条件或先决步骤是:
①对项目需求作出一个完整的限定。
②制定完成任务所必需的逻辑步骤。
③编制WBS表。
项目需求的完整限定应包括工作报告书、规格书以及总进度表。工作报告书是指实施项目所需的各项工作的叙述性说明,它应确认必须达到的目标。如果有资金等限制,该信息也应包括在内。规格书是对工时、设备以及材料标价的根据。它应该能使项目人员和用户了解工时、设备以及材料估价的依据。总进度表应明确项目实施的主要阶段和分界点,其中应包括长期定货、原型试验、设计评审会议以及其他任何关键的决策点。如果可能,用来指导成本估算的总进度表应含有项目开始和结束的日历时间。
一旦项目需求被勾划出来,就应制定完成任务所必需的逻辑步骤。在现代大型复杂项目中,通常是用箭头图来表明项目任务的逻辑程序,并以此作为下一步绘制CPM或PERT图以及WBS表的根据。
编制WBS表的最简单方法是依据箭头图。把箭头图上的每一项活动当作一项工作任务,在此基础上再描绘分工作任务。
进度表和WBS表完成之后,就可以进行成本估算了。在大型项目中,成本估算的结果最后应以下述的报告形式表述出来:
①对每个WBS要素的详细费用估算。还应有一个各项分工作、分任务的费用汇总表,以及项目和整个计划的累积报表。
②每个部门的计划工时曲线。如果部门工时曲线含有“峰”和“谷”,应考虑对进度表作若干改变,以得到工时的均衡性。
③逐月的工时费用总结。以便项目费用必须削减时,项目负责人能够利用此表和工时曲线作权衡性研究。
④逐年费用分配表。此表以WBS要素来划分,表明每年(或每季度)所需费用。此表实质上是每项活动的项目现金流量的总结。
⑤原料及支出预测,它表明供货商的供货时间、支付方式、承担义务以及支付原料的现金流量等。
采用这种方法估算成本需要进行大量的计算,工作量较大,所以只计算本身也需要花费一定的时间和费用。但这种方法的准确度较高,用这种方法作出的这些报表不仅仅是成本估算的表述,还可以用来作为项目控制的依据。最高管理层则可以用这些报表来选择和批准项目,评定项目的优先性。
以上介绍了三种成本估算的方法。
除此之外,在实践中还可将几种方法结合起来使用。例如,对项目的主要部分进行详细估算,其他部分则按过去的经验或用因素估算法进行估算。
⑧ 项目成本估计的方法是如何借鉴的
咨询记录 · 回答于2021-11-11
⑨ 项目成本估算方法的IT项目开发成本的估算方法
项目成本估算方法的IT项目开发成本的估算方法
如今,不少企业都想拥有属于自己企业或产品的手机APP,但其中最困扰企业主的问题就是:开发一款手机APP到底需要多少钱?
简单点来说,要视手机APP的需求及质量而言,价位一般在几千到十几万左右,更高端的价格更高。
四、APP开发公司的所在地
需要注意的是,同样实力的APP开发公司,在不同的城市也会导致APP的成本费用高一些
⑩ 软件项目的成本如何估算
定制软件开发是软件开发的一个领域,开发定制的数字技术解决方案以满足特定业务组织的特定需求。话虽如此,任何投资于定制软件开发的组织都必须有适当的计划和预算。定制软件开发项目有两个非常重要的限制需要考虑:时间和成本。(准确估算软件开发项目的成本是保障其整体成功的关键)。
在为某个定制软件开发项目制定计划时,组织或个人会问两个问题。
“多少钱?”
“多长时间?”
一、确定定制软件开发的基础工作
要确定和估算某个软件开发项目的成本,必须了解定制软件开发的基础知识。更具体地说,您必须知道问题的答案:
“定制软件开发是如何执行的?”
为了最简单、最全面地回答这个问题,需要讨论以下几点,它们是定制软件开发的基础。
确定需求——它有助于更好地估算成本,还可以正确开发和执行开发任务。
计划整个过程并设定目标——为整个软件项目开发周期制定适当的计划可以在时间和成本管理方面大有帮助。
详细文档——必须记录项目计划、实施计划、测试计划、范围说明书和培训计划中的所有内容。
为定制软件寻找合适的专业团队——能够高效工作并且能够同时处理多项任务,为整个过程提升效益。
二、确定影响定制软件开发成本的因素
在下面这一部分,讨论影响自定义软件开发项目的关键因素。确定软件开发项目的成本需要组织或个人考虑并考虑这些因素。
软件的规模和类型:软件的规模和类型是决定开发成本的两个关键因素。
例如,移动应用程序或电子商务商店将比银行或医院 ERP 解决方案等其他类型的软件便宜。自定义软件、仓库管理、安全应用程序和 CRM 解决方案的类型通常更加昂贵和耗时。
复杂性:开发的复杂性是影响整体定制软件开发估算的关键因素。
设计结构:设计结构有两个关键领域:创意设计和UI/UX设计。这两个因素对于项目的总成本都是必不可少的。
集成:第三方集成需要大量的精力和资源。
数据迁移:数据迁移是一个非常具体和准确的过程,需要自定义脚本和多个渠道。
开发时间:开发时间是影响定制软件开发成本的关键因素,人力成本是最大的支出。
功能和平台:尽管听起来很明显,软件运行的平台及其功能对您需要在产品上进行的整体投资有重大影响。
测试:有助于确定软件的效率和功能,还涉及一些影响项目总成本的支出。
维护:在成本估算时,还必须考虑某种定制软件产品的维护和支持类型。
三、如何估算定制软件的规模
快速功能点方法是依据国际标准《ISO/IEC 24570-2005软件工程NESMA功能尺度测量法2.1版功能点分析应用的定义和计数指南》提出的一种软件规模度量方法。
该方法适用于软件项目早期、中期、后期等各个阶段的规模估算或测量。
快速功能点方法进行规模估算或测量的基本过程或步骤如下:
确定计数类型
识别系统边界
识别功能点计数项
计算未调整的功能点数
计算调整后的功能点数。
那么就让新星为大家详细对每个步骤进行剖析:
1、确定计数类型
根据需求或项目的类型确定计数类型。
计数类型分为三种:新开发、延续开发及已有系统计数。
对于新开发需求或项目,对预计(或实际)投产的功能进行计数;
对于延续开发需求或项目,对预计(或实际)新增、修改及删除的功能均进行计数;
对于已有系统,对实际的功能进行计数。
2、识别系统边界
在识别系统边界的时候应注意:
应从用户视角出发,不受系统实现影响;
主要是为了区分内部逻辑文件(ILF)和外部接口文件(EIF);
事务功能应穿越识别的系统边界。
3、识别功能点计数项
功能点计数项分为数据功能和交易功能两类。
数据功能——包括内部逻辑文件(ILF)、外部接口文件(EIF);
交易功能——包括外部输入(EI)、外部输出(EO)、外部查询(EQ)。
数据功能:系统提供给用户的满足产品内部和外部数据需求的功能,即本系统管理或使用那些业务数据(业务对象),如“客户信息”“账户交易记录”等。内部逻辑文件或外部接口文件所指的“文件”不是传统数据处理意义上的文件,而是指一组客户可识别的、逻辑上相互关联的数据或者控制信息。因此,这些文件和物理上的数据集合(如数据库表)没有必然的对应关系。
交易功能:系统提供给用户的处理数据的功能,即本系统如何处理和使用那些业务数据(业务对象),如“转账”“修改黑名单生成规则”“查询交易记录”等。交易功能又称为基本过程,是用户可识别的,业务上的一组原子操作,可能由多个处理逻辑构成。例如,“添加柜员信息”这个基本过程可能包含“信息校验”“修改确认”“修改结果反馈”等一系列处理逻辑。
3、计算未调整的功能点数
a.采用预估功能点进行计数,计算公式如下:
FP=35ILF+15EIF
——FP:未调整的功能点数,单位为功能点;
——ILF:内部逻辑文件的数量;
——EIF:外部接口文件的数量。
b.采用估算功能点进行计数,计算公式如下:
FP=10ILF+7EIF+4EI+5EO+4*EQ
——FP:未调整的功能点数,单位为功能点;
——ILF:内部逻辑文件的数量;
——EIF:外部接口文件的数量;
——EI:外部输入的数量;
——EO:外部输出的数量;
——EQ:外部查询的数量。
5、计算调整后的功能点数
根据不同的规模测算阶段,需要考虑隐含需求及需求变更对规模的影响,因此,需要根据规模计数时机进行规模调整。
调整后的功能点数(AFP),计算公式如下:
AFP=FP*CF
——AFP:调整后的功能点数,单位为功能点;
——FP:未调整的功能点数,单位为功能点;
——CF:规模变更调整因子,依据行业数据,项目估算早期(如概预算阶段)通常取值为1.5;项目估算中期(如招投评标、项目立项、技术方案阶段)通常取值为1.26;项目估算中后期(如需求分析完成及后评价)通常取值为1.0。
四、估算软件项目开发成本
得出功能点数后,结合当地人力成本成本费率和项目非人力成本支出可以估算出软件项目开发成本。