软件开发成本估算(软件开发成本估算模型)
本篇文章给大家谈谈软件开发成本估算,以及软件开发成本估算模型对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
软件开发的成本
软件开发成本主要指软件开发过程中所花费的工作量及相应的代价。
在对一个软件项目进行开发成本估算时,应该包括从项目立项直至项目研发活动结束所花费的资源总和,并且可以按阶段进行估算或测量。
软件开成本估算的过程可分为:估算规模、估算工作量、估算工期和估算成本这4个过程,最终确定软件成本。其中成本估算需要对直接人力成本、间接人力成本、间接非人力成本及直接非人力成本分别进行估算。
开发平台
软件开发平台源于繁琐的实践开发过程中。开发人员在实践中将常用的函数、类、抽象、接口等进行总结、封装,成为了可以重复使用的“中间件”,而随着“中间件”的成熟和通用,功能更强大、更能满足企业级客户需求的——软件开发平台应运而生。
平台是一段时间内科研成果的汇聚,也是阶段性平台期的标志,为行业进入新的研发领域提供了基础。由于平台对企业核心竞争力的提升非常明显,国内的管理软件市场,软件开发平台的应用已经成为一种趋势。
以上内容参考:百度百科-软件开发
软件项目的成本如何估算?
定制软件开发是软件开发的一个领域,开发定制的数字技术解决方案以满足特定业务组织的特定需求。话虽如此,任何投资于定制软件开发的组织都必须有适当的计划和预算。定制软件开发项目有两个非常重要的限制需要考虑:时间和成本。(准确估算软件开发项目的成本是保障其整体成功的关键)。
在为某个定制软件开发项目制定计划时,组织或个人会问两个问题。
“多少钱?”
“多长时间?”
一、确定定制软件开发的基础工作
要确定和估算某个软件开发项目的成本,必须了解定制软件开发的基础知识。更具体地说,您必须知道问题的答案:
“定制软件开发是如何执行的?”
为了最简单、最全面地回答这个问题,需要讨论以下几点,它们是定制软件开发的基础。
确定需求——它有助于更好地估算成本,还可以正确开发和执行开发任务。
计划整个过程并设定目标——为整个软件项目开发周期制定适当的计划可以在时间和成本管理方面大有帮助。
详细文档——必须记录项目计划、实施计划、测试计划、范围说明书和培训计划中的所有内容。
为定制软件寻找合适的专业团队——能够高效工作并且能够同时处理多项任务,为整个过程提升效益。
二、确定影响定制软件开发成本的因素
在下面这一部分,讨论影响自定义软件开发项目的关键因素。确定软件开发项目的成本需要组织或个人考虑并考虑这些因素。
软件的规模和类型:软件的规模和类型是决定开发成本的两个关键因素。
例如,移动应用程序或电子商务商店将比银行或医院 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。
四、估算软件项目开发成本
得出功能点数后,结合当地人力成本成本费率和项目非人力成本支出可以估算出软件项目开发成本。
340.【软件工程基础知识】成本估算方法
软件的项目估算设计人、技术、环境等多种因素,因此很难在项目完成前准确地估算出开发软件所需的成本、持续时间和工作量。因此,需要一些方法和技术来支持项目的估算。常用的估算方法有下列 3 种。
估算人员按照以前完成的项目所耗费的总成本(或总工作量)来推算将要开发的软件的总成本(或总工作量),然后把它们按阶段、步骤和工作单元进行分配,这种方法称为自顶向下估算方法。
自顶向下估算方法的主要优点是对系统级工作的重视,所以估算中不会遗漏诸如集成、配置管理之类的系统级事务,且估算工作量小、速度快。它的 缺点 是 往往不清楚低级别的技术性困难问题,而这些困难将会使成本上升。
自底向上估算方法是将待开发的软件细分,分别估算每一个子任务所需要的开发工作量,然后将它们加起来,得到软件的总开发量。这种方法的有点是将每一部分的估算工作交给负责该部分工作的人来做,所以估算较为准确。其 缺点 是 估算往往缺少各项子任务之间相互联系所需要的工作量和与软件有关的系统级工作量,所以估算往往偏低
PS:我上一个完整的项目就是这种估算方法,也确实踩了如缺点所示的坑。
差别估算方法的思想是将待开发项目与一个或多个已完成的类似项目进行比较,找出与某个相似项目的若干不同之处,并估算每个不同之处对成本的影响,导出待开发项目的总成本。改方法的优点是可以提高估算的准确度,缺点是不容易明确“差别”的界限。
做软件开发的成本究竟如何估算
在对一个软件项目进行开发成本估算时,应该包括从项目立项直至项目研发活动结束所花费的资源总和,并且可以按阶段进行估算或测量。
软件开成本估算的过程可分为:估算规模、估算工作量、估算工期和估算成本这4个过程,最终确定软件成本。其中成本估算需要对直接人力成本、间接人力成本、间接非人力成本及直接非人力成本分别进行估算。
1、估算规模
通常情况下,软件规模的估算是软件成本估算过程的起点。估算规模是后续计算软件项目的工作量、成本和进度的主要依据,是项目范围管理的关键,因此,在条件允许的情况下,应该进行软件项目规模估算。
规模估算时,要根据可行性研究报告或类似文档明确项目需求及系统边界。选择估算方法时,要依据项目特点和需求详细程度来决定。
若当前项目的需求不确定,可跳过这一环节,进入下个一环节。
2、估算工作量
软件项目工作量估算可采用方程法、类比法和类推法。
类推法:软件项目需求极其模糊或不确定时,如果有高度相似的历史项目,可采用此方法,利用历史项目数据来粗略估算工作量。
类比法:软件项目需求极其模糊或不确定时,如果有与本项目部分属性类似的一组基准数据,可采用类比法,利用基准数据来粗略估算工作量。
方程法:已经开展了规模估算的项目,可以采用方程法,通过各项参数来确定待估算项目的工作量。
项目工作量估算都应该采用两种估算方法来对估算结果进行交叉验证,以追求估算的准确性。工作量的估算结果是一个范围,不是单一的值。
3、估算工期
软件项目工期的估算同样可以采用类推法、类比法和方程法。
4、估算成本
类比法和类推法同样适用于需求极期模糊或不确定时的成本估算。
成本估算结果通常为一个范围。
在获得工作量和工期后,采用科学的方法来进行成本估算。中基数联做为北京软件造价评估技术创新联盟的授权合作伙伴,在对软件成本估算时,采用快速功能点法进行成本估算。
软件开发成本估算的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于软件开发成本估算模型、软件开发成本估算的信息别忘了在本站进行查找喔。