软件成本与工期的测算方法课件.ppt
《软件成本与工期的测算方法课件.ppt》由会员分享,可在线阅读,更多相关《软件成本与工期的测算方法课件.ppt(74页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、n对软件成本测算的方法有功能分解法、价值工程法、统计模型法、影响因子法、类比法、计算机模拟法以及利用成本测算工具软件作成本测算等多种方法,以下对其中部分内容作概要介绍。n功能分解法u功能分解法的基本思想为首先从结构上将软件成本按功能/性能和生存周期阶段两个维度进行分解,若设系统的生存周期为n个阶段,软件按功能/性能分为m个子系统,则该系统的功能分解示意图见图3.2 图图3.2 系统的功能分解示意图系统的功能分解示意图软件软件N2NmN1N13N12N11N1nN21N22N23N2nNm1Nm2Nm3Nmn按功能分解软件构建信息库软件构建信息库用户功能需求界定用户功能需求界定将系统划分成功能子
2、系统(模块)将系统划分成功能子系统(模块) ,计算各功能子系统(模块)计算各功能子系统(模块) 的平均工作量的平均工作量 ,计算各子系统(模,计算各子系统(模块)成本块)成本 ,计算各子系统(模块)工作量,计算各子系统(模块)工作量 ,汇总,汇总计算系统总成本与总工作量计算系统总成本与总工作量 , , ,由专家或经验给出由专家或经验给出i子系统(模块)子系统(模块)j 阶段工作量估计值阶段工作量估计值 ,合成系统,合成系统各阶段工作量各阶段工作量 与总工作量与总工作量进行成本分析,寻找关键子系统(模块)或阶段,研究解决办法进行成本分析,寻找关键子系统(模块)或阶段,研究解决办法比较比较 是否基
3、本一致是否基本一致由专家或经验给出各功能子系统(模块)的工作量下限由专家或经验给出各功能子系统(模块)的工作量下限 ,上限,上限 和最和最可能值可能值 ,计算各阶段系统成本计算各阶段系统成本合成系统总成本合成系统总成本结结 束束ssssMMCC与与,与与,1.2kkkCMkn njjssCCC1,njmiMij1,1, jM miijjminjijsMMMM111,jN64jjjjbmaE jojjCCEojjjEEM/ ssME ,mjjsCC1 mjjsEE1 mjjsMM1jajbjmmj1 jNmj1 ojojEC ,k修修改改修修改改YN图图3.3 功能分解法的成本测算流程图功能分解
4、法的成本测算流程图n例3.1 某计算机辅助设计(CAD)软件是计算机集成制造系统( CIMS )的一个子系统,根据对用户的需求调查与分析,确定该系统按功能可划分成七个功能模块,它们分别是用户接口控制模块、二维几何造型模块、三维几何造型模块、数据结构管理模块、外部设备控制模块、计算机图形显示模块和设计分析模块。试对该软件系统作成本与工作量估算。n解:设上述七个功能模块分别记为 各功能模块的成本费用率 (单位:元/行),劳动生产率 (单位:行/人月)及各阶段的工时费用率 (单位:元/人月),由该企业的软件构建(历史)信息库可得数据见表3.3,其中软件生存周期仅考虑需求分析、设计、编码、测试四个阶段
5、。,7654321NNNNNNNojCojEj 模块模块 工程工程经济参数经济参数N1N2N3N4N5N6N7成本费用率成本费用率 (元(元/行)行)14202018282218劳动生产率劳动生产率 (行(行/人月)人月)315220220240140200300 生存周期生存周期 阶段阶段工程经济参数工程经济参数需求分需求分析析系统设计系统设计编码编码测试测试工时费用率工时费用率 5200480042504500k ojCojE表表3.3 工程经济参数表工程经济参数表u由专家及经验可给出该软件各模块的最小可能值(最乐观值) ,最大可能值(最悲观值) 和最可能值 ,若设各模块工作量均服从 分布
6、,则 由分布性质知各模块期望(平均)工作量 ,有 (单位:行) (3.2)u从而可计算各模块成本 和以人月为单位的工作量 ,其中 (单位:元) (3.3) (单位:人月)u最后汇总有 (元), (行), (人月)jajbjmjE4jjjjambEbjCjMjojjCCEojjjEEM/ 65669071 jjsCC3336071 jjsEE5 .14471 jjsMMu上述计算过程详见表3.4,观察表3.4可知系统成本 和工作量 是仅通过功能这一个维度分解而完成的汇总计算。为了使估算更具可靠性,我们还可以将系统工作量按功能与生存周期阶段二个维度进行分解,并利用表3.3的工时费用率 来计算系统在
7、生存周期各阶段的成本,并有 (3.4)4 , 3 , 2 , 1, kMCkkk sC()ssE Mk 参数参数模块模块(行)(行)(行)(行)(行)(行)(行)(行)(元元/行行)(元)(元)(行行/人月人月)(人月人月)N1180024002650234014327603157.4N241005200740053802010760022024.4N346006900860068002013600022030.9N42950340036003350186030024013.9N52000210024502140285992014015.2N64050490062004950221089002
8、0024.7N766008500980084001815120030028.0总计总计33360sE 656680sC 144.5sM jajmjbjEojCjCojEsM表表3.4 CAD软件成本、工作量估算表(一)软件成本、工作量估算表(一) 时间维时间维功能维功能维需求分析需求分析设计设计编码编码测试测试总计总计(人月)(人月)N11.02.00.53.57.0N22.010.04.59.526.0N32.512.06.011.031.5N42.06.03.04.015.0N51.56.03.55.016.0N61.511.04.010.527.0N74.014.05.07.030.0(
9、人月)(人月)14.561.026.550.5=152.5(元(元/人月)人月)5200480042504500(元)(元)754002928001126252272501 iM2iM3iM4iMiMkMkkCsM708075sC 表表3.5 CAD软件成本、工作量估算表(二)软件成本、工作量估算表(二)u由表3.5可知,依次有 元 元 元 元u由此可得系统总成本 与总工作量(人月) 有 (元) (人月)11114.5 520075400CM22261 4800292800CM33326.5 4250112625CM44450.5 450022725CMsCsM41708075skkCC741
10、1152.5siikikMMMu注意到通过二条不同途径得到了该软件成本(单位:元)与工作量(单位:人月)的二组数值,但考虑到这二组数值有相对误差u相对误差均小于20%,故可从中选择二者之一输出,例如从保守的观点出发可选择系统成本与系统工作量有7080756566807%708075152.5 144.55%152.5ssCsssMsCCCMMM 152.5(),708075()ssMC人月元n然而我们注意到上述之成本与工作量是在生存周期的需求分析、系统设计、程序编码、系统测试四个阶段成本与工作量基础上的累计值,而并非在整个生存周期内的累计值。而后者还包括系统运行与维护阶段的成本,因而我们可在
11、与 的基础上采用加乘因子的方法求得系统成本与工作量在整个生存周期内的估计值 与 有 (3.5)n此中 与 分别为工作量与成本的加乘因子,其取值将依赖于系统的功能与性能特性,例如根据此CAD软件特性,可取 ,则有系统成本与工作量在整个生存周期内的估计值为 人月 万元sMsCsMsC(1),(1)ssMssCMMCC121240%,40%(1)152.5(1 0.4)213.5ssMMM(1)708075(10.4)991305=99.13ssCCC元u此外,观察表3.4可知,从成本分析的角度来看各模块中成本较高的为N3(三维几何造型模块)和N7(设计分析模块),因此为进行成本控制或降低系统成本首
12、先应关注N3和N7模块u另外从人力资源投入的角度来分析,由表3.4可知投入量最大的同样为N3和N7 ,因此可将N3和N7模块作为系统成本分析的关键模块,系统管理员可寻找相关措施来降低N3与N7的成本(例如设法提高N3与N7的劳动生产率Eo3和Eo7和降低N3和N7的成本费用率Co3和Co7等)。u此外观察表3.5还可得知系统成本在需求分析、系统设计、程序编码和系统测试的阶段分布中以系统设计阶段为最大,程序编码阶段为次之,了解上述的成本的时间分布特点将有助于企业的资金运转过程。u最后我们需要说明的是:在表3.4中关于各子系统Nj的成本特性值aj,mj,bj均是由一个专家给出的,考虑到一个专家对事
13、物的认识难免会有主观、片面之处,因而由其个人来决定aj,mj,bj往往有可能不够科学、可靠,而理论分析与经验表明,若采用一个专家群体(专家组)来对上述成本特性值各自独立地作出判断,且当这些判断值彼此差异不大的情况下用这些判断值的平均值来作为软件各子系统的成本估值时将更为科学、可靠,从而产生了以专家群体作判断为基础的Delphi法。一般来说对于一些规模较大、研发经费较多的软件项目,在对其作成本估计时,项目管理部门往往采用Delphi法。u3.2.2 Delphi法(又称专家群体法)u由美国Rand公司首先推出的一种专家群体意见性预测法,设软件据系统概要设计拟由n个子系统构成,则采用Delphi法
14、对该系统各子系统的成本估值求解流程见图3.5。 确定决策主持人,选择专家确定决策主持人,选择专家l人,设计专家人,设计专家调查表,给出调查表,给出 , , 进入第进入第P次调查,由主持人给每位专家发送专家调查表次调查,由主持人给每位专家发送专家调查表主持人召开专家会议(现场或网上),就不主持人召开专家会议(现场或网上),就不清楚的问题回答咨询,专家展开讨论清楚的问题回答咨询,专家展开讨论l个专家填写(无记名)调查表,并送回给主持人,主持人个专家填写(无记名)调查表,并送回给主持人,主持人计算专家计算专家 k 的成本估计值的成本估计值 ,计,计算专家组的成本估计均值算专家组的成本估计均值 ,成本
15、均方差,成本均方差 和变异系数和变异系数主持人再次召开专家会,公布主持人再次召开专家会,公布 数值,数值, ,并对所公布之并对所公布之 数值进行讨论,研究各子系统成本数值进行讨论,研究各子系统成本估值的决策问题估值的决策问题主持人向各专主持人向各专家再次发出调家再次发出调查表,要求各查表,要求各专家按照修改专家按照修改准则准则进行填进行填写写23457进入下一次调进入下一次调查查依据决策准则依据决策准则来决来决定是否继续调查?定是否继续调查?6是是输出决策方案输出决策方案9否否18结结 束束00P1P ,1 ,1kiCkl iniCi,1iin,iiiC和1in,iiiC和12(,)nCC C
16、C1PP图图3.5 Delphi法求解流程法求解流程n在图3.4的框1中有关专家调查表的设计可见表3.6。 1 软件名称软件名称 2 系统性能、功能、结构需求及有关说明系统性能、功能、结构需求及有关说明 3 概要设计及有关说明概要设计及有关说明 4 调查表填写规范与有关说明调查表填写规范与有关说明 5 专家编号:专家编号: 6 填表日期:填表日期: 年年 月月 日日子系统子系统 简要理由简要理由成本参数成本参数(单位:万元)(单位:万元)1N2N3NnN1:ka2:ka3:ka:kna1:km2:km3:km:knm1:kb2:kb3:kb:knb表表3.6 Delphi法专家调查表法专家调查
17、表u 表专家组对各子系统成本调查的终止上界u 表专家组对各子系统成本调查的次数u 表专家k对i子系统成本的估计值u 表专家组对i子系统成本估值的平均值u 表专家组对i子系统成本估值的样本均方差值u 表专家组对i子系统成本估值的变异系数u 表专家k对子i系统成本估计的最乐观值(下界)u 表专家k对子i系统成本估计的最可能值(中间值)u 表专家k对子i系统成本估计的最悲观值(上界)00PkiCiCiikiakimkib表3.6与图3.4中有关符号之含义如下:u并有u 图3.4中框6中的决策准则I之有关内容如下: (1)对于专家组预先给定的 ,若在某次调查中有子系统 有 ,则可将对应的 作为专家组意
18、见,以后的调查将不再对 进行,若该次调查有 ,则继续进行下一次调查。nilkbmaCkikikiki1,1,64 2121)(11,1ilkkiilkkiiCClClC niCiii1,/ 0 jN0 jjCjN0 j(2)对于专家组预先设定的调查次数 ,若对所有的调查次数 子系统Nj均有 ,则可取各次调查 的平均值输出即有 ,此中 为第P次调查中专家组对Nj子系统成本的平均估值,图3.4中框7中的修改准则之有关内容如下:若专家k对子系统Nj之第P次成本估值有 ,则要求专家k在下一次调查中提高对Nj之成本估值,并有若专家k对子系统Nj之第P次成本估值有 ,则要求专家k在下一次调查中降低对Nj之
19、成本估值,并有0P01PP 0j( )jCP11( )oPjjPoCCPP( )jCP( )( )kjjCPCP( )(1)( )kkjjjCPCPCP( )( )kjjCPCP( )(1)( )kkjjjCPCPCP若专家k对子系统Nj之第P次成本估值有 ,则要求专家k在下一次调查中对Nj之成本估值保持不变,或按、 法则修改。n由于Delphi法是系统工程中的一种常用的综合评价方法,故上述Delphi法不仅对成本估值有效,而且也适用于对系统的规模、复杂性、性能、功能等的评价。( )( )kjjCPCP3.2.3 统计模型法统计模型法u运用统计模型法来作软件成本预测或估计的基本思想为首先寻找对
20、软件成本 y 的影响要素 ,一般来讲这些影响成本的要素有设备(硬件)、投入(购买)、人力资源投入、工作量、工期、系统功能与性能环境等等,然后从中选出一些主要影响要素及收集企业(机构)长期从事软件构建时这些要素的数据序列(可从IT企业信息库中获得)及对应的项目成本序列,在此基础上通过研究这些主要影响因素与成本的统计关联关系建立起统计模型,图3.5给出了统计模型的关联关系图,最后通过对这些主要统计模型来预测软件的成本。此中统计模型的建立常采用回归分析法。12,nx xxu统计模型通常有一元函数 与多元函数 两种,当然前者可看成后者当n=1时的特殊情况。以下我们以一元函数形式为例来介绍统计模型的建立
21、及其数学原理,对于多元函数形式的统计模型的建立是类似的。u在工程经济分析中,常见的具一元函数形式的统计模型有如下六类,其数学形式与对应几何图形见图3.612( ,)nyf x xx1x2x3xy图图3.5 统计模型的关联关系图统计模型的关联关系图( )yf x12( ,)nyf x xx (a) (b) (c) (d) (e) (f)yabxbyax1bayxbxyaelnyabx001axkkyabexxyxxxxyyyyy(a) (b) (c) (d) (e) (f) 图图3.6 常见一元统计模型几何图形常见一元统计模型几何图形u以下通过统计模型 为例来介绍该统计模型的建立过程及其数学原理
22、:此中 y 为软件成本,x 为影响成本的主要要素,如人力资源投入量,工作量,设备购买费用等。u对 两边同取对数,则有 ,令 ,则统计模型 相当于如下线性模型byaxbyaxlnlnlnyabxxXaAyYln,ln,lnbyaxbXAYu如果企业在过去曾参与或主持过类似的软件项目l个,并在信息库中记录并存贮了这l个软件项目对应的 与 数值,亦即数据序列( ), 已知,则由线性回归分析的知识知可由此求解线性模型的参数A与b,并有12111()()()11,ln,ln,lnnnlnnllnnnnnnnnXXYYbXXAYbXXXYYllXx Yynxny,nnxy1nl(3.7) u利用( 3.7
23、 )式的参数A与b的估计值,即可建立统计模型 (3.8)u根据回归分析的知识(3.8)式之统计模型能否作为合理、可靠的预测模型尚需经过统计检验,若记参数T有 , 其中 (3.9)u对于给定的参数 和置信度 ,若满足如下检验条件,则( 3.8 )式的统计模型通过统计检验,并可作为对 的预测模型若检验条件不满足,则或重新寻找拟合模型,或重新寻找影响因素。bAbyaxex21()lnnTXX2211()2lnnnYAbXl,T bnyu检验条件: (3.10)u检验条件算式中的 为自由度为m的T统计量, ,对于给定的 和 可由统计检验表中查出 的数值,从而可判断(3.10)式是 否成立。图3.7给出
24、了预测模型的求解流程u例3.2 美IBM公司的Walston & Felix对IBM联合系统分部(FSD)负责的60个软件工程项目的工作量与规模进行了统计,获得了数据序列 ,此中 表示第n个软件工件的工作量(单位:人月或PM), 表示第n个软件工程项目的规模(源代码千行数,记为KLOC)。 22(2)(2)bT tlbTtl 或( )tm1 2ml 1 2(2)tl(,),1,2,60nnxyn nynx寻找对寻找对 有影响的主要要素有影响的主要要素收集数据序列收集数据序列将数据序列将数据序列 在平面在平面xoy上描点,并将这些离散点连成上描点,并将这些离散点连成曲线,并根据此曲线的发展趋势从
25、曲线,并根据此曲线的发展趋势从(a)、(b)、(c)、(d)、(e)、(f)中选择一个作中选择一个作为拟合模型,设为为拟合模型,设为M1利用初等变换将拟合模型利用初等变换将拟合模型M1转化为形如转化为形如(6.18)式的线性模型式的线性模型M2利用利用(6.19)式求解线性模型式求解线性模型M2的参数的参数 与与 ,并将其,并将其代入代入(6.20)式,从而得到模型式,从而得到模型M对预测模型对预测模型M按照按照(6.21)式与式与(6.22)式进行统计检验式进行统计检验统计检验是否通过统计检验是否通过可将形如可将形如(6.20)式的模型作为对式的模型作为对yn的预测模的预测模型,并通过此预测
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 成本 工期 测算 方法 课件
限制150内