软件成本与工期的测算方法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

M s M s 152.5 144.5 M 5% 相对误差均小于 20% ,故可从中选择二者之一输出,例如从 M 152.5 s 保守的观点出发可选择系统成本与系统工作量有
M s 152.5(人月), Cs 708075(元)
然而我们注意到上述之成本与工作量是在生存周期的需求分析、
计算各阶段系统成本 合成系统总成本
Ck k M , k 1.2 nk ~ ~ ~ Cs , Cs Cs,M s与M s 是否基本一致
~
~
N
Y
进行成本分析,寻找关键子系统(模块)或阶段,研究解决办法 结束
[例3.1] 某计算机辅助设计(CAD)软件是计算机集成制造系 统( CIMS )的一个子系统,根据对用户的需求调查与分析, 确定该系统按功能可划分成七个功能模块,它们分别是用户接 口控制模块、二维几何造型模块、三维几何造型模块、数据结 构管理模块、外部设备控制模块、计算机图形显示模块和设计 分析模块。试对该软件系统作成本与工作量估算。 解:设上述七个功能模块分别记为 N1 , N 2 , N 3 , N 4 , N 5 , N 6 , N 7 , 各 功能模块的成本费用率 (单位:元 /行),劳动生产率 Eoj (单 j 位:行/人月)及各阶段的工时费用率 C oj (单位:元/人月),由 该企业的软件构建(历史)信息库可得数据见表3.3,其中软件 生存周期仅考虑需求分析、设计、编码、测试四个阶段。
软件成本与工期的测算方法
对软件成本测算的方法有功能分解法、价值
工程法、统计模型法、影响因子法、类比法、 计算机模拟法以及利用成本测算工具软件作 成本测算等多种方法,以下对其中部分内容 作概要介绍。
软件成本与工期的测算方法
功能分解法

功能分解法的基本思想为首先从结构上将软件 成本按功能/性能和生存周期阶段两个维度进行 分解,若设系统的生存周期为n个阶段,软件按 功能/性能分为m个子系统,则该系统的功能分 解示意图见图3.2
N6
N7 总计
10890 0
15120 0
Es 33360
Cs 656680
M s 144.5
表3.5 CAD软件成本、工作量估算表(二)
时间维 需求分析 设计 编码 测试 总计
功能维
N1 N2 N3 N4 N5 N6 N7
M i1
1.0 2.0 2.5 2.0 1.5 1.5 4.0 14.5 5200 75400
系统设计、程序编码、系统测试四个阶段成本与工作量基础上 的累计值,而并非在整个生存周期内的累计值。而后者还包括 系统运行与维护阶段的成本,因而我们可在 与 的基础上采 用加乘因子的方法求得系统成本与工作量在整个生存周期内的 M s Cs 估计值 与 有 (3.5) M s 与Cs 分别为工作量与成本的加乘因子,其取值将依赖于 此中 系统的功能与性能特性,例如根据此 CAD 软件特性,可 M s M s (1 M ), Cs Cs (1 C ) 取 ,则有系统成本与工作量在整个生存周 1 2 期内的估计值为 人月 1 40%, 2 40% 万元
Cs
C
j 1
m
j 1
j 1
j

~ 由专家或经验给出i子系统(模块)j 阶段工作量估计值 M ,合成系统各 ij , i 1 ~ m, j 1 ~ n m n m ~ ~ ~ ~ ~ 阶段工作量 M 与总工作量
j
M s M ij , M j M ij
i 1 j 1 i 1
确定决策主持人,选择专家 l 人,设计专家 调查表,给出 , , P 1 1 0 P0

进入第P次调查,由主持人给每位专家发送专家调查表 主持人召开专家会议(现场或网上),就不 3 清楚的问题回答咨询,专家展开讨论
2
i和变异系数 4 主持人向各专 i 家再次发出调 i 查表,要求各 专家按照修改 准则Ⅱ进行填 主持人再次召开专家会,公布 Ci , i 和 i 数值, i 1 ~ n , 写 并对所公布之 Ci , i 和 i 数值进行讨论,研究各子系统成本 估值的决策问题
7400
8600
5380
6800
20
20
220
220
24.4
30.9
2950
2000 4050 6600
3400
2100 4900 8500
3600
2450 6200 9800
3350
2140 4950 8400
18
28 22 18
60300
59920
240
140 200 300
13.9
15.2 24.7 28.0
算专家组的成本估计均值 C ,成本均方差
7
l个专家填写(无记名)调查表,并送回给主持人,主持人 计算专家 k 的成本估计值 C k , k 1 ~ l , i 1 ~ n,计
i
,i 1 ~ n
5
8
进入下一次调 查 P P 1 是 依据决策准则Ⅰ来决 定是否继续调查? 否 输出决策方案
k
5200
4800
4250
4500

由专家及经验可给出该软件各模块的最小可能值(最乐观 a j ,最大可能值(最悲观值) 值) b j 和最可能值 ,若设各模 块工作量均服从m j 分布,则 由分布性质知各模块期望(平均) Ej ,有 工作量
Ej

a j 4m j b j (单位:行) b


最后我们需要说明的是:在表3.4中关于各子系统Nj的成本特性值aj, mj,bj均是由一个专家给出的,考虑到一个专家对事物的认识难免会 有主观、片面之处,因而由其个人来决定aj,mj,bj往往有可能不够 科学、可靠,而理论分析与经验表明,若采用一个专家群体(专家组) 来对上述成本特性值各自独立地作出判断,且当这些判断值彼此差异 不大的情况下用这些判断值的平均值来作为软件各子系统的成本估值 时将更为科学、可靠,从而产生了以专家群体作判断为基础的Delphi 法。一般来说对于一些规模较大、研发经费较多的软件项目,在对其 作成本估计时,项目管理部门往往采用Delphi法。 3.2.2 Delphi法(又称专家群体法) 由美国Rand公司首先推出的一种专家群体意见性预测法,设软件据 系统概要设计拟由n个子系统构成,则采用Delphi法对该系统各子系 统的成本估值求解流程见图3.5。
表3.4 CAD软件成本、工作量估算表(一)
参数 模块 N1 N2 N3 N4 N5
aj
(行)
1800
mj
(行)
2400
(行)
2650
bj
Ej
(行)
2340
Coj
(元/行)
14
Cj
(元)
32760 10760 0 13600 0
Eoj
(行/人月)
315
Ms
(人月)
7.4
4100
4600
5200
6900
软件
按功能分解
N1 N11 N12 N13
N2 N21 N22 N23
Nm Nm1 Nm2 Nm3
N1n
N2n
Nmn
图3.2 系统的功能分解示意图
软件构建信息库
用户功能需求界定 将系统划分成功能子系统(模块)N ,j
j
1~ m
图 功 能 分 解 法 的 成 本 测 算 流 程 图
修 由专家或经验给出各功能子系统(模块)的工作量下限
M i2
2.0 10.0 12.0 6.0 6.0 11.0 14.0 61.0 4800 292800
M i3
0.5 4.5 6.0 3.0 3.5 4.0 5.0 26.5 4250 112625
M i4
3.5 9.5 11.0 4.0 5.0 10.5 7.0 50.5 4500
Mi
(人月)
7.0 26.0 31.5 15.0 16.0 27.0 30.0
M s M s (1 M ) 152.5(1 0.4) 213.5
Cs Cs (1 C ) 708075(1 0.4) 991305元=99.13



此外,观察表3.4可知,从成本分析的角度来看各模块中成本较 高的为N3(三维几何造型模块)和N7(设计分析模块),因此 为进行成本控制或降低系统成本首先应关注N3和N7模块 另外从人力资源投入的角度来分析,由表3.4可知投入量最大的 同样为N3和N7 ,因此可将N3和N7模块作为系统成本分析的关键 模块,系统管理员可寻找相关措施来降低N3与N7的成本(例如 设法提高N3与N7的劳动生产率Eo3和Eo7和降低N3和N7的成本费 用率Co3和Co7等)。 此外观察表3.5还可得知系统成本在需求分析、系统设计、程序 编码和系统测试的阶段分布中以系统设计阶段为最大,程序编 码阶段为次之,了解上述的成本的时间分布特点将有助于企业 的资金运转过程。
6
C (C1 , C2 ,
结束
, Cn )
9
图3.5 Delphi法求解流程
在图3.4的框1中有关专家调查表的设计可见表3.6。
表3.6 Delphi法专家调查表
1 2 3 4 5 6
软件名称 系统性能、功能、结构需求及有关说明 概要设计及有关说明 调查表填写规范与有关说明 专家编号: … 填表日期: N 年1 月 日N 2 N3 子系统 成本参数
(3.2)
,其中 (3.3)
从而可计算各模块成本 C j 和以人月为单位的工作量
Mj

(单位:元) (单位:人月)
C j Coj E j 最后汇总有 M j E j / Eoj (元),
7 j 1
7
(行),
Es E j 33360
j 1
Cs C j 656690 (人月)
M s M j 144.5
j 1 7

Es ( M s ) Cs 上述计算过程详见表3.4,观察表3.4可知 系统成本 和工作量 是仅通过功 能这一个维度分解而完成的汇总计算。 为了使估算更具可靠性,我们还可以将 系统工作量按功能与生存周期阶段二个 维度进行分解,并利用表 3.3的工时费用 k 率 来计算系统在生存周期各阶段的成 本,并有 ~ ~ Ck k Mk , k 1,2,3,4 (3.4)
Cs Ck 708075
k 1 4
(人月)
M s M i M ik 152.5
i 1 k 1
7
4

注意到通过二条不同途径得到了该软件成本(单位:元)与 工作量(单位:人月)的二组数值,但考虑到这二组数值有 相对误差
Cs Cs 708075 656680 C 7% 708075 Cs
Nn
a :
k 1
a : a :
k 2
k 3
… …
a :
k mn :
k n
简要理由
k k k m : m : m 2 3 : (单位:万元) 1
b1k : b2k : b3k :

k bn :
表3.6与图3.4中有关符号之含义如下:

0表专家组对各子系统成本调查的终止上界

Coj , Eoj
可能值
m j,j 1 ~ m
j
a j ,上限 b j 和最
3.3
k
计算各功能子系统(模块) N 的平均工作量 块)成本
Ej
a j 4m j b j ,计算各子系统(模 6

C j Coj E j ,计算各子系统(模块)工作量 M j E j / Eoj ,汇总 m m E , M 计算系统总成本与总工作量 , , , E E M s s j s Mj s
表3.3 工程经济参数表
模块 工程 N1 14 N2 20 N3 20 N4 18 N5 28 N6 22 N7 18
经济参数
成本费用率 (元/行) C oj
劳动生产率 Eoj 315 (行/人月)
生存周期 阶段
220
220
系统设计
240
140
编码
200
300
测试
需求分 析
工程经济参数
工时费用率
k(元/人月)
Ck (元)
M k(人月)
M s=152.5
22725 C 708075 s 0

由表3.5可知,依次有

C1 1M1 14.5 5200 75400 元 元 C2 2 M 2 61 4800 292800 元 C3 3 M 3 26.5 4250 112625 元 C4 4 M 4 50.5 4500 22725 由此可得系统总成本 与总工作量(人月) 有 Ms Cs (元)
P0 表专家组对各子系统成本调查的次数
相关文档
最新文档