如何核算一个软件开发项目的成本

如题所述

定制软件开发是软件开发的一个领域,开发定制的数字技术解决方案以满足特定业务组织的特定需求。话虽如此,任何投资于定制软件开发的组织都必须有适当的计划和预算。定制软件开发项目有两个非常重要的限制需要考虑:时间和成本。(准确估算软件开发项目的成本是保障其整体成功的关键)。

在为某个定制软件开发项目制定计划时,组织或个人会问两个问题。

“多少钱?”

“多长时间?”

一、确定定制软件开发的基础工作

要确定和估算某个软件开发项目的成本,必须了解定制软件开发的基础知识。更具体地说,您必须知道问题的答案:

“定制软件开发是如何执行的?”

为了最简单、最全面地回答这个问题,需要讨论以下几点,它们是定制软件开发的基础。

确定需求——它有助于更好地估算成本,还可以正确开发和执行开发任务。

计划整个过程并设定目标——为整个软件项目开发周期制定适当的计划可以在时间和成本管理方面大有帮助。

详细文档——必须记录项目计划、实施计划、测试计划、范围说明书和培训计划中的所有内容。

为定制软件寻找合适的专业团队——能够高效工作并且能够同时处理多项任务,为整个过程提升效益。

二、确定影响定制软件开发成本的因素

在下面这一部分,讨论影响自定义软件开发项目的关键因素。确定软件开发项目的成本需要组织或个人考虑并考虑这些因素。

软件的规模和类型:软件的规模和类型是决定开发成本的两个关键因素。

例如,移动应用程序或电子商务商店将比银行或医院 ERP 解决方案等其他类型的软件便宜。自定义软件、仓库管理、安全应用程序和 CRM 解决方案的类型通常更加昂贵和耗时。

复杂性:开发的复杂性是影响整体定制软件开发估算的关键因素。

设计结构:设计结构有两个关键领域:创意设计和UI/UX设计。这两个因素对于项目的总成本都是必不可少的。

集成:第三方集成需要大量的精力和资源。

数据迁移:数据迁移是一个非常具体和准确的过程,需要自定义脚本和多个渠道。

开发时间:开发时间是影响定制软件开发成本的关键因素,人力成本是最大的支出。

功能和平台:尽管听起来很明显,软件运行的平台及其功能对您需要在产品上进行的整体投资有重大影响。

测试:有助于确定软件的效率和功能,还涉及一些影响项目总成本的支出。

维护:在成本估算时,还必须考虑某种定制软件产品的维护和支持类型。

三、如何估算定制软件的规模

快速功能点方法是依据国际标准《ISO/IEC 24570-2005软件工程NESMA功能尺度测量法2.1版功能点分析应用的定义和计数指南》提出的NESMA软件规模度量方法。

该方法适用于软件项目早期、中期、后期等各个阶段的规模估算或测量。

快速功能点方法进行规模估算或测量的基本过程或步骤如下:

确定计数类型

识别系统边界

识别功能点计数项

计算未调整的功能点数

计算调整后的功能点数。

那么就让新星为大家详细对每个步骤进行剖析:

1、确定计数类型

根据需求或项目的类型确定计数类型。

计数类型分为三种:新开发、延续开发及已有系统计数。

对于新开发需求或项目,对预计(或实际)投产的功能进行计数;

对于延续开发需求或项目,对预计(或实际)新增、修改及删除的功能均进行计数;

对于已有系统,对实际的功能进行计数。

2、识别系统边界

在识别系统边界的时候应注意:

应从用户视角出发,不受系统实现影响;

主要是为了区分内部逻辑文件(ILF)和外部接口文件(EIF);

事务功能应穿越识别的系统边界。

3、识别功能点计数项

功能点计数项分为数据功能和交易功能两类。

数据功能——包括内部逻辑文件(ILF)、外部接口文件(EIF);

交易功能——包括外部输入(EI)、外部输出(EO)、外部查询(EQ)。

数据功能:系统提供给用户的满足产品内部和外部数据需求的功能,即本系统管理或使用那些业务数据(业务对象),如“客户信息”“账户交易记录”等。内部逻辑文件或外部接口文件所指的“文件”不是传统数据处理意义上的文件,而是指一组客户可识别的、逻辑上相互关联的数据或者控制信息。因此,这些文件和物理上的数据集合(如数据库表)没有必然的对应关系。

交易功能:系统提供给用户的处理数据的功能,即本系统如何处理和使用那些业务数据(业务对象),如“转账”“修改黑名单生成规则”“查询交易记录”等。交易功能又称为基本过程,是用户可识别的,业务上的一组原子操作,可能由多个处理逻辑构成。例如,“添加柜员信息”这个基本过程可能包含“信息校验”“修改确认”“修改结果反馈”等一系列处理逻辑。

3、计算未调整的功能点数

a.采用预估功能点进行计数,计算公式如下:

FP=35ILF15EIF

——FP:未调整的功能点数,单位为功能点;

——ILF:内部逻辑文件的数量;

——EIF:外部接口文件的数量。

b.采用估算功能点进行计数,计算公式如下:

FP=10ILF7EIF4EI5EO4*EQ

——FP:未调整的功能点数,单位为功能点;

——ILF:内部逻辑文件的数量;

——EIF:外部接口文件的数量;

——EI:外部输入的数量;

——EO:外部输出的数量;

——EQ:外部查询的数量。

5、计算调整后的功能点数

根据不同的规模测算阶段,需要考虑隐含需求及需求变更对规模的影响,因此,需要根据规模计数时机进行规模调整。

调整后的功能点数(AFP),计算公式如下:

AFP=FP*CF

——AFP:调整后的功能点数,单位为功能点;

——FP:未调整的功能点数,单位为功能点;

——CF:规模变更调整因子,依据行业数据,项目估算早期(如概预算阶段)通常取值为1.5;项目估算中期(如招投评标、项目立项、技术方案阶段)通常取值为1.26;项目估算中后期(如需求分析完成及后评价)通常取值为1.0。

四、估算软件项目开发成本

得出功能点数后,结合当地人力成本成本费率和项目非人力成本支出可以估算出软件项目开发成本。

温馨提示:答案为网友推荐,仅供参考
相似回答