软件系统开发费用的估算——功能点方法 应用实例

一、前文

上篇博文《软件系统开发费用的估算——功能点方法》发出去之后,就有博友私信我说,看的还不是很明白,有没有更加直观的示例。

那么今天他来了!

首先需要说明的是,实际应用中会有一个《功能点报审模板.xlsx》。模板中:
在这里插入图片描述

二、项目特征

本次应用实例,用一个考勤打卡项目作为示例。

其项目特征如下:
在这里插入图片描述

2.1 规模计数时机

规模计数时机规模变更调整因子

规模变更调整因子为什么跟项目时期(早期/中期/完成)挂钩?

那是因为考虑到项目时期越早,需求越模糊,不管是项目经理还是产品经理都无法保证当前写的功能点不会有遗漏和错误。

随着项目的进行,功能点会根据实际情况进行增删改。

所以在项目早期和中期的时候,调整因子>1,给项目功能点调整留一部分buffer。

而如果到了项目完成的时候,功能点已经完全清晰明了,那么那时的调整因子是1.0。

规模时机调整因子
项目早期1.39
项目中期1.22
项目完成1.00

2.2 应用类型

不同类型的项目,给的生产率并不相同。

电子政务类系统相对简单,同样数量的功能点完成最快,所以生产率最低。

大数据类项目最为复杂,可能包含仿真、建模、人工智能等耗时的工作,所以生产率最高。

应用类型描述生产率
电子政务类系统如无特殊说明的项目6.32
非电子政务类系统7.10
大数据类项目12.37

2.3 质量特性

就算都是同一种类型的系统,也有不同的质量要求。

  • 比如健康码这种,对性能和可靠性要求就特别高。
  • 比如考勤打卡系统,就相对低很多。

那么两者系统的调整因子是有差异的。体现在如下四个方面。

质量特性的整体公式是

= 1 + 0.025 ∗ ( 分 布 式 处 理 调 整 因 子 + 性 能 调 整 因 子 + 可 靠 性 调 整 因 子 + 多 重 站 点 调 整 因 子 ) =1+0.025*(分布式处理调整因子+性能调整因子+可靠性调整因子+多重站点调整因子) =1+0.025(+++)

分布式处理

判断标准调整因子
没有明示对分布式处理的需求事项-1
通过网络进行客户端/服务器及网络基础应用分布处理和传输0
通过特别的设计保证在多个服务器及处理器上同时相互执行应用中的处理功能1

性能

判断标准调整因子
没有明示对性能的特别需求事项或仅需提供基本性能-1
应答时间或处理率对高峰时间或所有业务时间来说都很重要,存在对连动系统结束处理时间的限制0
为满足性能需求事项,要求设计阶段开始进行性能分析,或在设计、开发阶段使用分析工具1

可靠性

判断标准调整因子
没有明示对分布式处理的需求事项-1
通过网络进行客户端/服务器及网络基础应用分布处理和传输0
通过特别的设计保证在多个服务器及处理器上同时相互执行应用中的处理功能1

多重站点

判断标准调整因子
在相同的硬件或软件环境下运行-1
在设计阶段需要考虑不同站点的相似硬件或软件环境下运行需求0
在设计阶段需要考虑不同站点的不同硬件或软件环境下运行需求1

2.4 开发语言

不同的开发语言,调整因子也不一样,且相差还很多。

有同学就会说,这不是语言歧视吗。

其实并不是,因为这也是基于开发语言特性来说。

同一个功能点,C语言来实现就相对更加麻烦,更加耗时。

用Java/C++/C# 语言来实现就比较简单,更加省事。

开发语言调整因子
C及其他同级别语言/平台1.5
JAVA、C++、C#及其他同级别语言/平台1.0
PowerBuilder、ASP及其他同级别语言/平台0.6

2.5 开发团队背景

开发团队背景调整因子
为本行业(政府)开发过类似的软件0.8
为其他行业开发过类似的软件,或为本行业(政府)开发过不同但相关的软件1.0
没有同类软件及本行业(政府)相关软件开发背景0.6

三、规模估算

本次应用实例,用一个考勤打卡项目作为示例。

简单写了下功能点。并不是真实示例,这是一个学习演示示例。

功能点计数项和类别的说明请查看上一篇博文:软件系统开发费用的估算——功能点方法

重用程度是指两个功能点之间的重用度。

比如本系统中的App个人模块->用户信息查询后台权限管理模块->查询用户详情,两者一个是后台实现,一个是App实现,不尽相同,但是走得是一个接口,所以重用程度

重用程度越高,功能计数项US会越低,则最终的开发费用估算也越低。

重用程度调整系数调整因子
0.33
0.67
1.00

修改类型是指,你这个功能是新增功能,还是修改功能,还是删除功能。

我们的示例项目是项目早期,项目还没开始时候,所以所有功能都是新增。

修改类型调整系数调整因子
新增1.0
修改0.80
删除0.20

在这里插入图片描述
在这里插入图片描述

四、开发费用估算

整体开发费用估算表如下,最终本示例项目的开发费用基准报价是5.96万元。
在这里插入图片描述

4.1 调整后规模(单位:功能点)

  • 估算出来的功能点 :72.67
  • 规模计数时机,项目早期:1.39
  • 调整后规模(单位:功能点): 72.67 ∗ 1.39 = 101.01 72.67*1.39=101.01 72.671.39=101.01

4.2 未调整工作量(单位:人天)

  • 调整后规模(单位:功能点): 72.67 ∗ 1.39 = 101.01 72.67*1.39=101.01 72.671.39=101.01
  • 基准生产率(单位:人时/功能点),非电子政务类系统: 7.10 7.10 7.10
  • 未调整工作量(单位:人天): 101.01 ∗ 7.10 8 = 89.64 \frac{101.01*7.10}{8}=89.64 8101.017.10=89.64

4.3 调整后工作量(单位:人天)

  • 未调整工作量(单位:人天): 89.64 89.64 89.64
  • 调整因子: 0.98 ∗ 1.00 ∗ 1.00 = 0.98 0.98*1.00*1.00=0.98 0.981.001.00=0.98
    • 质量特性: 1 + 0.025 ∗ ( − 1 + 0 + 0 + 0 ) = 0.98 1+0.025*(-1+0+0+0)=0.98 1+0.025(1+0+0+0)=0.98
    • 开发语言: 1.00 1.00 1.00
    • 开发团队背景: 1.00 1.00 1.00
  • 调整后工作量(单位:人天): 89.64 ∗ 0.98 = 87.40 89.64*0.98=87.40 89.640.98=87.40

4.4 基准报价(单位:万元)

  • 调整后工作量(单位:人天): 87.40 87.40 87.40
  • 人月基准单价(单位:万元/人天): 1.5 / 22 = 0.0682 1.5/22=0.0682 1.5/22=0.0682
  • 基准报价(单位:万元): 87.40 ∗ 0.0682 = 5.96 87.40*0.0682=5.96 87.400.0682=5.96

觉得好,就一键三连呗(点赞+收藏+关注)

  • 32
    点赞
  • 96
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小康师兄

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值