A. 如何确定软件的开发成本价格
软件开发成本估算过程可进一步细分为软件规模估算、工作量估算、成本估算和确定软件开发成本等四个过程。
其中成本估算需要对直接人力成本、间接人力成本、间接非人力成本及直接非人力成本分别进行估算。
国家标准《GB/T 36964-2018 软件工程 软件开发成本度量规范》中建议的软件开发成本估算基本流程如下图所示:
国家准中的四个估算过程,层层递进,逐步细化,最终达到科学、一致的成本估算。
一、软件规模估算
通常情况下,规模估算是软件成本估算过程的起点。
估算规模是后续计算软件项目的工作量、成本和进度的主要输入,是项目范围管理的关键,因此,在条件允许的情况下,应首先进行规模估算。
在规模估算过程中,需要注意以下情况:
1.在规模估算开始前,应根据可行性研究报告或类似文档明确项目需求及系统边界。项目需求除包含最基本的业务需求外,还应进行初步的子系统/模块划分,并对每一子系统或模块的基本用户需求进行说明,以保证可以根据项目需求进行规模预估。
2.依据项目特点和需求详细程度不同,通常估算人员在选择估算方法时应采用纳入国际标准的功能点方法进行功能规模估算,在适用IFPUG或NESMA方法时,可以根据需求的粒度和管理需要,选择预估功能点方法、估算功能点方法或者详细功能点方法。
3.若当前的项目需求极其模糊或不确定,可不进行规模估算,而直接采用类比法或类推法估算工作量和成本。
二、工作量估算
在完成规模估算后,应当开展工作量估算工作,若当前项目未开展规模估算,也可直接启动工作量估算工作。
工作量估算时,可采用方程法、类比法、类推法、功能点法:
方程法:即基于基准数据建立参数模型,通过输入各项参数,确定估算值。
类比法:即将待估算项目的部分属性与类似的一组基准数据进行比对,进而确定估算值。
类推法:即将待估算项目的部分属性与高度类似的一个或几个已完成项目的数据进行比对,并进行适当调整后确定估算值。
功能点法:从用户视角出发,通过量化系统功能来度量软件的规模,这种度量主要基于系统的逻辑设计。功能点规模度量方法在国际上的应用已经比较广泛,并且已经取代代码行成为最主流的软件规模度量方法。
在开展工作量估算的过程中,需要注意以下情况:
1.当需求极其模糊或不确定时,如果此时具有高度类似的历史项目,则可直接采用类推法,充分利用历史项目数据来粗略估算工作量。
2.当需求极其模糊或不确定时,如果此时具有与本项目部分属性类似的一组基准数据,则可直接采用类比法,充分利用基准数据来粗略估算工作量。
3.对于规模估算已经开展的项目,可采用方程法,通过输入各项参数,确定待估算项目的工作量。若客户或高层对项目的工期有明确的要求时,在采用方程法估算工作量时,工期要求有可能是方程的参数之一。
4.为追求估算的准确性,建议在条件允许的情况下,可采用两种估算方法,对估算结果进行交叉验证,若估算结果差别不大,可直接使用两种估算结果的平均值或以某种估算结果为准,若差别较大,需进行差异分析。
5.工作量的估算结果宜为一个范围而不是单一的值。
三、成本估算
在获得了工作量估算结果后,可采用科学的方法进行成本估算。
在成本估算过程中,应需要注意的情况:
1.类比法和类推法,同样适用于需求极其模糊或不确定时的成本估算;
2.间接成本是否与工作量估算结果相关取决于间接成本分摊计算方式。在绝大多数组织,项目周期越长,项目组成员越多,其分摊的间接成本就越高,此时项目的间接成本与工作量估算结果直接相关;
3.直接非人力成本通常与工作量估算结果无关,宜单独分项测算;
4. 成本估算结果,也通常为一个范围,而不是单一的值。
四、确定软件开发成本
在《软件工程 软件开发成本度量规范》中,将软件开发成本分为四类,主要是为便于对成本构成(即哪些成本属于开发成本,哪些不属于开发成本)进行清晰界定。
而在实际确定软件开发成本时,通常并不是分别测定四类成本,加和后获得总成本,而是通常采用以下两种方式确定总成本:
1.根据人力成本费率及工作量估算直接人力成本和间接成本之和,再加上直接非人力成本,获得总成本;
2.根据规模综合单价和软件规模,测算出直接人力成本和间接成本之和,再加上直接非人力成本,获得总成本。
在进行软件的规模、工作量、成本估算时应遵循以下原则:
1.在规模估算时,应根据项目特点和需求的详细程度选择合适的估算方法;
2.充分利用基准数据,采用方程法、类比法或类推法,对工作量和成本进行估算;
3.工作量和成本的估算结果宜为一个范围值;
4.在进行成本估算时,如有明确的工期要求,应充分考虑工期对项目成本的影响,可以根据项目实际情况以及工期对项目的影响程度,对成本的估算结果进行调整;
5.成本估算过程中宜采用不同的方法分别估算并进行交叉验证。如果不同方法的估算结果产生较大差异,可采用专家评审方法确定估算结果,也可使用较简单的加权平均方法;
6.在软件项目的不同场景下(如预算、招投标、项目计划和变更管理等)采用国家标准时,相关要求见国家标准中附录A。
除了上述主要原则外,我们还需注意在使用基准数据时:
1. 对于委托方和第三方,建议使用或参考软件行业基准数据进行估算。估算模型的调整因子的增减或取值有可能随着行业基准数据的变化而变化。
2.对于开发方,在引入行业基准数据的基础上,可逐步建立组织级基准数据库,以提高估算精度。组织级基准数据定义应与行业基准数据定义保持一致,以便于与行业基准数据进行比对分析,并持续提升组织能力。
B. 华为销售如何控制软件开发成本
按照成本控制中的五个着眼点。
:1、设计成本,确保未来的生产是最经济的;
2,采购成本与外协成本,议价能力与规模经济是关键;
3,质量成本,特别是因产品质量和工作质量问题引起的维护成本;
4,库存成本,特别是由于版本升级而造成的呆料和死料;
5,期间费用中的浪费。其中,设计成本和质量成本最值得关注。
C. 做软件开发的成本究竟如何估算
软件成本评估的6个步骤:
1、软件规模评估:
软件规模评估是软件成本评估的基础,是为了保证软件成本评估结果的客观性和透明性,软件规模信息必不可少。
在软件规模评估过程中,如果能够以软件功能点方法作为主要的软件规模评估方法,同时辅以其他的非标准评估方法,例如代码行方法、用例数方法等,应用不同的软件规模评估方法对规模评估结果进行真实性交叉检验,一方面可以提高软件规模评估结果的可信度;另一方面,也可以对不同类型的项目干系人也会具有更强的说服力。
在实际的软件规模评估过程中,软件组织或者个人也可以根据自身的特点采用有别于上述评估方法的其他方法。但要注意的是,不管采用哪种软件规模评估方法,都要尽可能的保证这个方法所评估结果的一致性和客观性。
2、软件工作量评估
如果说我们能够算出开发软件、维护软件所投入的人员工作量,那么我们也就相当于得到了相应的软件成本。在软件行业中的绝大多数项目里面,影响软件工作量的最主要因素还是软件规模因素,当软件规模越来越大时,也就意味着我们需要投入的工作量越多,这两者之间是存在着正相关的关系。
在软件工作量的评估中,还包含了五个小步骤,也就是收集历史工作量数据、分析历史工作量数据、建立工作量评估模型、评估工作量、工作量模型的标定和更新。通过这些步骤可以积累更多关于软件组织开发工作量和维护工作量的数据,在此基础之上,建立相应的工作量评估模型,从而为后续的工作量评估任务提供支持方法。
3、软件阶段工作量评估
在这个步骤中,软件成本评估团队应该充分考虑软件项目的工期因素,对软件项目总工作量安排和各个阶段工作量安排进行优化分析,将软件项目的总工作量以合理可行的方式分解为各个阶段的工作量。
不仅如此,还要考虑软件项目工期所面临的各种工期约束条件,例如一些来自客户的强制工期要求、市场竞争性、可用的人力资源、项目各阶段人力资源分配的合理比例等约束条件,都在这个步骤中明确介绍了一系列阶段工作量安排的改进和优化方法,包括阶段工作量汇总法、资源平滑法、快速跟踪法、赶工法以及软件阶段工作量的可行性评估方法等。
这些方法的主要目的就是在于将软件工作总量以合理、可行的方式分配到软件项目的各个阶段,确保在不超出工作总量的前提下,尽可能降低人员成本、优化人力资源配置,为软件预算、软件开发计划制定等管理活动提供充分的决策支持信息。
4、软件人员成本评估
在这个步骤里面,我们将会详细说明如何在软件开发和维护所需的工作量转换为对应的费用信息,以便为相关的项目外部干系人提供更直接的决策依据。在软件人员成本评估中,也包含有单一人员成本评估法、分类人员成本评估法和行业人员成本评估法。
5、软件风险评估
在软件开发的过程中,许多软件组织明确认识到软件行业的开发人员已经默认和接受了无偿加班这一行业事实,这样一来,就算没有识别相应的风险信息,但也没有严重后果,也就是说,如果风险发生了,那就加班。
这个步骤中通过应用不同的风险评价方法,将软件项目的风险信息转换为项目的成本信息,从而建立软件项目的风险预算。
6、软件成本报告与更新
软件项目在开发过程中时,经常容易发生各种软件需求变更、人员变更、工期变更等多种类型的变更,这些变更无一例外地将对软件成本产生明显的影响。
在这个步骤中,可以分析软件成本更新面临的困难,有哪些典型的软件成本更新的信息来源,从机制设计的角度确保尽可能全面获取软件成本变更信息。最后遵循软件组织所建立的软件成本更新过程,将软件成本变更信息反映到更新后的软件成本评估结果中。
D. 软件成本评估都包含哪些内容
完整的软件造价评估应该包含哪些?
1 估算基础
对估算对象(需求、任务等)的拆分颗粒度定义了上限与下限,以提升估算的准确度。
完备识别了估算对象,没有遗漏的需求或任务。
估算人员经过了估算方法的系统培训。
定义了组织级的估算方法。
2 规模估算
从不估算规模或经验估算规模升级为客观度量规模,比如采用国际标准的功能点方法或自定义的规模度量方法,无论是哪种方法,规模与工作量之间应该是强相关的才是合理的。
如果对本公司的项目而言,规模与工作量不强相关,也可以是复杂度等其他因子,对这些因子应该也与工作量做了相关性分析,与工作量应该强相关才是合理的。
3 工作量估算
建立了从规模的客观度量用定量模型推算出项目总工作量。
建立了工作量分布百分比的性能基线,可以从总工作量推算各阶段或各类任务的工作量。比如开发的工作量、测试的工作量。
能够用PPB或PPM推算出各种关键活动的最少投入工作量,比如需求评审的工作量、代码评审的工作量、系统测试的工作量等。
工作量的估算结果应该是一个区间,而不是单点值。如,总工作量不超过100人月。
4 成本估算
从工作量到成本有定量的计算方法。
成本的估算结果应该也是一个区间,而不是单点值。比如不超过30万,或者在25到30万之间等。
5 工期估算
识别了项目的关键路径与关键链。
对项目的工期进行了模拟,得到满足项目工期要求的概率有多大。如果概率太低,对关键路链上的任务、投入的资源与需要完成的需求进行了优化。
6 评审与修订估算
保存了估算记录,估算结果经过了评审。
随着需求和任务的明确,在开发过程中修订了估算结果。
7 持续改进估算过程
对比了估算结果与实际结果,对估算偏差率建立了过程性能基线或过程性能模型。
总结了估算有关的经验教训。
对估算方法和过程进行了持续优化。
跟踪检查了估算方法与过程在组织级的落地实施情况。
E. 如何降低对软件成本估算的影响
1.关闭虚拟机
公有云原则上是按使用情况付费的模式运行,但是成本超支很常见的一个原因是关闭VM的简单失败。 问题是什么时候关灯。
在开发方案中,仅复制生产的过渡环境可能需要运行24/7。 但这只是有限的时间。 对于开发人员而言,它们可能分散在各个时区,并且工作时间长且奇数小时,但即使是开发和测试环境,也不可能每周需要完整的168个小时。
我们都知道,通常的工作时间是每周40至50小时。 一种简单的,有规律的方法,可以在不使用时关闭计算资源(也许以自动化方式),可以节省60%或更多的资源,否则可能需要向您收费。
2.自动缩放
这是生产领域中另一个可以帮助自动化的领域。 许多企业和应用程序都有高峰和低谷。 在假期期间,零售商可能会完成其销售额的30%至40%。 健康保险正处于旺季。 薪资服务具有双月流量模式。 音乐会销售开始后,售票处将很快达到顶峰。
但是,为这些高峰构建环境将导致大量的容量浪费和不必要的成本。 自动缩放可以做的是容纳这些潮起潮落,在需要时添加服务器,在繁忙周期过去后将其关闭。 您可以对已知模式进行编程,也可以使用触发器来激活缩放,然后继续缩放直到症状消失。
3.注意您的GET
有关数据存储的关键问题是如何使用它。 如果您的工作流程需要具有较高I / O要求的主存储,并需要进行计算以保持应用程序运行,那么您可能不希望它首先放在公共云上。 对于二级存储和档案存储,公有云的价格确实很低,但GET用于访问数据的GET请求。
每月将几TB的后处理数据移入冷存储服务器的PUT请求与GET有所不同,后者使您可以按千位成本提取或下载数据。 如果您需要定期下载或打算将数据移动到其他地方,则应该承担更多费用。 当然,最好预先回答这些设计问题。
4.管理蔓延
Sprawl与影子IT相关联,影子IT现在包括公共云VM基础架构。 这种情况很容易理解:开发人员需要更多资源才能完成工作; 添加虚拟机非常容易。 但是,如果没有持续的报告或意识,则无论谁拿到发票都可能会感到意外,特别是如果启动并运行的VM数量是预算的两倍。 另外,这些资源可能会被遗忘,并且在不需要时不会关闭。
缺乏监督还可能导致低效的定价,并且当涉及到不同的技术时,您最终可能会面临管理成本高昂的复杂性。 该解决方案是一种制衡机制,可在保持控制和治理的同时最大程度地减少速度波动。
5.避免安全漏洞
组织通常在两个层次上建立安全规则和策略:
在企业或公司级别,将策略编码到技术中,以便在广泛的资源用户群中实现一致的应用。
部门或特定应用程序级别,其中访问根据角色根据人力资源或业务部门进行管理。
但是这些政策的执行情况如何? 在创建虚拟局域网(VLAN)以支持一组新启动的VM时,是否要复制整套适用策略? 如果不是这样,您将使企业暴露于外部流氓元素中,这些元素可以快速识别网络安全漏洞,破坏防御并增加环境成本(在这种情况下为间接成本)。
F. 如何降低app软件开发的成本
企业想要能减低些开发成本,那就需要有针对地进行。比如,可以先从产品的功能上入手。企业需要对自身的需求非常明确,知道要开发一个什么样的产品。当目标、开发的要求明确时,能够有效减少双方沟通上的成本。同时,尽量将想法简单化,简化产品的内容,报价将会有所降低。当然,关键的核心功能要保留。新网塔开发精致的高质量app,总比花俏没用的功能堆积要好得多。如果能够低价获得好产品,又何必去追求复杂呢?
G. 如何估算实施erp软件系统的成本
一般这几种方法:
1,先进先出(如果做跨境电商的话,一般很少erp会有,先进先出的话,不容易控制,如果有退货的不好处理。大一点的erp系统估计会有)
2,采购更新成本(每次采购入库完成会覆盖产品的成本)
3,采购移动平均加权(一般采用移动平均加权会多一点)
4,固定的不变成本价(很少用到,一般是工厂生产成本变动不大)
H. 如何理解软件开发的成本呢
大部分应该是指开发人员的工资,
不过一般还会算上公司的各种税务
如果有什么专利的话可能还会算上技术一类成本
我是一个开发人员,不过对于帐务了解不太多
不知道对你有没有帮助
I. 一个软件项目如何评估工作量和成本
软件开发成本估算过程可进一步细分为软件规模估算、工作量估算、成本估算和确定软件开发成本等四个过程。
其中成本估算需要对直接人力成本、间接人力成本、间接非人力成本及直接非人力成本分别进行估算。
国家标准《GB/T 36964-2018 软件工程 软件开发成本度量规范》中建议的软件开发成本估算基本流程如下图所示:
国家准中的四个估算过程,层层递进,逐步细化,最终达到科学、一致的成本估算。
一、软件规模估算
通常情况下,规模估算是软件成本估算过程的起点。
估算规模是后续计算软件项目的工作量、成本和进度的主要输入,是项目范围管理的关键,因此,在条件允许的情况下,应首先进行规模估算。
在规模估算过程中,需要注意以下情况:
在规模估算开始前,应根据可行性研究报告或类似文档明确项目需求及系统边界。项目需求除包含最基本的业务需求外,还应进行初步的子系统/模块划分,并对每一子系统或模块的基本用户需求进行说明,以保证可以根据项目需求进行规模预估。
依据项目特点和需求详细程度不同,通常估算人员在选择估算方法时应采用纳入国际标准的功能点方法进行功能规模估算,在适用IFPUG或NESMA方法时,可以根据需求的粒度和管理需要,选择预估功能点方法、估算功能点方法或者详细功能点方法。
若当前的项目需求极其模糊或不确定,可不进行规模估算,而直接采用类比法或类推法估算工作量和成本。
二、工作量估算
在完成规模估算后,应当开展工作量估算工作,若当前项目未开展规模估算,也可直接启动工作量估算工作。
工作量估算时,可采用方程法、类比法、类推法、功能点法:
方程法:即基于基准数据建立参数模型,通过输入各项参数,确定估算值。
类比法:即将待估算项目的部分属性与类似的一组基准数据进行比对,进而确定估算值。
类推法:即将待估算项目的部分属性与高度类似的一个或几个已完成项目的数据进行比对,并进行适当调整后确定估算值。
功能点法:从用户视角出发,通过量化系统功能来度量软件的规模,这种度量主要基于系统的逻辑设计。功能点规模度量方法在国际上的应用已经比较广泛,并且已经取代代码行成为最主流的软件规模度量方法。
在开展工作量估算的过程中,需要注意以下情况:
当需求极其模糊或不确定时,如果此时具有高度类似的历史项目,则可直接采用类推法,充分利用历史项目数据来粗略估算工作量。
当需求极其模糊或不确定时,如果此时具有与本项目部分属性类似的一组基准数据,则可直接采用类比法,充分利用基准数据来粗略估算工作量。
对于规模估算已经开展的项目,可采用方程法,通过输入各项参数,确定待估算项目的工作量。若客户或高层对项目的工期有明确的要求时,在采用方程法估算工作量时,工期要求有可能是方程的参数之一。
为追求估算的准确性,建议在条件允许的情况下,可采用两种估算方法,对估算结果进行交叉验证,若估算结果差别不大,可直接使用两种估算结果的平均值或以某种估算结果为准,若差别较大,需进行差异分析。
工作量的估算结果宜为一个范围而不是单一的值。
三、成本估算
在获得了工作量估算结果后,可采用科学的方法进行成本估算。
在成本估算过程中,应需要注意的情况:
类比法和类推法,同样适用于需求极其模糊或不确定时的成本估算;
间接成本是否与工作量估算结果相关取决于间接成本分摊计算方式。在绝大多数组织,项目周期越长,项目组成员越多,其分摊的间接成本就越高,此时项目的间接成本与工作量估算结果直接相关;
直接非人力成本通常与工作量估算结果无关,宜单独分项测算;
成本估算结果,也通常为一个范围,而不是单一的值。
四、确定软件开发成本
在《软件工程 软件开发成本度量规范》中,将软件开发成本分为四类,主要是为便于对成本构成(即哪些成本属于开发成本,哪些不属于开发成本)进行清晰界定。
而在实际确定软件开发成本时,通常并不是分别测定四类成本,加和后获得总成本,而是通常采用以下两种方式确定总成本:
根据人力成本费率及工作量估算直接人力成本和间接成本之和,再加上直接非人力成本,获得总成本;
根据规模综合单价和软件规模,测算出直接人力成本和间接成本之和,再加上直接非人力成本,获得总成本。
在进行软件的规模、工作量、成本估算时应遵循以下原则:
在规模估算时,应根据项目特点和需求的详细程度选择合适的估算方法;
充分利用基准数据,采用方程法、类比法或类推法,对工作量和成本进行估算;
工作量和成本的估算结果宜为一个范围值;
在进行成本估算时,如有明确的工期要求,应充分考虑工期对项目成本的影响,可以根据项目实际情况以及工期对项目的影响程度,对成本的估算结果进行调整;
成本估算过程中宜采用不同的方法分别估算并进行交叉验证。如果不同方法的估算结果产生较大差异,可采用专家评审方法确定估算结果,也可使用较简单的加权平均方法;
在软件项目的不同场景下(如预算、招投标、项目计划和变更管理等)采用国家标准时,相关要求见国家标准中附录A。
除了上述主要原则外,我们还需注意在使用基准数据时:
对于委托方和第三方,建议使用或参考软件行业基准数据进行估算。估算模型的调整因子的增减或取值有可能随着行业基准数据的变化而变化。
对于开发方,在引入行业基准数据的基础上,可逐步建立组织级基准数据库,以提高估算精度。组织级基准数据定义应与行业基准数据定义保持一致,以便于与行业基准数据进行比对分析,并持续提升组织能力。