软件项目的规模、工作量和成本是如何进行估算或评估的?
软件开发成本估算过程可进一步细分为软件规模估算、工作量估算、成本估算和确定软件开发成本等四个过程。其中成本估算需要对直接人力成本、间接人力成本、间接非人力成本及直接非人力成本分别进行估算。
国家标准《GB/T 36964-2018 软件工程 软件开发成本度量规范》中建议的软件成本估算基本流程如下图所示:
国家准中的四个估算过程,层层递进,逐步细化,最终达到科学、一致的成本估算。
1.软件规模估算
通常情况下,规模估算是软件成本估算过程的起点。估算规模是后续计算软件项目的工作量、成本和进度的主要输入,是项目范围管理的关键,因此,在条件允许的情况下,应首先进行规模估算。在规模估算过程中,需要注意以下情况:
a) 在规模估算开始前,应根据可行性研究报告或类似文档明确项目需求及系统边界。项目需求除包含最基本的业务需求外,还应进行初步的子系统/模块划分,并对每一子系统或模块的基本用户需求进行说明,以保证可以根据项目需求进行规模预估。
b) 依据项目特点和需求详细程度不同,通常估算人员在选择估算方法时应采用纳入国际标准的功能点方法进行功能规模估算,在适用IFPUG或NESMA方法时,可以根据需求的粒度和管理需要,选择预估功能点方法、估算功能点方法或者详细功能点方法。
c) 若当前的项目需求极其模糊或不确定,可不进行规模估算,而直接采用类比法或类推法估算工作量和成本。
2.工作量估算
在完成规模估算后,应当开展工作量估算工作,若当前项目未开展规模估算,也可直接启动工作量估算工作。工作量估算时,可采用方程法、类比法和类推法。
方程法:即基于基准数据建立参数模型,通过输入各项参数,确定估算值。
类比法:即将待估算项目的部分属性与类似的一组基准数据进行比对,进而确定估算值。
类推法:即将待估算项目的部分属性与高度类似的一个或几个已完成项目的数据进行比对,并进行适当调整后确定估算值。
在开展工作量估算的过程中,需要注意以下情况:
a) 当需求极其模糊或不确定时,如果此时具有高度类似的历史项目,则可直接采用类推法,充分利用历史项目数据来粗略估算工作量。
b) 当需求极其模糊或不确定时,如果此时具有与本项目部分属性类似的一组基准数据,则可直接采用类比法,充分利用基准数据来粗略估算工作量。
c) 对于规模估算已经开展的项目,可采用方程法,通过输入各项参数,确定带估算项目的工作量。若客户或高层对项目的工期有明确的要求时,在采用方程法估算工作量时,工期要求有可能是方程的参数之一。
d) 为追求估算的准确性,建议在条件允许的情况下,可采用两种估算方法,对估算结果进行交叉验证,若估算结果差别不大,可直接使用两种估算结果的平均值或以某种估算结果为准,若差别较大,需进行差异分析。
e) 工作量的估算结果宜为一个范围而不是单一的值。
3.成本估算
在获得了工作量估算结果后,可采用科学的方法进行成本估算。在成本估算过程中,应需要注意的情况:
a) 类比法和类推法,同样适用于需求极其模糊或不确定时的成本估算;
b) 间接成本是否与工作量估算结果相关取决于间接成本分摊计算方式。在绝大多数组织,项目周期越长,项目组成员越多,其分摊的间接成本就越高,此事项目的间接成本与工作量估算结果直接相关;
c) 直接非人力成本通常与工作量估算结果无关,宜单独分项测算;
d) 成本估算结果,也通常为一个范围,而不是单一的值。
4.确定软件开发成本
在《软件工程 软件开发成本度量规范》中,将软件开发成本分为四类,主要是为便于对成本构成(即哪些成本属于开发成本,哪些不属于开发成本)进行清晰界定。而在实际确定软件开发成本时,通常并不是分别测定4类成本,加和后获得总成本,而是通常采用以下两种方式确定总成本:
a) 根据人力成本费率及工作量估算直接人力成本和间接成本之和,再加上直接非人力成本,获得总成本;
b) 根据规模综合单价和软件规模,测算出直接人力成本和间接成本之和,再加上直接非人力成本,获得总成本。
在进行软件的规模、工作量、成本估算时应遵循以下原则:
a) 在规模估算时,应根据项目特点和需求的详细程度选择合适的估算方法;
b) 充分利用基准数据,采用方程法、类比法或类推法,对工作量和成本进行估算;
c) 工作量和成本的估算结果宜为一个范围值;
d) 在进行成本估算时,如有明确的工期要求,应充分考虑工期对项目成本的影响,可以根据项目实际情况以及工期对项目的影响程度,对成本的估算结果进行调整;
e) 成本估算过程中宜采用不同的方法分别估算并进行交叉验证。如果不同方法的估算结果产生较大差异,可采用专家评审方法确定估算结果,也可使用较简单的加权平均方法;
f) 在软件项目的不同场景下(如预算、招投标、项目计划和变更管理等)采用国家标准时,相关要求见国家标准中附录A。
除了上述主要原则外,我们还需注意在使用基准数据时:
a) 对于委托方和第三方,建议使用或参考行业基准数据(由北京软件造价评估技术创新联盟每年发布的年度软件行业基准数据分析报告基于CSBMK®基准数据库的数据分析结果,该基准数据库是当前国内规模最大的行业基准数据库)进行估算。估算模型的调整因子的增减或取值有可能随着行业基准数据的变化而变化。
b) 对于开发方,在引入行业基准数据的基础上,可逐步建立组织级基准数据库,以提高估算精度。组织级基准数据定义应与行业基准数据定义保持一致,以便于与行业基准数据进行比对分析,并持续提升组织能力。
以上就是软件项目的规模、工作量和成本是如何进行估算或评估的?所有内容。(中基数联)
软件项目的规模、工作量和成本是如何进行估算或评估的?相关推荐
- 软件项目的规模、工作量和成本是如何进行估算的
1. 基于代码行和功能点的估算 软件项目的规模是影响软件项目成本和工作量的主要因素.在基于代码行(loc,line of code)和功能点(function point)的估算方法中,利用代码行和功 ...
- 关于软件项目工作量估算的若干问题
作者:张克强 软件项目工作量估算从估算依据上看可以分成如下两类: 1,基于规模估算 2,基于工作量估算 基于规模估算的情况下,需要估算软件项目的规模.本文首先来看规模方面的问题. 问题1:如何表达规模 ...
- 软件项目规模度量与实际应用
一. 软件规模度量的必要性 软件项目规模的度量,是软件项目中相当重要的一环. 只有相对合理和相对准确地度量软件规模,才能对项目的计划进度安排,资源分配,等等各个环节进行合理的部署.这样才能尽可能地保证 ...
- 软件项目规模评估方法之软件源代码行法
软件项目规模的评估方法有很多,我们近期会把这些方法一一进行梳理然后发布出来供大家学习了解.今天我们来说说软件项目规模评估方法中的软件源代码行法. 软件源代码行法(SLOC)是以软件的源代码行数量来计算 ...
- 软件项目经理,如何确保项目管理三大目标(质量、进度、成本)的达成?
对软件项目经理来说,达成项目管理三大目标(质量.进度和成本)一直是最为头痛的事,原因就是因为软件产品各个阶段的交付物无法像硬件那样量化,所以也就难以制定一套可以精准管理.检验成果的标准,这就造成了软件 ...
- 「软件项目管理」一文详解软件项目成本计划
软件项目成本计划 序言 一.成本估算的定义 二.估算的基本概念 1.关于估算 2.软件项目规模 3.软件规模单位 4.软件项目成本 5.成本单位 6.软件规模和软件成本的关系 7.成本估算结果 三.成 ...
- 第五章 软件项目成本管理
软件项目的成本管理,就是为了确保项目在既定预算内按时.按质.经济.高效地实现项目目标所开展的一种项目管理过程. 项目的成本管理包括成本估算.成本预算和成本控制. 本章内容提要 5.1 软件项目成本管理 ...
- 软件项目策划与管理知识点汇总
categories: [计算机通识,软件项目策划与管理] thumbnail: /images/fe/rjxmchhgl.jpg toc: true 软件项目策划与管知识点汇总 第一章:序言 关于软 ...
- 产品研发过程管理专题——软件项目范围变更流程与过程控制研究
[摘 要]软件项目中,范围变更失控是导致软件失败的主要原因.分析了范围变更的主要原因,提出了范围变更控制的基本要素,建立了有效的范围变更控制流程,并且对范围管理的控制过程进行了分析,最后对软件项目范围 ...
- 软件项目范围变更流程与过程控制研究
1 引言 近年来,IT产业以惊人的速度发展,从而使软件产业的地位在经济发达国家提到了空前的高度.虽然软件产业在国内外得到了迅速发展,但是软件项目实施效果却不容乐观.调查分析表明,大约70%的软件项目超 ...
最新文章
- PAT (Advanced Level) 1014. Waiting in Line (30)
- java中Log4j的使用
- Android桌面悬浮窗进阶,QQ手机管家小火箭效果实现
- Neo4j--第一章
- 从流程的自动化中获得最大价值的10种方式
- linux eth_p_ip,linux数据链路访问之ETH_P_ALL等等
- windows 远程连接mongo_MongoDB 在windows服务器安装部署与远程访问配置
- JAVA多线程之男朋友和女朋友之间的故事
- java学习随笔(三)
- 机器人高速切削加工多种应用图例
- 淘宝京东查看价格历史的chrome插件
- Windows Sockets错误码方案
- c#进行excel编辑
- 电子书籍制作工具软件大全
- 大学生PHP简单网站制作方法 学生PHP网站作业 动态PHP毕业设计 PHP MYSQL在线留言板网站源码
- word2019 论文排版之论文中的图表跟随章节插入题注(转)
- 【Linux 笔记】Linux 基本操作 - 04. 利用SRA数据实践文本处理
- 什么叫多头,什么叫空头?
- 给公司搭建一个人才库系统,前台(信息填写+简历上传)后台(筛选功能+下载简历)
- qnap刷android tv,QNAP威联通TAS-168268全球唯一QTS + Android 双系统NAS诞生