第四章-软件项目成本管理-_第1页
第四章-软件项目成本管理-_第2页
第四章-软件项目成本管理-_第3页
第四章-软件项目成本管理-_第4页
第四章-软件项目成本管理-_第5页
已阅读5页,还剩70页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

软件项目管理第四章软件项目成本管理本章内容提要软件项目规模成本的概念成本估算成本预算成本控制第一节软件项目规模成本的概念软件项目规模度量单位:LOC(LinesofCode):源代码程序长度的测量FP(FunctionPoint):系统功能数量的测量软件项目工作量是指为了提供软件的功能而必须完成的软件工程任务量。其度量单位为:人月、人天、人年:人在单位时间内完成的任务量为了确定工作量度量单位,可设定一个“标准程序员”,例如具有15~18个月开发经验的程序员。工作量与规模紧密相关,此外还与项目和产品特性(如复杂性)相关。在不会引起混淆的情况下,工作量和规模这两个概念可不做区别。软件项目成本完成软件项目工作量相应付出的代价,即待开发软件项目所需要的资金。人的劳动消耗所需要的代价是软件产品的主要成本。成本一般采用货币单位来计算,如人民币、美元等。工作量和成本的关系工作量是成本的主要考虑因素,项目的工作量估算和成本估算常常同时进行。如果确定了单位工作量的成本,则可根据项目工作量直接计算出项目成本。例如:如果一个软件项目的工作量是20人月,而企业的人力成本参数是2万元/人月,则项目的成本是40万元。本章内容提要软件项目规模成本的概念成本估算成本预算成本控制引言成本估算方法一种实用的项目成本估算过程第二节成本估算2.1引言成本估算是对完成项目所需费用的估计,它是项目成本管理的核心。成本估算可以有一些误差。估算结果可用一个范围表示,例如$10000±$1000。成本估算所依据的信息包括:项目需求和WBS,资源要求、资源消耗率(资源单价)、项目进度规划、历史项目数据等。项目成本的构成直接成本:与具体项目的开发直接相关的成本。如人员的工资、外包外购成本等。又可细分为开发成本、管理成本、质量成本等。间接成本:不归属于一个具体的项目,是企业的运营成本,分摊到各个项目中。如房租、水电、保安、税收、福利、培训,等等。2.2成成本估估算方法法代码行、、功能点点类比估算算法参数估算算法专家估算算法代码行((LOC)从软件程程序量的的角度定定义项目目规模。。要求功能能分解足足够详细细。有一定的的经验数数据(类类比和经经验方法法)。与具体的的编程语语言有关关。优点:直观、准准确(在在有代码码的情况况下)、、易于计计算(可可使用代代码行统统计工具具)。缺点:对代码行行度量没没有公认认的标准准定义。。代码行数数量依赖赖于所用用的编程程语言和和个人的的编程风风格。在项目早早期,需需求不稳稳定、设设计不成成熟、实实现不确确定的情情况下很很难准确确地估算算代码量量。代码行((LOC)功能点((FP))用系统的的功能数数量来测测量其规规模,与与实现产产品所使使用的语语言和技技术没有有关系。。对系统的的外部功功能和内内部功能能进行计计数。根据技术术复杂度度因子((权)对对它们进进行调整整,产生生产品规规模的度度量结果果。功能点计计算公式式FP=UFC*TCFUFC(UnadjustedFunctionPointCount)未调整功功能点计计数TCF(TechnicalComplexityFactor)技术复杂杂度因子子UFC的的计算方方法首先计算算功能计数数项,对以下下五类元元素计数数:外部输入入:由用用户输入入的面向向应用的的数据项项。外部输出出:向用用户提供供的输出出数据项项。外部查询询:要求求系统回回答的交交互式输输入。外部接口口文件::与其它它系统的的接口数数据文件件。内部文件件:系统统使用的的内部固固定文件件。UFC的的计算方方法然后对各各功能计计数项加加权并求求和,得得到UFC。功能计数项复杂度权重简单中等复杂外部输入346外部输出457外部查询346外部接口文件5710内部文件71015案例分析析某学院安安装了一一个工资资系统,,人事处处要求创创建一个个子系统统来分析析每门课课程的人人力资源源成本。。要求该该子系统统提供查查询每门门课程人人力资源源成本的的功能。。每名教教师所得得工资的细节可可以通过过工资系系统中的的文件得得到,教教师花在在教每门门课上的的小时数数可通过过一个基基于计算算机的计时表系统中的的文件得得到。该该子系统统将计算结果果存放到由由总会计计系统读读取的一一个文件件中,并并产生一一个报告告,来显显示每名名教师每每门课的的课时数数及这些些课时数数相应的的成本。。案例分析析问题:计算该该子系统统的UFC。((子系统统产生的的报告复复杂度为为高,其其它所有有元素的的复杂度度均为中中等)案例分析析答案:UFC=1*7+1*4+3*7=32功能计数项计数复杂度权重外部输入无外部输出报告17外部查询14外部接口文件工资文件1,计时表文件1,计算结果文件17内部文件无TCF的的计算方方法技术复杂度影响因素F1可靠的备份和恢复F2数据通信F3分布式函数F4性能F5大量使用的配置F6联机数据输入F7操作简单性F8在线升级F9复杂界面F10复杂数据处理F11重复使用性F12安装简易性F13多重站点F14易于修改TCF=0.65+0.01(sum(Fi)):Fi:0-5,TCF:0.65~1.35TCF的的计算方方法每个技术术复杂度度影响因因素的取取值范围围:取值对系统的影响0不存在或者没有影响1不显著的影响2相当的影响3平均的影响4显著的影响5强大的影响案例分析析案例中技术复杂度影响因素的取值F1可靠的备份和恢复1F2数据通信5F3分布式函数0F4性能3F5大量使用的配置1F6联机数据输入0F7操作简单性1F8在线升级0F9复杂界面1F10复杂数据处理4F11重复使用性0F12安装简易性3F13多重站点0F14易于修改3sum(Fi)=22TCF=0.65+0.01(sum(Fi))=0.65+0.01*22=0.87该子系统统的功能能点为::FP=UFC*TCF=32*0.87=27.8案例分析析功能点与与代码行行的转换换语言代码行/FPAssembly320C150COBOL105FORTRAN105PASCAL91ADA71PL/165PROLOG/LISP64SMALLTALK21SPREADSHEET6成本估算算方法代码行、、功能点点类比估算算法参数估算算法专家估算算法类比估算算法也称为基基于案例例的推理理,估算算人员根根据以往往完成的的类似项项目(源源案例))所消耗耗的总成成本(或或工作量量),来来推算将将要开发发的软件件(目标标案例))的总成成本(或或工作量量)。需提取项项目的一一些特性性作为比比较因子子,如项项目类型型(MIS系统统、实时时系统等等)、编编程语言言、项目目规模、、开发人人员数量量、软件件开发方方法等。。在项目初初期信息息不足时时(例如如市场招招标和合合同签订订)适于于采用类类比估算算法。该方法简简单易行行,花费费少,但但准确性性差。类比估算算法成本估算算方法代码行、、功能点点类比估算算法参数估算算法专家估算算法参数估算算法使用项目目特性参参数建立立经验估估算模型型来估算算成本。。经验估算算模型是是通过对对大量的的项目历历史数据据进行统统计分析析(如回回归分析析)而导导出的。。经验估算算模型提提供对项项目工作作量的直直接估计计。该方法简简单,而而且比较较准确,,但如果果模型选选择不当当或提供供的参数数不准确确,也会会产生较较大的偏偏差。经验估算算模型模型形式式:E=A+B*SCE:以人人月表示示的工作作量A,B,C:经经验导出出的系数数S:主要要的输入入参数(通常是是LOC,FP等)面向LOC的::Walston-Felix(IBM)模模型E=5.2*(KLOC)^0.91Balley-Basili模型E=5.5+0.73*(KLOC)^1.16Boehm简单单模型E=3.2*(KLOC)^1.05Doty模模型E=5.288*(KLOC)^1.047经验估算模模型面向FP的的:AlbrechtandGaffney模模型E=-13.39+0.0545FPMatson,BarnettE=585.7+15.12FP经验估算模模型Walston-Felix(IBM)模型1977年年,IBM的Walston和Felix提出出了如下的的估算公式式:E=5.2×L^0.91,,L是源代代码行数(以KLOC计),,E是工作作量(以PM计)D=4.1×L^0.36,,D是项目目持续时间间(以月计计)S=0.54××E^0.6,,S是人员员需要量(以人计)DOC==49××L^1.01。DOC是文档数数量(以页页计)COCOMO(ConstructiveCostmodel)构造性成本本模型,是是世界上应应用最广泛泛的参数型型软件成本本估计模型型。由BarryBoehm利利用加利福福尼亚的一一个咨询公公司的大量量项目数据据推导出的的一个成本本模型。该该模型于1981年年首次发表表,于1994年又又推出了COCOMOII。模型类别基本COCOMO静态单变量量模型。中等COCOMO在基本模型型基础上考考虑各种影影响因素((工作量驱驱动因子)),调整模模型。高级COCOMO中等COCOMO模模型基础上上考虑软件件工程中各各个步骤的的影响。基本COCOMOE=a*(KLOC)exp(b)E是项目的的工作量((以人月计计)KLOC是是软件产品品的代码行行数a、b是依依赖于项目目自然属性性的参数基本COCOMO系系数表系统类型ab有机2.41.05半相连3.01.12嵌入式3.61.20系统类型有机(Organic)各类应用程程序,例如如数据处理理、科学计计算等。受硬件的约约束比较小小,接口环环境灵活;;软件的规规模不是很很大。嵌入式(Embeded)系统程序,,例如实时时处理、控控制程序等等。在硬件和软软件的严格格约束条件件下运行,,对系统进进行变更的的代价很高高;软件的的规模任意意。半相连(Semidetached)介于上述两两种系统之之间。基本COCOMO举举例一个33.3KLOC的软软件开发项项目,属于于半相连型型的项目,,采用基本本COCOMO进行行工作量的的估算:a=3.0,b=1.12E=3.0*L^1.12=3.0*33.3^1.12=152PM中等COCOMOE=a(KLOC)exp(b)*工作量系数数工作量系数数是根据成成本驱动因因子的打分分计算得出出,是对公公式的校正正系数。中等COCOMO系系数表系统类型ab有机3.21.05半相连3.01.12嵌入式2.81.20成本驱动因因子驱动因子类型编码成本驱动因子产品属性RELY需要的软件可靠性DATA数据库规模CPLX产品复杂度计算机属性TIME执行时间限制STOR主存限制VIRT操作系统变更的程度TURN计算机恢复时间要求成本驱动因因子(续))驱动因子类型编码成本驱动因子人员属性ACAP分析员能力AEXP应用经验PCAP程序员能力VEXP虚拟机(如操作系统)经验LEXP编程语言经验项目属性MODP现代编程实践的使用TOOL软件工具的使用SCED需要的开发进度工作量系数数的计算规定每个成成本驱动因因子的取值值范围,将将其取值划划分为非常常低、低、、正常、高高、非常高高等级别,,每个级别别对应一个个值。例如如,软件组组织可以决决定使用以以下系数来来评估分析析员能力(ACAP)的影响响:非常低(verylow))1.46低(low)1.19正常(nominal)1.00高(hign)0.80非常高(veryhign)0.71当每个成本本驱动因子子Fi的值值选定后,,工作量系系数的计算算如下:工作量系数数=F1*F2*…Fi…*Fn典型取值0.9-1.4之间间工作量系数数的计算中等COCOMO举举例一个33.3KLOC的软软件开发项项目,属于于半相连型型的项目,,采用中等等COCOMO进行行工作量的的估算:a=3.0,b=1.12工作量系数数=0.70*0.85*1……*1.15=1.09E=3.0**33.3^1.12××1.09=166PM高级(详细细)COCOMO考虑了各成成本驱动因因子对分析析、设计等等各项目阶阶段的影响响。成本估算方方法代码行、功功能点类比估算法法参数估算法法专家估算法法专家估算法法由多位对应应用领域和和开发环境境有丰富经经验的专家家进行成本本估算。为避免单个个专家产生生偏见,尽尽量由多位位专家进行行估算,取取得多个估估算值,最最后得出综综合的估算算值。专家估算法法-Delphi组织者发给给每位专家家一份软件件系统的规规格说明和和一张记录录估算值的的表格,请请他们估算算。专家详细研研究软件规规格说明后后,对该软软件提出3个工作量量(或成本本)的估算算值:最小值ai最可能值mi最大值bi组织者对专专家的表格格中的答复复进行整理理,计算每每位专家的的平均估算算值Ei=(ai+4mi+bi)/6和总总的平均值值E=(E1+E2+…+En)/n(n表示n个专家)。组织专家无无记名填表表格,比较较估算差,,并查找原原因。如果各个专专家的估算算差异超出出规定的范范围(例如如:15%),则需需重复上述述过程,,最终可以以获得一个个多数专家家共识的软软件工作量量(或成本本)估计值值。专家估算法法-Delphi专家估算法法举例某管理信息息系统-专专家估算专家1:1,8,9((1+9+4*8)/6=7((万元)专家2:4,6,8((4+8+4*6)/6=6(万万元)估算结果=(6+7)/2=6.5((万元)在项目初期期(特别是是合同阶段段),项目目的需求不不很明确,,且需要尽尽快得出成成本估算结结果,此时时可采用类类比估算法法或专家估估算法。需求确定之之后,开始始规划项目目时,可采采用参数估估算法。在项目的实实施阶段,,特别是在在发生变更更时,需重重新估算项项目的成本本,这时可可采用参数数估算法和和专家估算算法。成本估算方方法总结2.3一一种种实实用用的的软软件件成成本本估估算算过过程程该过过程程步步骤骤如如下下::1.对对项项目目进进行行任任务务分分解解:1,2,……,i,……,n2.估算算每每个个任任务务的的成成本本Ci3.项目目的的直直接接成成本本=C1+C2+…………+Ci+…………+Cn4.项目目总总估估算算成成本本=直直接接成成本本+间间接接成成本本5.项目目总总报报价价=项项目目总总估估算算成成本本+风风险险利利润润估算算每每个个任任务务的的成成本本先估估计计任任务务的的工工作作量量Ei(一一般般以以人人月月为为单单位位))。。然后后估估算算任任务务成成本本Ci=Ei*人力力成成本本参参数数。。直接接成成本本估估算算直接接成成本本的的构构成成::开开发发成成本本、、管管理理成成本本、、质质量量成成本本管理理和和质质量量成成本本的的简简易易估估算算法法::开发发工工作作量量::Effort(Dev)管理理和和质质量量工工作作量量::Effort(Mgn)=a*Effort(Dev)a为为比比例例系系数数,,可可根根据据企企业业的的具具体体情情况况而而定定,,例例如如20%--25%。。直接接成成本本=Effort(Dev)+a*Effort(Dev)间接接成成本本估估算算根据据企企业业具具体体的的成成本本模模型型进进行行计计算算。。简易易估估算算方方法法::间接接成成本本=直直接接成成本本*间间接接成成本本系系数数间接接成成本本系系数数根根据据企企业业的的具具体体情情况况而而定定,,例例如如取取0.3。。项目目总总估估算算成成本本总估估算算成成本本=直直接接成成本本+间间接接成成本本=直直接接成成本本+直直接接成成本本*间间接接成成本本系系数数=直直接接成成本本(1+间间接接成成本本系系数数)=工工作作量量*人人力力成成本本参参数数((1+间间接接成成本本系系数数))成本本系系数数=人人力力成成本本参参数数*(1+间间接接成成本本系系数数))总估估算算成成本本=工工作作量量*成成本本系系数数例如如::某某项项目目的的工工作作量量是是40人人月月,,成成本本系系数数为为2万万元元/人人月月,,则则项项目目的的总总估估算算成成本本为为40*2=80万万元元。。项目目总总报报价价风险险利利润润包包括括风风险险基基金金、、项项目目税税费费和和税税后后利利润润等等。。风险险利利润润=项项目目总总估估算算成成本本*a%a是是利利润润系系数数,,根根据据企企业业、、项项目目的的不不同同而而不不同同。。项目目总总报报价价=项项目目总总估估算算成成本本+项目目总总估估算算成成本本*a%=项项目目总总估估算算成成本本((1+a%))2.4成成本本估估算算的的准准确确度度类型准确度说明量级估算:合同前Orderofmagnitude-25~~+75%概念和启动阶段,决策预算估算:合同期Budget-10~~+25%编制初步计划确定性估算:WBS后Definitive-5~~+10%工作分解后的详细计划估算算不不准准确确的的原原因因基础础数数据据不不足足估算算对对需需求求的的敏敏感感性性软件件项项目目存存在在许许多多变变更更和和不不确确定定因因素素缺乏乏有有经经验验的的估估算算人人员员签约约前前后后的的不不连连贯贯避免免低低劣劣的的估估算算留出出估估算算的的时时间间,,并并做做好好计计划划注意意积积累累项项目目数数据据,,以以开开发发人人员员提提供供的的经经验验数数据据为为基基础础进进行行估估算算分类类法法估估算算进行行详详细细的的较较低低层层次次上上的的估估算算使用用估估算算工工具具使用用几几种种不不同同估估算算技技术术,,并并比比较较它它们们的的结结果果估算算的的表表达达方方式式加减减限限定定表表示示6个个人人月月的的工工作作量量可可表表示示为为6+3、、6-1人人月月。。范围围表表示示6个个人人月月的的工工作作量量可可表表示示为为5~9人人月月。。估算算的的表表达达方方式式风险险量量化化估算:6个人月,+3,-2+1人月:延迟交付转换子系统-1人月:新成员的工作效率高+1人月:采用的新工具没有预计的好-1人月:采用的新工具比预计的好+0.5人月:员工病事假+0.5人月:低估规模本章章内内容容提提要要软件件项项目目规规模模成成本本的的概概念念成本本估估算算成本本预预算算成本本控控制制第三三节节成成本本预预算算成本本预预算算是是将将项项目目总总估估算算成成本本分分摊摊到到各各个个工工作作单单元元中中去去,,主主要要包包括括三三个个步步骤骤::将项目的总总估算成本本分摊到各各项活动。。根据项目目的成本估估算确定项项目的总预预算成本后后,将总预预算成本按按照项目工工作分解结结构(WBS)和每每一项活动动的工作范范围,以一一定比例分分摊到各项项活动中,,为每项活活动建立总总预算成本本。将活动总预预算成本分分摊到工作作包。将活活动总预算算成本按照照构成这一一活动的工工作包和所所消耗的资资源数量进进行成本预预算分摊。。确定各工作作包成本预预算支出的的时间以及及每一个时时间所发生生的累积成成本支出额额,形成成成本基线。。成本预算的的依据和特特征成本预算的的依据:成本估算工作分解结结构(WBS)项目进度计计划成本预算的的特征:计划性:将将总费用精精确的分配配到WBS的每一个个工作包中中。控制性:合合理规划资资源,控制制资源使用用,节约成成本。降低项目成成本预算的的方法降低资源的的费率减少任务的的工时减少加班替换资源删除任务降低资源的的费率降低人力资资源的费率率往往会打打击工作人人员的积极极性,但可可以通过降降低其他资资源的费率率来实现,,比如降低低能源消耗耗、设备费费用、耗材材费用等。。减少任务的的工时使任务高效效率地执行行,避免浪浪费时间,,从而适当当减少任务务的工时,,可以降低低任务的费费用。降低项目成成本预算的的方法减少加班加班需要支支付加班费费率,这通通常要高于于正常情况况下的人力力资源费率率,所以减减少加班可可以有效的的减少项目目成本。替换资源用廉价的资资源替换比比较高价的的资源,但但有一个前前提,那就就是替换的的资源同样样能胜任这这项任务。。删除任务确认删除该该任务对项项目没有影影响或影响响在可控制制范围内才才可采用。。降低项目成成本预算的的方法重视维护阶阶段的成本本预算加强客户对对软件维护护在软件应应用中重要要性的认识识。在签订订软件合同同时,应增增加对软件件维护的成成本预算。。软件市场中中对软件维维护的规范范性要有一一个统一科科学的认识识和约束,,要形成规规范的软件件服务市场场。坚持有偿服服务的原则则。加强软件开开发中的软软件测试、、软件复用用,组件化化,标准化化、泛性模模式的运用用。9、静静夜夜四四无无邻邻,,荒荒居居旧旧业业贫贫。。。。1月月-231月月-23Sunday,January1,202310、雨中中黄叶叶树,,灯下下白头头人。。。20:38:5420:38:5420:381/1/20238:38:54PM11、以我独沈久久,愧君相见见频。。1月-2320:38:5420:38Jan-2301-Jan-2312、故故人人江江海海别别,,几几度度隔隔山山川川。。。。20:38:5420:38:5420:38Sunday,January1,202313、乍见翻疑梦梦,相悲各问问年。。1月-231月-2320:38:5420:38:54January1,202314、他乡生生白发,,旧国见见青山。。。01一一月20238:38:54下午午20:38:541月-2315、比不不了得得就不不比,,得不不到的的就不不要。。。。。一月238:38下午午1月-2320:38January1,202316、行动出成成果,工作作出财富。。。2023/1/120:38:5420:38:5401January202317、做前,,能够环环视四周周;做时时,你只只能或者者最好沿沿着以脚脚为起点点的射线线向前。。。8:38:54下午午8:38下午午20:38:541月-239、没有有失败败,只只有暂暂时停停止成成功!!。1月-231月-23Sunday,January1,202310、很多事情努努力了未必有有结果,但是是不努力却什什么改变也没没有。。20:38:5420:38:5420:381/1/20238:38:54PM11、成成功功就就是是日日复复一一日日那那一一点点点点小小小小努努力力的的积积累累。。。。1月-2320:38:5520:38Jan-230

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论