欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    软件项目规模成本估算.ppt

    • 资源ID:6207016       资源大小:2.69MB        全文页数:111页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    软件项目规模成本估算.ppt

    软件项目管理与质量保证,chapter_7,0,黑龙江大学软件学院,软件开发项目管理,第六章软件项目规模成本估算,chapter_6,1,本章要点,一、软件项目规模成本的概念二、估算的过程三、估算的方法四、估算的误差,chapter_6,2,成本管理过程,资源计划编制:确定项目需要的资源种类和数量成本估算:中心环节编制一个为完成项目各活动所需要的资源成本的近似估算成本预算:项目进度将总成本估算分配到各单项工作活动上成本控制:项目跟踪控制项目预算的变更,chapter_6,3,关于估算,估算不是很准确的,有误差的经验(历史)数据非常重要不要太迷信数学模型,chapter_6,4,软件项目规模,软件项目规模即工作量,是从软件项目范围中抽出的软件功能,然后确定每个软件功能所必须执行的一系列软件工程任务包括:软件规划,软件管理,需求,设计,编码,测试,以及后期的维护等任务。,chapter_6,5,规模的单位,LOC(Loc of Code)源代码程序长度的测量FP(Function Point)用系统的功能数量来测量人月人天人年,chapter_6,6,软件项目成本,完成软件规模相应付出的代价。待开发的软件项目需要的资金。人的劳动消耗所需要的代价是软件产品的主要成本开发成本是以一次性开发过程所花费的代价来计算的,chapter_6,7,软件的规模和成本的关系,软件项目规模(工作量)是成本的主要因素,是成本估算的基础有了规模就确定了成本,如一个项目需要20人月,3万元/人月,则项目的成本是60万。,chapter_6,8,成本估算定义,对完成项目所需费用的估计和计划包括预测开发一个软件系统所需要的总工作量的过程。是一种量化的结果可以有一些误差,通常需要一定的调节成本估算不同于项目定价贯穿于软件的生存周期,只要WBS有变化就需要进行成本估算估计成本、资源、进度时需要经验、历史信息。,chapter_6,9,本章要点,一、软件项目规模成本的概念二、估算的过程三、估算的方法四、估算的误差,chapter_6,10,成本估算过程,估算输入,估算结果,成本估算方法,chapter_6,11,成本估算输入,项目需求、WBS历史项目度量资源要求(资源编制计划)资源消耗率(资源单价):如人员成本:100元/小时进度规划:项目总进度(一般是合同要求)学习曲线(项目组学习某项技术的时间),chapter_6,12,资源规划,需要的资源种类、数量等,chapter_6,13,一个大型IT项目的示例资源直方图,chapter_6,14,成本估算,规模成本估算主要是对各种资源的估算,包括人力资源、设备、资料等。直接成本间接成本这些估算的算法下节讲,chapter_6,15,直接成本,与具体项目相关的成本(人员的工资、材料费、外包外购成本等),包括开发成本、管理成本、质量成本等。,chapter_6,16,间接成本,不能具体到某个项目中的成本,可以分摊到各个具体项目中的成本,例如:培训房租水电员工福利市场费用管理费其他等等,chapter_6,17,项目估算结果,估算结果包括估算文件和估算说明估算文件包括资源,资源的数量,质量标准,估算成本等信息单位:一般是货币单位,或是规模单位BAC(Budget At completion预算完成)估算说明工作范围,通常由WBS获得估算的基础和依据,即确认估算是合理的和估算是根据什么产生的确认为成本估算所做的任何假设的合理性估算的误差变动等,chapter_6,18,本章要点,一、软件项目规模成本的概念二、估算的过程三、估算的方法四、估算的误差,chapter_6,19,估算的基本方法,代码行、功能点、用例点类比(自顶向下)估算法自下而上估算法参数法估算法专家估算法,chapter_6,20,代码行(LOC),从软件程序量的角度定义项目规模。要求功能分解足够详细的有一定的经验数据(类比和经验方法)与具体的编程语言有关,chapter_6,21,1静态单变量估算模型,这种模型在计算软件开发的资源花费时,只需要设定被开发软件的一种参数,故称为单变量型。它的一般形式是:资源=C1(估计的软件特征)C2其中,资源可以是开发工作量(E)、开发时间(T)或开发人数(P)等;估计特征可以用源程序长度(L)、或软件的开发工作量(E);C1、C2为依赖于开发环境和软件应用领域的两个经验常数。,1静态单变量成本估算模型,自1973年至l977年,Walston与Felix从60个软件项目(源程序长度从4至467千行,工作量从l2至11758个人月,使用了28种不同的高级语言)的统计中导出了以下的一组参数方程:E(人月)=5.1L(千行)0.91 T(月)=4.1L(千行)0.36 T(月)=2.47E(人月)0.35 P(人)=0.54E(人月)0.6 文档长度(页)=49L(千行)1.01这组方程在计算E、T、P等开发所需的资源时,使用L(千行)作为估计的特征。由L计算开发时间、工作量或文档页数,再由算出的工作量E来计算开发时间与所需人数。这类模型简单易懂,常数C1、C2可以从历史数据导出。但如果没有适用于本单位情况的经验常数,就不能直接搬用。,2Putnam成本估算模型,Putnam模型是一种动态多变量资源模型,可以用下面的方程式来表示:L=cK1/3 T4/3或 K=L3(c3 T4)其中L(行)与T(年)仍分别代表源程序长度和开发时间。K表示全生存期(含维护在内)所需要的工作量(人年)。对大型软件而言,其大小约为开发工作量E的2.5倍,即E=0.4 K。c是一个与开发环境有关的常数。对“优良”、“好”与“不好”的3种环境,c的典型值可分别取l2500、10000与6500。,2Putnam成本估算模型,这个模型发表于1978年,是LPutnam对50个大型军用软件(生存期工作量均在30人一年以上)研究得出的结果。后来又对另外l50个大型软件进行验证,也取得满意的效果。一般认为,规模在10万行以上的软件,用这个模型是适当的。Putnam模型的特点,是在同一个模型中给出了K(或E)、L和T三者之间的关系。例如,给定了L和T,就可以用它来估计开发所需的工作量E。如果估计的程序长度有一个范围(例如从L1L2),则在保持工作量不变的情况下,可算出相应的开发时间T1与T2等。Putnam模型方程揭示了E与T之间的关系。根据这一方程,开发工作量E与开发时间T的4次方成反比。这表明,开发时间的小量变化,会引起开发工作量相当大的变化。如果把开发时间成倍延长,则一个原来需要100个人一月完成的项目,能够把工作量降低到仅需6.5个人月(=10024)。,3.COCOMO模型,(1)按照软件的应用领域和复杂程度,将它们分为组织(Organic)、半独立(Semidetached)和嵌入(Embeded)3种类型,每类分别使用一组不同的模型方程,如表11-1中由上向下,程序的复杂度逐步提高,E和T的计算值也随之增大。,3.COCOMO模型,(2)在模型中增加一个工作量调节因子EAF(Effort adjustment Factor),反映各种有关因素对软件开发的影响。Boehm把这些因素归结为4类共l5种因子,如下表所示。每种因子的可根据实际情况在一定范围内上下浮动。模型中使用的调节因子值,就是这15种因子的值的乘积,可以写作 EAF=(i=1,2,15),3.COCOMO模型,示例,示例,(1)换用水平较低的开发人员本例中原来使用较高水平的分析员和程序员,一个人月的花费是6000美元。如果换用5000美元人月的人员,则人员水平的两个调节因子均将从0.86上升为1.00,整个EAF值将从原来的l.17变成l.170.860.86=1.58。开发成本不仅没有节省,反比原来有所增长。请看下面的计算:原开发成本:600044.41.17=311400新开发成本:500044.41.58=350760,示例,(2)扩充内存储器容量假定原有的内存容量为64 KB,允许软件使用的内存为46 KB。现决定增加l0000美元购买内存扩充板,使软件可用的内存从46 KB扩充为96 KB。这样,内存容量的调节因子值可从原来的l.06(见11.2末栏第5项)下降为1.00,从而使EAF从1.17下降为1.10。虽然新增加10000美元的投资,总开发成本仍可望下降。以下是新成本的算式:600044.41.10+10000=293000,功能点(FP),用系统的功能数量来测量其规模与实现产品所使用的语言和技术没有关系的两个评估内部基本功能外部基本功能加权和量化,chapter_6,32,功能点的公式,FP=UFC*TCFUFC:未调整功能点计数TCF:技术复杂度因子,chapter_6,33,UFC-未调整功能点计数,功能计数项:外部输入:由用户提供的用来描述面向应用的数据项(如屏幕、表单、对话框、控件、文件等)外部输出:那些向用户提供的用来生成面向应用的数据项。外部查询:要求回答的交互式输入的项外部文件:对其他系统的机器可读界面的项内部文件:系统里的逻辑主文件的项,chapter_6,34,UFC-未调整功能点计数,功能计数项的复杂度等级,chapter_6,35,功能点计算实例-UFC,chapter_6,36,TCF-技术复杂度因子,TCF=0.65+0.01(sum(Fi):,chapter_6,37,技术复杂度因子的取值范围,chapter_6,38,功能点计算实例,假设一个软件项目所有技术复杂度都是平均程度,即技术复杂度因子的值都为3,则计算功能点如下:FP=UFC*TCFUFC=301TCF=0.65+0.01(14*3)=1.07FP=301*1.07=322,chapter_6,39,功能点与代码行的转换,40,用例点估算模型,chapter_3,41,用例点估算模型,chapter_3,42,用例点估算方法的基本步骤,计算未调整的角色的权值UAW;计算未调整的用例的权值UUCW;计算未调整的用例点UUCP;计算技术和环境因子TEF和ECF计算调整的用例点UCP;计算工作量(manhours)。,chapter_6,43,1、计算未调整的角色的权值UAW,UAW=,chapter_6,44,2、计算未调整的用例的权值UUCW,UUCW=,chapter_6,45,3、计算未调整的用例点UUCP,UUCP=UAW+UUCW:例如,chapter_3,46,4、计算技术因子TCF,chapter_6,47,5.环境复杂度因子(ECF),6、计算调整的用例点UCP,chapter_6,49,UCP=UUCPTCFECF=1101.020.62=70ECF为环境复杂度因子,7、计算工作量,如果:PF=20工时/用例点则:Effort=UCPPF=7020=1400h=175人天,chapter_6,50,估算的基本方法,代码行、功能点、用例点类比(自顶向下)估算法自下而上估算法参数法估算法专家估算法,chapter_6,51,类比-定义,从项目的整体出发,进行类推,即估算人员根据以往的完成类似项目所消耗的总成本(或工作量),来推算将要开发的软件的总成本(或工作量),然后按比例将它分配到各个开发任务单元中是一种自上而下的估算形式,chapter_6,52,类比使用情况,有类似的历史项目数据信息不足(要求不是非常精确)的时候在合同期和市场招标时在高层对任务的总的评估,chapter_6,53,类比特点,简单易行,花费少具有一定的局限性准确性差,可能导致项目出现困难,chapter_6,54,类比举例,证券交易网站需求类似历史数据:10万学习曲线:5-8万,chapter_6,55,估算的基本方法,代码行、功能点、对象点类比(自顶向下)估算法自下而上估算法参数法估算法专家估算法,chapter_6,56,自下而上定义,利用任务分解结构图,对各个具体工作包进行详细的成本估算,然后将结果累加起来得出项目总成本。,chapter_6,57,自下而上使用情况,在进入项目开始以后,WBS以后的开发阶段需要进行准确估算的时候,chapter_6,58,自下而上特点,这种方法准确。它的准确度来源于每个任务的估算情况非常费时,估算本身也需要成本支持可能发生虚报现象,chapter_6,59,估算的基本方法,代码行、功能点、对象点类比(自顶向下)估算法自下而上估算法参数法估算法专家估算法,chapter_6,60,参数估算法定义,一种使用项目特性参数建立数据模型来估算成本的方法,是一种统计技术,如回归分析和学习曲线。参考历史信息根据实际情况,对参数模型按适当比例调整模型可以简单也可以复杂,很少有通用性,chapter_6,61,参数估算法使用情况,存在成熟的项目估算模型应该具有良好的数据库数据为基础目前软件企业估算很少使用通用的数学模型,chapter_6,62,参数估算法估算单位,每个任务必须至少有一个统一的规模单位,例如KLOC,FP人天,人月,人年参数:xx元/KLOC.xx元/FP,xx元/人天,chapter_6,63,参数估算法特点,比较简单,而且也比较准确如果模型选择不当或者数据不准,也会导致偏差,chapter_6,64,参量成本估算实例(适合单价合同),chapter_6,65,软件成本估算模型,理论导出:不成熟阶段经验导出:软件估算常常采用,chapter_6,66,经验导出成本模型,提供工作量(规模)的直接估计通过过去项目数据,进行回归分析,得出的回归模型依据不同的细化程度,通过参数的输入来进行成本估算。通常,输入包括产品的预计规模产品的自然属性组织能力项目性质,chapter_6,67,经验导出成本模型,整体公式:E=A+B*SCE:以人月表示的工作量A,B,C:经验导出的常数S:主要的输入参数(通常是LOC,FP等),chapter_6,68,经验导出成本模型(续),面向LOC驱动的Walston-Felix(IBM)E=5.2*(KLOC)0.91Balley-BasiliE=5.5+0.73*(KLOC)1.16.COCOMOE=3.2*(KLOC)1.05DotyE=5.288*(KLOC)1.047,chapter_6,69,估算的基本方法,代码行、功能点、用例点类比(自顶向下)估算法自下而上估算法参数法估算法专家估算法,chapter_6,70,专家估算法,由多位专家进行成本估算,一个专家可能会有偏见,最好由多位专家进行估算,取得多个估算值,最后得出综合的估算值。,chapter_6,71,专家估算法-Deiphi,组织者发给每位专家一份软件系统的规格说明和一张记录估算值的表格,请他们估算专家详细研究软件规格说明后,对该软件提出3个规模的估算值最小ai最可能的mi最大bi组织者对专家的表格中的答复进行整理计算每位专家的Ei=(ai+4mi+bi)/6,chapter_6,72,专家估算法-Deiphi(续),综合结果后:E=(E1+E2+En)/n(N:表示N 个专家),再组织专家无记名填表格,比较估算差,并查找原因如果各个专家的估算差异超出规定的范围(例如:15%),则需重复上述过程,最终可以获得一个多数专家共识的软件规模,chapter_6,73,专家估算法-举例,某多媒体信息查询系统专家估算专家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(万元),chapter_6,74,估算方法总结,初期类比专家估算计划阶段自下而上参数模型实施阶段(包括变更发生)自下而上参数模型,chapter_6,75,成本估算方法综述,主要考虑三种模型:类比法,自下而上法,参数法.自下而上法费时费力,参数法比较简单自下向上法与参数法的估计精度相似各种方法不是孤立的,应该注意相互的结合使用类比法通常用来验证参数法和自下而上法的结果,chapter_6,76,实用软件估算模型,是一种自下而上和参数法的结合模型,步骤如下:对任务进行分解估算每个任务的成本Ei直接成本=E1+E2+Ei+En项目总估算成本=直接成本+间接成本项目总报价=项目总估算成本+风险利润 风险利润=利润+风险基金+税,chapter_6,77,估算每个任务的成本,直接估算成本Ei先估算规模Qi,然后估算成本Ei=Qi*人力成本参数唯一估计值:Qi=AvgPERT算法:Qi=(Max+4Avg+Min)/6,退出,chapter_6,78,直接成本估算,直接成本组成开发成本管理成本质量成本直接成本=规模*人力成本参数简易估算:开发(工作量)规模:Scale(Dev)(单位:人月)管理、质量(工作量)规模:Scale(Mgn)=a*Scale(Dev)a:比例系数:例如:20%-25%,chapter_6,79,直接成本估算,直接成本=规模*人力成本参数例如:人力成本参数=2万/人月,30人月的项目的直接成本是 60万,退出,chapter_6,80,项目总估算成本,估算成本=直接成本+间接成本间接成本估算:按照企业模型直接估算:简易算法:间接成本=直接成本*间接成本系数间接成本=规模*人力成本参数*间接成本系数例如:间接成本系数=1.5-3,chapter_6,81,项目总估算成本,估算成本=直接成本+间接成本估算成本=规模*人力成本参数(1+间接成本系数)成本系数=人力成本参数*(1+间接成本系数)简易算法:估算成本=规模*成本系数例如:成本系数=3万/人月,退出,chapter_6,82,项目总报价,项目总报价=项目总估算成本+风险利润项目利润=估算成本*a%风险基金=估算成本*a%税=估算成本*b%(例如:b为5.5左右)项目总报价=x%*项目总估算成本,chapter_6,83,本章要点,一、软件项目规模成本的概念二、估算的过程三、估算的方法四、估算的误差,chapter_6,84,估算准确度,chapter_6,85,估算不准的原因,基础数据不足缺乏经验的估算人员签约前后不连贯低劣的推测技术估算对需求的敏感性,chapter_6,86,对付估算误差,避免低劣估算处理低劣估算带来的后果,chapter_6,87,避免低劣估算,避免无准备的估算留出估算的时间,并做好计划使用以前的项目数据使用以开发人员为基础的估算分类法估算详细的较低层次上的估算使用几种不同估算技术,并比较它们的结果,chapter_6,88,处理低劣估算带来的后果,通过数据说明资源不足,争取更多资源强化变更管理程序确定目标的优先次序,chapter_6,89,估算的表达方式技巧,加减限定6个人月,+3人月,-1人月范围5-9人月,chapter_6,90,估算的表达方式技巧,3.风险量化:见下例,chapter_6,91,估算的表达方式技巧,4.情况:见下:案例估算的例子,chapter_6,92,本章要点,一、软件项目规模成本的概念二、估算的过程三、估算的方法四、案例分析四、估算的误差,chapter_6,93,医疗信息商务平台成本估算,MED的2个估算方法:自下而上的估算用例点估算,chapter_6,94,MED自下而上的估算,chapter_3,95,计算开发成本,通过自下而上的计算,得知项目开发规模是396人天,开发人员成本参数=1000元/天,则内部的开发成本=1000元/天*396天=39.6万元加上外包部分软件成本2.4万元,则开发成=39.6万+2.4万=42万元,chapter_6,96,计算管理成本,针对本项目,管理成本=开发成本*10%。所以,管理成本为=42万元*10%=4.2万元。,chapter_6,97,计算直接成本,因为,直接成本=开发成本+管理成本所以,直接成本=42万元+4.2=46.2万元,,chapter_6,98,计算间接成本,因为,间接成本=直接成本*20%所以,间接成本=46.2万元*20%=9.24万元,chapter_6,99,计算总估算成本,项目总估算成本=直接成本+间接成本=46.2万元+9.24万元=55.44万元。,chapter_6,100,MED用例点估算,chapter_3,101,角色:User,chapter_3,102,计算未调整的角色的权值:UAW,UAW=18,chapter_6,103,计算未调整的用例权值:UUCW,UUCW=240,chapter_6,104,计算未调整的用例点:UUCP,UUCP=UAW+UUCW=18+240=258,chapter_6,105,技术复杂度因子TCF,chapter_3,106,环境因子ECF,chapter_3,107,计算用例点UCP,UCP=UUCPTCFECF=2581.080.785=218.7,chapter_6,108,规模:Effort,如果:PF=20工时/用例点则:Effort=UCPPF=218.720=4374工时。因为1人天=8工时,则项目规模:4374/8=547人天如果1000元/人天,则成本54.7万,chapter_6,109,小结,成本估算的过程成本估算的方法掌握成本估算的技巧,chapter_6,110,

    注意事项

    本文(软件项目规模成本估算.ppt)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开