成本计划解析ppt课件

上传人:壹****1 文档编号:568598051 上传时间:2024-07-25 格式:PPT 页数:105 大小:1.75MB
返回 下载 相关 举报
成本计划解析ppt课件_第1页
第1页 / 共105页
成本计划解析ppt课件_第2页
第2页 / 共105页
成本计划解析ppt课件_第3页
第3页 / 共105页
成本计划解析ppt课件_第4页
第4页 / 共105页
成本计划解析ppt课件_第5页
第5页 / 共105页
点击查看更多>>
资源描述

《成本计划解析ppt课件》由会员分享,可在线阅读,更多相关《成本计划解析ppt课件(105页珍藏版)》请在金锄头文库上搜索。

1、chapter_30软件项目管理软件项目管理课时:课时:3232上机:上机:8 8实验:实验:FF107FF107 3/5/9/12 3/5/9/12上课时间上课时间chapter_31情景引入情景引入: :如何规划工作量如何规划工作量chapter_32软件项目管理软件项目管理第第 5 5 章章软件项目成本软件项目成本计划计划chapter_33本章要点本章要点q一、软件项目规模成本的概念q二、估算过程q三、估算方法q四、成本预算q五、案例分析chapter_34关于估算关于估算q估算不是很准确,有误差q经验(历史)数据非常重要q不要太迷信数学模型chapter_35软件项目规模软件项目规模

2、q软件项目规模即工作量,是从软件项目范围中抽出的软件功能,然后确定每个软件功能所必须执行的一系列软件工程任务q包括:软件规划,软件管理,需求,设计,编码,测试,以及后期的维护等任务。chapter_36规模的单位规模的单位qLOC(Loc of Code)q源代码程序长度的测量qFP(Function Point)q用系统的功能数量来测量q人月q人天q人年chapter_37软件项目成本软件项目成本q完成软件规模相应付出的代价。q待开发的软件项目需要的资金。 q人的劳动的消耗所需要的代价是软件产品的主要成本chapter_38成本的单位成本的单位q货币单位q人民币元q美元q.chapter_3

3、9软件的规模和成本的关系软件的规模和成本的关系q规模是成本的主要因素,是成本估算的基础q有了规模就确定了成本,chapter_310成本管理过程成本管理过程n成本估算成本估算n成本预算成本预算n成本控制成本控制chapter_311本章要点本章要点q一、软件项目规模成本的概念q二、估算过程q三、估算方法q四、成本预算q五、案例分析chapter_312成本估算过程成本估算过程估算输入估算结果成本估算方法chapter_313成本估算输入成本估算输入q项目需求、 WBSq历史项目度量q资源要求(资源编制计划)q资源消耗率:如人员成本: 100元/小时q进度规划:项目总进度(一般是合同要求)q学习

4、曲线chapter_314成本估算结果成本估算结果q直接成本q间接成本chapter_315直接成本直接成本q与具体项目相关的成本chapter_316间接成本间接成本q不能具体到某个项目中的成本,q可以分摊到各个具体项目中的成本,例如:q培训q房租水电q员工福利q市场费用q管理费q其他等等chapter_317本章要点本章要点q一、软件项目规模成本的概念q二、估算过程q三、估算方法q四、成本预算q五、案例分析chapter_318估算的基本方法估算的基本方法1.代码行、功能点2.类比 (自顶向下)估算法3.自下而上估算法4.参数估算法5.专家估算法chapter_319代码行(代码行(LOC

5、LOC)从软件程序量的角度定义项目规模。q与具体的编程语言有关q要求功能分解足够详细的q有一定的经验数据(类比和经验方法)chapter_320代码行技术的主要优点n代码是所有软件开发项目都有的代码是所有软件开发项目都有的“产品产品”,而,而且很容易计算代码行数。且很容易计算代码行数。chapter_321代码行(代码行(LOCLOC)缺点缺点1.对代码行没有公认的可接受的标准定义2.代码行数量依赖于所用的编程语言和个人的编程风格.3.在项目早期,需求不稳定、设计不成熟、实现不确定的情况下很难准确地估算代码量.4.代码行强调编码的工作量,只是项目实现阶段的一部分chapter_322功能点(功

6、能点(FP: Function pointFP: Function point)q与实现产品所使用的语言和技术没有关系的q用系统的功能数量来测量其规模q两个评估q内部基本功能q外部基本功能q加权和量化 chapter_323功能点的公式功能点的公式qFP =UFC*TCFqUFC:未调整功能点计数qTCF:技术复杂度因子chapter_324UFC-UFC-未调整功能点计数未调整功能点计数功能计数项:1.外部输入2.外部输出3.外部查询4.外部文件5.内部文件chapter_325外部输入外部输入( (External Inputs: EI) 给软件提供面向应用的数据的项(如屏幕、表单、对话框

7、、控件,文件等);在这个过程中,数据穿越外部边界进入到系统内部。chapter_326外部输出外部输出(External Outputs EO) 向用户提供面向应用的信息,例如,报表和出错信息等。chapter_327外部查询外部查询(External Inquiry EQ) 外部查询即是一次联机输入,它导致软件以联机输出方式产生某种即时响应。chapter_328外部接口文件(外部接口文件(External Interface Files EIFs) n外部接口文件是用户可以识别的一组逻辑相关数据,这组数据只能被引用。是机器可读的全部接口(例如,磁盘或磁带上的数据文件)的数量,用这些接口把信

8、息传送给另一个系统。chapter_329内部逻辑文件内部逻辑文件(Internal Logical Files: ILFS) 用户可以识别的一组逻辑相关的数据,而且完全存在于应用的边界之内,并且通过外部输入维护,是逻辑主文件的数目。chapter_330FP估算方法举例估算方法举例chapter_331UFC-UFC-未调整功能点计数未调整功能点计数功能计数项的复杂度等级复杂度权重因素项简单(低)一般(中)复杂(高)外部输入346外部输出457外部查询346外部文件5710内部文件71015chapter_332功能点计算实例功能点计算实例-UFC-UFC功能点项简单一般复杂外部输入6*32

9、*43*6外部输出7*47*50*7外部查询0*32*44*6外部文件5*52*73*10内部文件9*70*102*15总计UFC301根据某项目的需求评估:外部输入:11项;外部输出:14项;外部查询:6项;外部文件:10项;内部文件:11项chapter_333TCF-TCF-技术复杂度因子技术复杂度因子TCF=0.65+0.01(sum(Fi)TCF=0.65+0.01(sum(Fi): Fi:0-5,TCF:0.65-1.35Fi:0-5,TCF:0.65-1.35技术复杂度因子F1可靠的备份和恢复F2数据通信F3分布式函数F4性能F5大量使用的配置F6联机数据输入F7操作简单性F8在

10、线升级F9复杂界面F10复杂数据处理F11重复使用性F12安装简易性F13多重站点F14易于修改chapter_334技术复杂度因子的取值范围技术复杂度因子的取值范围调整系数调整系数描述描述0不存在或者没有影响1不显著的影响2相当的影响3平均的影响4显著的影响5强大的影响chapter_335功能点计算实例功能点计算实例qFP=UFC*TCFqUFC=301qTCF=0.65+0.01(14*3)=1.07qFP=301*1.07=322chapter_336功能点与代码行的转换功能点与代码行的转换语言代码行代码行/FPAssembly320C150COBOL105FORTRAN105PASC

11、AL91ADA71PL/165PROLOG/LISP64SMALLTALK21SPREADSHEET6chapter_337估算的基本方法估算的基本方法q代码行、功能点q类比 (自顶向下)估算法q自下而上估算法q参数估算法q专家估算法chapter_338类比类比- -定义定义q估算人员根据以往的完成类似项目所消耗的总成本(或工作量),来推算将要开发的软件的总成本(或工作量),然后按比例将它分配到各个开发任务单元中q是一种自上而下的估算形式chapter_339类比类比使用情况使用情况q有类似的历史项目数据q信息不足(要求不是非常精确)的时候q市场招标和合同期chapter_340类比类比特点

12、特点q简单易行,花费少q具有一定的局限性q准确性差,可能导致项目出现困难chapter_341类比类比理论举例理论举例chapter_342类比类比主观判断举例主观判断举例q证券交易网站q需求类似q历史数据:10万q类比估算:10万chapter_343估算的基本方法估算的基本方法q代码行、功能点q类比 (自顶向下)估算法q自下而上估算法q参数估算法q专家估算法chapter_344自下而上自下而上-定义定义q利用任务分解结构图,对各个具体工作包进行详细的成本估算,然后将结果累加起来得出项目总成本。“变化计数器”系统文件比较预处理增加代码结果处理统计总行标记修改记录修改版本比较找出增删行统计增

13、删行删除代码增加行数删除行数估算结果chapter_345自下而上自下而上-使用情况使用情况q项目详细规划,WBS开发阶段q需要进行准确估算的时候chapter_346自下而上自下而上-特点特点q相对比较准确,它的准确度来源于每个任务的估算情况q非常费时,估算本身也需要成本支持chapter_347自下而上自下而上-举例举例chapter_348估算的基本方法估算的基本方法q代码行、功能点q类比 (自顶向下)估算法q自下而上估算法q参数估算法q专家估算法chapter_349参数估算法参数估算法定义定义q通过过去项目数据,进行回归分析,得出的回归模型q使用项目特性参数建立数据模型来估算(规模)

14、成本的方法,是一种统计技术。chapter_350参数估算法参数估算法使用情况使用情况q具有良好的项目数据为基础q存在成熟的项目估算模型chapter_351参数估算法特点参数估算法特点q比较简单,而且也比较准确q如果模型选择不当或者数据不准,也会导致偏差chapter_352参数模型参数模型: :规模规模( (成本成本) )模型模型q整体公式:E=a+b*SCqE:以人月表示的工作量qa,b,c:经验导出的系数qS:主要的输入参数(通常是LOC,FP等)chapter_353参数模型参数模型: :规模规模( (成本成本) )模型模型( (续续) )面向LOC驱动的qWalston-Felix

15、(IBM)qE= 5.2*(KLOC)0.91qBalley-BasiliqE=5.5+0.73*(KLOC)1.16q.COCOMOqE=3.2*(KLOC)1.05qDotyqE=5.288*(KLOC)1.047chapter_354参数模型参数模型: :规模规模( (成本成本) )模型模型( (续续) )面向FP驱动的qAlbrecht and GaffneyqE=-12.39+0.0545FPqMatson,BarnettqE=585.7+15.12FPchapter_355建议掌握模型建议掌握模型q模型(Walston-Felix)qCOCOMO模型(Boehm)chapter_3

16、56模型模型1977年,年,IBM的的Walston和和Felix提出了如下的估算公提出了如下的估算公式式E5.2L0.91,L是源代码行数(以KLOC计),E是工作量(以PM计)D4.1L0.36,D是项目持续时间(以月计)S0.54E0.6,S是人员需要量(以人计)DOC49L1.01。DOC是文档数量(以页计)chapter_357举例举例采用java完成项目,366功能点,则L=36646=16386行=16.386KLOCE5.2L0.915.216.3860.9166人月DOC49L1.014916.3861.01826页chapter_358COCOMOCOCOMO(Constr

17、uctive Cost Constructive Cost modelmodel)结构化成本模型是世界上应用最广泛的参数型软件成本估计模型由Barry Boehm开发的chapter_359COCOMOCOCOMO模型发展模型发展COCOMO81COCOMOII模型系列chapter_360COCOMO基本原理基本原理将开发所需要的工作量表示为软件规模和将开发所需要的工作量表示为软件规模和一系列成本因子的函数一系列成本因子的函数,基本估算公式基本估算公式:A:可以校准的常量可以校准的常量; S为软件规模为软件规模; E为规模的指为规模的指数数,说明不同规模软件具有的相对规模经济和不说明不同规模

18、软件具有的相对规模经济和不经济性经济性;EM为工作量乘数为工作量乘数,反映某个项目特征对反映某个项目特征对完成项目开发所需工作量的影响程度完成项目开发所需工作量的影响程度;n为描述为描述软件项目特征的成本驱动因子的个数软件项目特征的成本驱动因子的个数chapter_361COCOMO 81项目类型:项目类型:有机:Organic嵌入式:Embedded半有机:Semidetached模型类别:模型类别:q基本COCOMOq中等COCOMOq高级COCOMOchapter_362COCOMO 81模型类别模型类别q基本COCOMOq静态单变量模型q中等COCOMOq基本模型基础上考虑影响因素,调

19、整模型q高级COCOMOq中等COCOMO模型基础上考虑各个步骤的影响chapter_363COCOMO 81项目类型项目类型有机:Organic,各类应用程序,例如数据处理、科学计算等受硬件的约束比较小,程序的规模不是很大嵌入式:Embedded系统程序,例如实时处理、控制程序等紧密联系的硬件、软件和操作的限制条件下运行,软件规模任意半有机:Semidetached各类实用程序,介于上述两种软件之间,例如编译器(程序) 规模和复杂度都属于中等或者更高chapter_364基本基本COCOMO-81COCOMO-81qE= aX(KLOC)bq其中: qE是所需的人力(人月) qKLOC是交付

20、的代码行qa , b是依赖于项目自然属性的参数chapter_365基本基本COCOMO-81COCOMO-81系数表系数表方式ab有机2.41.05半有机3.01.12嵌入式3.61.2chapter_366举例举例一个33.3KLOC的软件开发项目,属于中等规模、半有机型的项目,采用基本COCOMO:oa=3.0,b=1.12。oE=3.0L1.12=3.033.31.12=152PMchapter_367中等中等COCOMO-81COCOMO-81E= a*(KLOC)b*乘法因子qa b是系数q乘法因子是根据成本驱动属性打分的结果,对公式的校正系数 chapter_368中等中等COC

21、OMO-81COCOMO-81系数表系数表方式ab有机2.81.05半有机3.01.12嵌入式3.21.2chapter_369乘法因子属性乘法因子属性1.产品属性2.平台属性3.人员属性4.过程属性chapter_370乘法因子乘法因子chapter_371乘法因子计算乘法因子计算每个属性Fi的取值范围为:很低、低、正常、高、很高、极高,共六级。正常情况下Fi=1。当每个Fi的值选定后,乘法因子的计算如下乘法因子F1*F2*Fi*Fnchapter_372举例(续)举例(续)一个33.3KLOC的软件开发项目,属于中等规模、半有机型的项目,采用中等COCOMO模型a=3.0,b=1.12。乘

22、法因子0.70*0.85*1*1.15=1.09E=3.0L1.12乘法因子=3.033.31.12PMchapter_373高级(高级(详细详细)COCOMOCOCOMOq将项目分解为一系列的子系统或者子模型 q在一组子模型的基础上更加精确地调整一个模型的属性, chapter_374高级(高级(详细详细)COCOMOCOCOMOchapter_375COCOMO IIn应用组装模型应用组装模型-规划阶段规划阶段n早期设计模型早期设计模型-体系结构设计阶段体系结构设计阶段n后体系结构模型后体系结构模型-开发阶段开发阶段chapter_376COCOMO II-后体系结构模型A,可以校准,目前

23、设定A=2.94B,可以校准,目前设定B=0.91chapter_377估算的基本方法估算的基本方法q代码行、功能点q类比 (自顶向下)估算法q自下而上估算法q参数估算法q专家估算法chapter_378专家估算法专家估算法q由多位专家进行成本估算,一个专家可能会有偏见,最好由多位专家进行估算,取得多个估算值,最后得出综合的估算值。chapter_379专家估算法专家估算法-Delphi-Delphiq组织者发给每位专家一份软件系统的规格说明和一张记录估算值的表格,请他们估算q专家详细研究软件规格说明后,对该软件给出3个规模的估算值q最小aiq最可能的miq最大biq组织者对专家的表格中的答复

24、进行整理q计算每位专家的Ei=(ai+4mi+bi)/6,chapter_380专家估算法专家估算法-Delphi(-Delphi(续续) )q综合结果后:E=E1+E2+En/n(N:表示N 个专家)q再组织专家无记名填表格,比较估算差,并查找原因q如果各个专家的估算差异超出规定的范围(例如:15%),则需重复上述过程 ,最终可以获得一个多数专家共识的软件规模chapter_381DelphiDelphi专家估算法专家估算法- -举例举例q某多媒体信息查询系统专家估算q专家1:1,8,9=(1+9+4 * 8 )/6=7(万元)q专家2: 4, 6 , 8 =(4+8+4*6)/6=6 (万

25、元)q估算结果=(6+7)/2=6.5 (万元)chapter_382估算方法总结估算方法总结q初期q类比(主要方法)q专家估算q计划阶段q自下而上q参数模型q实施阶段(包括变更发生)q自下而上q参数模型chapter_383成本估算方法综述成本估算方法综述主要考虑三种模型:类比法,自下而上法,参数法. 各种方法不是孤立的各种方法不是孤立的, ,应该注意相互的结合使用应该注意相互的结合使用q自下而上法费时费力,参数法比较简单q自下向上法与参数法的估计精度相似q类比法通常用来验证参数法和自下而上法的结果chapter_384实用软件估算模型实用软件估算模型是一种自下而上和参数法的结合模型,步骤如

26、下:1.对任务进行分解:1,2,i2.估算每个任务的成本Ei3.直接成本=E1+E2+ Ei+ En4.4.间接成本估算间接成本估算5.5.项目总估算成本项目总估算成本= 直接成本+间接成本6.6.项目总报价项目总报价chapter_385估算每个任务的成本估算每个任务的成本q直接估算成本Eiq先估算规模Qi,然后估算成本Ei= Qi *人力成本参数退出退出chapter_386直接成本估算直接成本估算q直接成本组成q开发成本q管理成本q质量成本q例如:人力成本参数=5万/人月,30人月(包括开发管理质量)规模的项目的直接成本是 150万chapter_387直接成本估算简易估算直接成本估算简

27、易估算:开发(工作量)规模:Scale(Dev) (单位:人月)管理、质量(工作量)规模:Scale(Mgn)=a* Scale(Dev)a为比例系数:例如:20%-25%直接成本 Scale(Dev) a* Scale(Dev) 退出退出chapter_388间接成本间接成本估算成本=直接成本+间接成本间接成本估算:1.按照企业模型直接估算:2.简易算法: 间接成本=直接成本*间接成本系数 间接成本= 规模*人力成本参数*间接成本系数 例如:间接成本系数=0.3退出退出chapter_389项目总估算成本项目总估算成本q估算成本=直接成本+间接成本q估算成本=直接成本+直接成本*间接成本系数

28、q估算成本=直接成本(1+间接成本系数)q估算成本=规模*人力成本参数(1+间接成本系数)q成本系数=人力成本参数* (1+间接成本系数)q简易算法:q估算成本=规模*成本系数q例如:成本系数= 8万/人月退出退出chapter_390项目总报价项目总报价1.1.项目总报价项目总报价= =项目总估算成本项目总估算成本+ +风险利润风险利润1.项目利润=估算成本*a%2.风险基金=估算成本*b%3.税=估算成本*c% (例如:c为5.5左右)2.2.项目总报价项目总报价=(a+b+c) %*项目总估算成本项目总估算成本+ +项目总项目总估算成本估算成本3.3.项目总报价项目总报价=(1+=(1+

29、(a+b+c) %) ) *项目总估算成本项目总估算成本chapter_391总估算成本(总估算成本(BACBAC)费用BAC时间chapter_392本章要点本章要点q一、软件项目规模成本的概念q二、估算过程q三、估算方法q四、成本预算q五、案例分析chapter_393成本预算成本预算成本预算是将项目的总成本按照项目的进度分摊到各个工作单元中去。成本预算将总的成本安排到各个任务中成本预算的目的是产生成本基线chapter_394项目成本预算分配项目成本预算包括三种情况:分配项目成本预算包括三种情况:1.分配资源成本2.给任务分配固定资源成本3.给任务分配固定成本chapter_395分配资

30、源成本分配资源成本q资源成本与资源的基本费率紧密相连q设置资源费率q标准费率q加班费率q每次使用费率q。chapter_396分配固定资源成本分配固定资源成本q当一个项目的资源需要固定数量的资金时,用户可以向任务分配固定资源成本。q例如:需要的硬件设备 chapter_397分配固定成本分配固定成本q有些任务是固定成本的类型的任务,也就是说,管理者知道某项任务的成本不变,不管任务的工期有多长,或不管任务使用了那些资源。在这种情况下,管理者向任务直接分配成本。q例如:培训任务 chapter_398成本基线成本基线chapter_399估算准确度估算准确度类型准确度说明量级估算:合同前Order

31、ofmagnitude-25+75%概念和启动阶段决策预算估算:合同期Budget-10+25%编制初步计划确定性估算:WBS后Definitive-5+10%工作分解后的详细计划chapter_3100估算不准的原因估算不准的原因q基础数据不足q缺乏经验的估算人员q人为因素,例如签约前后不连贯q估算对需求的敏感性q。chapter_3101避免低劣估算避免低劣估算1.避免无准备的估算2.留出估算的时间,并做好计划3.使用以前的项目数据4.使用开发人员提供的数据为基础估算5.分类法估算6.详细的较低层次上的估算7.使用软件估算工具8.使用几种不同估算技术,并比较它们的结果chapter_3102本章要点本章要点q一、软件项目规模成本的概念q二、估算过程q三、估算方法q四、成本预算q五、案例分析chapter_3103案例分析案例分析“校务通系统”项目成本估算q项目估算结果chapter_3104小结小结q成本估算的过程q成本估算的方法q成本预算的方法

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号