好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

代码量估计的多种方法.ppt

78页
  • 卖家[上传人]:枫**
  • 文档编号:584074886
  • 上传时间:2024-08-30
  • 文档格式:PPT
  • 文档大小:398.52KB
  • / 78 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 第二部分 第5章 软件项目计划•厦门大学软件学院 林坤辉 第第5章章 软件项目计划►5.1 软件项目估算的概念►►合理的计划是建立在对要完成的工作做出一个比较实际的估计,以及对完成该工作建立一些必要的约定的基础上的►►项目计划中的第一个活动是估算无论何时进行估算,我们都是在预测未来,并会接受某种程度的不确定性►►估算的基础是对软件相应项目的度量 ►►估算一个软件开发工作的资源、成本及进度需要经验、需要了解以前的有用信息、以及当仅存在定性的数据时进行定量测量的勇气►►估算具有与生俱来的风险,而正是这种风险导致了估算的不确定性►估算的风险有四个方面:5.2 软件估算风险 ►1、项目复杂性项目复杂性对计划中固有的不确定性产生重大影响,不过,复杂性是一个受到对以前工作的熟悉程度影响的相对的测量►2、项目规模项目规模是另一个影响估算准确性的因素 随着规模的增长,软件中各个元素之间的相互依赖性也迅速增加, 项目规模的增长会对项目的成本及进度产生几何级数级的影响 ►►3、结构不确定性的程度结构不确定性的程度也会对估算的风险产生影响结构化程度越高,对功能等的分解程度越容易,估算的精度越高、风险越小。

      ►►4、历史信息的可用程度历史信息的可用程度也决定了估算的风险 当存在大量可用的关于过去的类似项目的软件度量时,估算就会有更大的保证;总体风险也会降低 5.3 估算的步骤 ►1、估算的注意点、估算的注意点►估算的前提是系统的规模可通过功能点、复杂度或代码行等技术确定;►估算的主要内容是工作量和成本估算;►估算的范围包括,软件生命周期的各阶段;►如果有类似项目的开发经验(即历史基线完备),则生产率等数据可直接使用这些数据; ►如果没有类似项目的开发经验,则生产率等数据可由历史基线的平均值得出,或者用专家问卷的方法(即Delphi法)得到;►Delphi法是一种利用调查表,充分利用群体知识和经验的一种估算方法.►►为了反映通货膨胀、项目复杂性增加、新员工较多等的影响,应随时修正平均生产率的度量值►►估算的各种假设、条件等均应记入文档,并通过评审 PERT 估算方法估算方法►►PERT: Program Evaluation & Review Technique(计划评估和评审技术计划评估和评审技术),,在没有类似项目做参照时,这是一个很常用的方法►►利用历史数据或凭经验估算,计算三点或期望值。

      估算变量(规模)的期望值EV(expected value),可以通过乐观值(Sopt)、可能值(Sm)、及悲观值(Spess)估算的加权平均值来计算:►►EV=(Sopt+4Sm+Spess)/6 ►►其中给予“可能值”估算以最大的权重,并遵循β概率分布 ►►方法一:►根据功能点、复杂度或代码行等进行整个软件规模的估算►参照类似项目的历史基线,确定项目的生产率;►从生产率和规模估算获得整体工作量;►参照类似项目历史基线的工作量分配比例,确定各个阶段的工作量以及管理工作量和附加工作量;5.4 工作量的估算 ►►如果没有类似项目历史基线可参照,通过Delphi 或PERT方法确定,或者参照已有项目历史基线的平均值;►考虑项目的特定因素(如:加缓冲时间等)修正估算 ►►方法二:►将待开发的项目进行分解,直到每个任务可用功能点、复杂度或代码行等进行估算►参照类似项目的历史基线,确定每个任务的工作量;►参照类似项目历史基线的工作量分配比例,确定各个阶段的工作量以及管理工作量和附加工作量等,最后获得整体工作量;►如果没有类似项目历史基线可参照,通过Delphi 或PERT方法确定,或者参照已有项目历史基线的平均值;►考虑项目的特定因素(如:加缓冲时间等)修正估算。

      方法三: 一些公司开发出的经验模型方法四: 简单直观的“分解-累计”方法方法五: 专家评定方法方法六: 灵活运用 LOC和FP数据在估算中的使用►►在软件项目估算中,在两个方面使用了在软件项目估算中,在两个方面使用了LOC和和FP数据:数据:§ 把把LOC和和FP数据当做一个估算变量,数据当做一个估算变量,用于量度软件每一个元素的规模用于量度软件每一个元素的规模§ LOC和和FP数据作为从过去项目中收集数据作为从过去项目中收集到的基线数据,与其它估算变量联合到的基线数据,与其它估算变量联合使用使用, 进行成本和工作量的估算进行成本和工作量的估算 ►►LOC和和FP是两个不同的估算技术两者的是两个不同的估算技术两者的共性在于共性在于: 项目计划人员项目计划人员§ 给出一个有界的软件范围的叙述;给出一个有界的软件范围的叙述;§ 由此叙述尝试把软件分解成一些小的可由此叙述尝试把软件分解成一些小的可分别独立进行估算的子功能;分别独立进行估算的子功能;§ 对每一个子功能估算其对每一个子功能估算其LOC或或FP把基线把基线生产率度量(如生产率度量(如LOC//PM或或FP//PM,,PM指人月)用做特定的估算变量,导出指人月)用做特定的估算变量,导出子功能的成本或工作量;子功能的成本或工作量;§ 将子功能的估算进行综合后就能得到整将子功能的估算进行综合后就能得到整个项目的总估算。

      个项目的总估算 ►►LOC或或FP估算技术对于分解所需要的详细估算技术对于分解所需要的详细程度是不同的程度是不同的►►用用LOC做为估算变量时,必须进行功能分做为估算变量时,必须进行功能分解解, 且需要达到很详细的程度而估算且需要达到很详细的程度而估算FP时需要的数据是宏观的量,当把时需要的数据是宏观的量,当把FP当做估当做估算变量时不需分解得很详细算变量时不需分解得很详细►►LOC是直接估算的是直接估算的, 而而FP是通过估计输入、是通过估计输入、输出、数据文件、查询和外部接口的数目,输出、数据文件、查询和外部接口的数目,以及以及14种复杂性校正值间接地确定的种复杂性校正值间接地确定的 ►►项目计划人员可对每一个分解的功能提出项目计划人员可对每一个分解的功能提出一个有代表性的估算值范围一个有代表性的估算值范围►►利用历史数据或凭实际经验(当其它的方利用历史数据或凭实际经验(当其它的方法失效时),对每个功能分别按最佳的、法失效时),对每个功能分别按最佳的、可能的、悲观的三种情况给出可能的、悲观的三种情况给出LOC或或FP估估计值记作计值记作a、、m、、b►►接着计算接着计算LOC或或FP的期望值的期望值 E。

      E == ((a++4m++b)/)/6 ►►所有子功能的总估算变量值除以相应于该所有子功能的总估算变量值除以相应于该估算变量的平均生产率度量得到项目的总估算变量的平均生产率度量得到项目的总工作量►►例如,若假定总的例如,若假定总的FP估算值是估算值是310,基于,基于过去项目的平均过去项目的平均FP生产率是生产率是5.5FP//PM,,则项目的总工作量是:则项目的总工作量是: 工作量工作量 == 310//5.5 == 56 PM作为作为LOC和和FP估算技术的实例,考察一个估算技术的实例,考察一个为计算机辅助设计(为计算机辅助设计(CAD)应用而开发的)应用而开发的软件包 ►►系统定义评审指明:系统定义评审指明: CAD软件包是在一个工作站上运行,软件包是在一个工作站上运行,其接口必须使用各种计算机图形设备,包其接口必须使用各种计算机图形设备,包括鼠标器、数字化仪、高分辩率彩色显示括鼠标器、数字化仪、高分辩率彩色显示器和激光打印机器和激光打印机►►在这个实例中,使用在这个实例中,使用LOC做为估算变量做为估算变量►►根据系统规格说明根据系统规格说明, 软件范围的初步叙述软件范围的初步叙述如下:如下: ►► 软件将从操作员那里接收软件将从操作员那里接收2维或维或3维几何数据;维几何数据;►► 操作员通过用户界面与操作员通过用户界面与 CAD系统交互并控制系统交互并控制它,这种用户界面将表现出很好的人机接口设它,这种用户界面将表现出很好的人机接口设计特性;计特性;►►所有的几何数据和其它支持信息保存在一个所有的几何数据和其它支持信息保存在一个CAD数据库内;数据库内;►►要开发一些设计分析模块以产生在各种图形设要开发一些设计分析模块以产生在各种图形设备上显示的输出;备上显示的输出;►►软件要设计得能控制并与能各种外部设备,包软件要设计得能控制并与能各种外部设备,包括鼠标器、数字化仪、激光打印机和绘图仪交括鼠标器、数字化仪、激光打印机和绘图仪交互。

      互 ►►经过分解经过分解, 识别出下列主要软件功能:识别出下列主要软件功能:►► 用户界面和控制功能用户界面和控制功能►► 二维几何分析二维几何分析►► 三维几何分析三维几何分析►► 数据库管理数据库管理►► 计算机图形显示功能计算机图形显示功能►► 外设控制外设控制PC►► 设计分析模块设计分析模块►►通过分解,可得到如下估算表通过分解,可得到如下估算表 ►►估算表估算表 采用FP法进行估算 调整因子 最后得出FP的估算值; FP=总计数值X[0.65+0.01 x SUM(Fi)]=372 使用功能点法进行规范化的历史数据表明,这类系统的平均生产率是 65 FP/PM如果一个劳动力价格是每月 8 000美元,则每个 FP的成本是 1230美元可以得到,总的项目成本估算是:457560美元,工作量估算是 58PM ►►软件开发成本估算软件开发成本估算►►软件开发成本主要是指软件开发过程中软件开发成本主要是指软件开发过程中所花费的工作量及相应的代价它不包所花费的工作量及相应的代价它不包括原材料和能源的消耗,主要是人的劳括原材料和能源的消耗,主要是人的劳动的消耗动的消耗►►人的劳动消耗所需代价就是软件产品的人的劳动消耗所需代价就是软件产品的开发成本。

      开发成本►►软件产品开发成本的计算方法不同于其软件产品开发成本的计算方法不同于其它物理产品成本的计算它物理产品成本的计算 ►►软件的开发成本是以一次性开发过程所软件的开发成本是以一次性开发过程所花费的代价来计算的花费的代价来计算的►►软件开发成本的估算,应是从软件计划、软件开发成本的估算,应是从软件计划、需求分析、设计、编码、单元测试、组需求分析、设计、编码、单元测试、组装测试到确认测试,整个软件开发全过装测试到确认测试,整个软件开发全过程所花费的代价作为依据的程所花费的代价作为依据的 ►►成本估算与工作量估算密不可分►►在历史数据完整的情况下,利用类似项目的数据可得到工作量的估算值和单位工作量所需的成本,总成本就相应得到►►成本主要包括:1.1.直接费用2.2.间接费用3.3.设备费用4.4.差旅费用5.5 成本的估算成本的估算 项目成本的常用估算方法项目成本的常用估算方法►►成本建模技术►►专家判定技术►►类比评估技术►►自顶向下估算法►►自底向上估算法►►赢利定价法 自顶向下的估算方法►►这种方法的主要思想是从项目的整体这种方法的主要思想是从项目的整体出发,进行类推出发,进行类推。

      ►►估算人员根据以前已完成项目所消耗估算人员根据以前已完成项目所消耗的总成本(或总工作量),推算将要开的总成本(或总工作量),推算将要开发的软件的总成本(或总工作量),然发的软件的总成本(或总工作量),然后按比例将它分配到各开发任务单元中后按比例将它分配到各开发任务单元中去,再来检验它是否能满足要求去,再来检验它是否能满足要求 ►►这种方法的优点是估算工作量小,速度快这种方法的优点是估算工作量小,速度快►►缺点是对项目中的特殊困难估计不足,估算缺点是对项目中的特殊困难估计不足,估算出来的成本盲目性大,有时会遗漏被开发软出来的成本盲目性大,有时会遗漏被开发软件的某些部分件的某些部分 自底向上的估计法►►这种方法的主要思想是把待开发的软件这种方法的主要思想是把待开发的软件细分,直到每一个子任务都已经明确所细分,直到每一个子任务都已经明确所需要的开发工作量,然后把它们加起来,需要的开发工作量,然后把它们加起来,得到软件开发的总工作量得到软件开发的总工作量►►它的优点是估算各个部分的准确性高它的优点是估算各个部分的准确性高缺点是缺少各项子任务之间相互联系所缺点是缺少各项子任务之间相互联系所需要的工作量,还缺少许多与软件开发需要的工作量,还缺少许多与软件开发有关的系统级工作量有关的系统级工作量. 差别估计法►►这种方法综合了上述两种方法的优点,其这种方法综合了上述两种方法的优点,其主要思想是把待开发的软件项目与过去已主要思想是把待开发的软件项目与过去已完成的软件项目进行类比,从其开发的各完成的软件项目进行类比,从其开发的各个子任务中区分出类似的部分和不同的部个子任务中区分出类似的部分和不同的部分。

      分►►类似的部分按实际量进行计算,不同的部类似的部分按实际量进行计算,不同的部分则采用相应方法进行估算分则采用相应方法进行估算►►这种的方法的优点是可以提高估算的准确这种的方法的优点是可以提高估算的准确程度,缺点是不容易明确程度,缺点是不容易明确“类似类似”的界限 专家判定技术►►由多位专家进行成本估算由多位专家进行成本估算►►单独一位专家可能会有种种偏见,譬如有乐单独一位专家可能会有种种偏见,譬如有乐观的、悲观的、要求在竞争中取胜的、让大家观的、悲观的、要求在竞争中取胜的、让大家都高兴的种种愿望及政治因素等都高兴的种种愿望及政治因素等►►最好由多位专家进行估算,取得多个估算值最好由多位专家进行估算,取得多个估算值►►有多种方法把这些估算值合成一个估算值有多种方法把这些估算值合成一个估算值 ►►一种方法是简单地求各估算值的中值或平均值一种方法是简单地求各估算值的中值或平均值其优点是简便缺点是可能会由于受一、二个其优点是简便缺点是可能会由于受一、二个极端估算值的影响而产生严重的偏差极端估算值的影响而产生严重的偏差►►一种方法是召开小组会,使各位专家们统一于一种方法是召开小组会,使各位专家们统一于或至少同意某一个估算值。

      优点是可以摈弃蒙或至少同意某一个估算值优点是可以摈弃蒙昧无知的估算值,缺点是一些组员可能会受权昧无知的估算值,缺点是一些组员可能会受权威或政治因素的影响威或政治因素的影响 Delphi技术►►标准标准Delphi技术技术①① 组织者发给每位专家一份软件系统规格说组织者发给每位专家一份软件系统规格说明书和一张记录估算值的表格,请他们进行明书和一张记录估算值的表格,请他们进行估算②② 专家详细研究软件规格说明书的内容,对专家详细研究软件规格说明书的内容,对该软件提出三个规模的估算值,即:该软件提出三个规模的估算值,即: ai(最小(最小)) mi(可能)(可能) bi(最大)(最大)无记名地填写表格无记名地填写表格 在填表的过程中,专家互相不进行讨论但可在填表的过程中,专家互相不进行讨论但可以向组织者提问以向组织者提问③③ 组织者对专家们填在表格中的答复进行整组织者对专家们填在表格中的答复进行整理:理: a. 计算各位专家估算的期望值计算各位专家估算的期望值 Ei; b. 对专家的估算结果分类摘要对专家的估算结果分类摘要专家对此估算值另做一次估算专家对此估算值另做一次估算。

      ④④ 在综合专家估算结果的基础上,组织专家在综合专家估算结果的基础上,组织专家再次无记名地填写表格再次无记名地填写表格 比较两次估算的结比较两次估算的结果若差异很大,则要通过查询找出差异的果若差异很大,则要通过查询找出差异的原因 ►► ⑤⑤ 上述过程可重复多次最终可获得一个上述过程可重复多次最终可获得一个得到多数专家共识的软件规模(源代码行数)得到多数专家共识的软件规模(源代码行数)在此过程中不得进行小组讨论在此过程中不得进行小组讨论►►最后,通过与历史资料进行类比,根据过去最后,通过与历史资料进行类比,根据过去完成软件项目的规模和成本等信息,推算出完成软件项目的规模和成本等信息,推算出该软件每行源代码所需要的成本然后再乘该软件每行源代码所需要的成本然后再乘以该软件源代码行数的估算值,就可得到该以该软件源代码行数的估算值,就可得到该软件的成本估算值软件的成本估算值 软件开发成本估算的经验模型►►软件开发成本估算是依据开发成本估算模软件开发成本估算是依据开发成本估算模型进行估算的型进行估算的►►开发成本估算模型通常采用经验公式来预开发成本估算模型通常采用经验公式来预测软件项目计划所需要的成本、工作量和测软件项目计划所需要的成本、工作量和进度数据。

      进度数据►►用以支持大多数模型的经验数据都是从有用以支持大多数模型的经验数据都是从有限的一些项目样本中得到的还没有一种限的一些项目样本中得到的还没有一种估算模型能够适用于所有的软件类型和开估算模型能够适用于所有的软件类型和开发环境 IBM模型►► E == 5.2×L0.91►► D == 4.1×L0.36 == 14.47×E0.35►► S == 0.54×E0.6►► DOC == 49×L1.01►►L 是源代码行数(是源代码行数(KLOC),),►►E 是工作量(是工作量(PM),),►►D 是项目持续时间(月),是项目持续时间(月),►►S 是人员需要量(人),是人员需要量(人),►►DOC是文档数量(页)是文档数量(页) ►►IBM模型是静态单变量模型模型是静态单变量模型►►在此模型中,一般指一条机器指令为一在此模型中,一般指一条机器指令为一行源代码行源代码►►一个软件的源代码行数不包括程序注释、一个软件的源代码行数不包括程序注释、作业命令、调试程序在内作业命令、调试程序在内►►对于非机器指令编写的源程序,例如汇对于非机器指令编写的源程序,例如汇编语言或高级语言程序,应转换成机器编语言或高级语言程序,应转换成机器指令源代码行数来考虑。

      指令源代码行数来考虑►►定义定义: 转换系数=机器指令条数/非机转换系数=机器指令条数/非机器语言执行步数器语言执行步数 u典型的数学模型如 : E = A + B×(ev) C–其中A,B,和C是由经验导出的常数,E是以“人月”为单位的工作量,–ev是估算变量如代码行(LOC)或者功能点(FP)5.6 常用数学模型常用数学模型 例如基于代码行的数学模型有:uWalston-Felix模型 E = 5.2×(KLOC)0.91uBailey-Basili模型 E= 5.5+0.73×(KLOC)1.16uBoehm简单模型 E = 3.2×(KLOC)1.05u基于功能点的数学模型有:uAlbrecht模型E = -13.39 + 0.0545 FPuKemerer 模型 E = 60.62×7.728×10-8 FP3uMaston模型E = 585.7 + 5.12 FP 5.7 COCOMO模型模型 COCOMO模型(构造性成本模型),模型(构造性成本模型), 是一种自顶向下项目成本估算模型,估算公,估算公式为:式为:E=A(KDSI)b模型的层次结构分为模型的层次结构分为: 1. 初级初级; 2. 中级中级; 3. 高级。

      高级 在该模型中使用的基本量有以下几个:在该模型中使用的基本量有以下几个:n nE:开发成本,以人月为单位开发成本,以人月为单位n nDSI((源指令条数)定义为代码的源程序行数源指令条数)定义为代码的源程序行数若一行有两个语句,则算做一条指令它包括作若一行有两个语句,则算做一条指令它包括作业控制语句和格式语句,但不包括注释语句业控制语句和格式语句,但不包括注释语句n nKDSI==1000DSI ►►MM(度量单位为人月)表示开发工作量►►TDEV(度量单位为月)表示开发进度它由工作量决定►►根据开发环境和软件项目的规模,分类软件开发项目的总体类型:§ 组织型组织型组织型组织型:规模较小的、简单的软件项目;:规模较小的、简单的软件项目;§ 嵌入型嵌入型嵌入型嵌入型:指必须要求在一组紧密联系的硬件、软:指必须要求在一组紧密联系的硬件、软件及操作系统约束下开发的软件项目;件及操作系统约束下开发的软件项目;§ 半独立型半独立型半独立型半独立型:指在规模和复杂性上处于中等程度的:指在规模和复杂性上处于中等程度的软件项目软件项目 n n初级初级COCOMO模型是一个静态单模型是一个静态单变量模型,变量模型,n n它用源代码行数(它用源代码行数(LOC))为自变量为自变量的(经验)函数来计算软件开发工作的(经验)函数来计算软件开发工作量。

      量 初级初级COCOMO模型的工作量和进度公式模型的工作量和进度公式 COCOMO成本曲线 COCOMO进度曲线3种模式的进度曲线基本相同 人员曲线 中级中级COCOMO模型则在用模型则在用LOC为为自变量的函数计算软件开发工作量(此自变量的函数计算软件开发工作量(此时称为名义工作量)的基础上,再用涉时称为名义工作量)的基础上,再用涉及产品、硬件、人员、项目等方面属性及产品、硬件、人员、项目等方面属性的影响因素来调整工作量的估算的影响因素来调整工作量的估算 n n进一步考虑进一步考虑15种影响软件工作量的因种影响软件工作量的因素,通过定下乘法因子,修正素,通过定下乘法因子,修正COCOMO工作量公式和进度公式,可工作量公式和进度公式,可以更合理地估算软件(各阶段)的工以更合理地估算软件(各阶段)的工作量和进度作量和进度n n中级中级COCOMO模型的名义工作量与模型的名义工作量与进度公式如下所示进度公式如下所示 中级中级COCOMO模型的名义工作量与进度公模型的名义工作量与进度公式式 15种影响软件工作量的因素种影响软件工作量的因素 fil l产品因素:产品因素: 软件可靠性、数据库规模、产品复杂性;软件可靠性、数据库规模、产品复杂性;l l硬件因素:硬件因素: 执行时间限制、存储限制、虚拟机易变性、执行时间限制、存储限制、虚拟机易变性、环境周转时间;环境周转时间;l l人的因素:人的因素: 分析员能力、应用领域实际经验、程序员能分析员能力、应用领域实际经验、程序员能力、虚拟机使用经验、程序语言使用经验;力、虚拟机使用经验、程序语言使用经验;l l项目因素:项目因素: 现代程序设计技术、软件工具的使用、开发现代程序设计技术、软件工具的使用、开发进度限制。

      进度限制 l l此时,工作量计算公式改成此时,工作量计算公式改成l l例例1. 一个一个32KDSI的声音输入系统是一个输的声音输入系统是一个输入原型,或是一个可行性表演模型所需可入原型,或是一个可行性表演模型所需可靠性非常低把此模型看做半独立型软件靠性非常低把此模型看做半独立型软件则有则有 MM == 3.0((32))1.12 == 146又查表知又查表知 f1==0.75,,其它其它 fi==1.00,,则最终有则最终有MM == 146×0.75 == 110. l l例例2. 一个规模为一个规模为10KDSI的商用微机远程通的商用微机远程通信的嵌入型软件,使用中级信的嵌入型软件,使用中级COCOMO模模型进行成本估算型进行成本估算l l程序名义工作量程序名义工作量 MM == 14.8 (10)1.20 == 44.38((MM))l l程序实际工作量程序实际工作量 MM == 44.38× == 44.38×1.17 == 51.5((MM)) l l开发所用时间开发所用时间 TDEV == 14.5 (51.5)0.32 == 8.9 ((月月))l l如果分析员与程序员的工资都按每月如果分析员与程序员的工资都按每月6,000美美元计算,则该项目的开发人员的工资总额为元计算,则该项目的开发人员的工资总额为 51.5×6,000 == 309,000 ((美元美元))l l做为对比,现在用做为对比,现在用IBM模型计算:模型计算: PM == 5.2 (10)0.91 == 414.27 ((人月)人月) D == 4.1 (10)0.38 ==9.16 ((月)月) S == 0.54 (414.27)0.60 == 5.1 (人人) 高级高级COCOMO模型包括中级模型包括中级 COCOMO模型的所有特性,模型的所有特性, 但用上述各种影响因素调整工作量估但用上述各种影响因素调整工作量估算时,还要考虑对软件工程过程中每一步算时,还要考虑对软件工程过程中每一步骤(分析、设计等)的影响。

      骤(分析、设计等)的影响 l l例如,关于软件可靠性(例如,关于软件可靠性(RELYRELY))要求的工作量因要求的工作量因素分级表(子系统层),如表所示素分级表(子系统层),如表所示l l使用这些表格,可以比中级使用这些表格,可以比中级COCOMOCOCOMO模型更方便、模型更方便、更准确地估算软件开发工作量更准确地估算软件开发工作量 如果企业没有项目估计方面的历史数据,就不可能归纳出有效的数学模型,那么就采用简单直观的“分解-累计”方法好了不要企图寻找世界上最先进的数学模型来进行项目估计,那无疑于电脑算命 5.7.1 5.7.1 产品规模估计方法产品规模估计方法–(1)项目规划小组先分解产品的功能,制定“产品功能分解与规模估计表” 软件规模的度量单位主要有:代码行、对象个数、页面数等等–(2)规划小组各成员独立填写表格 –(3)汇总每个成员的表格,进行对比分析如果各人估计的差额小于20%,则取平均值如果差额大于20%,则转向第(2)步,让各成员重新估计产品的规模,直到各人估计的差额小于20%为止5.7 简单直观的估计方法简单直观的估计方法 5.7.2工作量估计方法(步骤与规模估计相似)工作量估计方法(步骤与规模估计相似)–先估算开发工作量。

      一般地可以把开发过程划分为需求开发、系统设计、实现、测试四个阶段,分别估计每个阶段的工作量,然后累计得出总的工作量 –再估算管理工作量一般地,项目的80%以上的工作量用于开发,20%以下的工作量用于管理 5.7.3 人力成本估计方法人力成本估计方法–如果已经估算出项目的工作量,那么估算人力资源成本就比较容易每人每年的成本显然高于年薪,因为每个人除了拿工资外,日常还要消耗公司资源,公司要额外支付各种保险金等–一般地,对于软件企业,每人每年的成本大约是其年薪的1.5至2.0倍(姑且称之为成本系数)如果成本系数太高的话,表示该公司要么福利极好要么铺张浪费;反之如果系数太低的话(最低为1.0),表示该公司福利极低 –简单的案例:如果乙方想承包甲方的项目,假设乙方估计该项目的工作量为10人年,乙方人员的平均年薪为8万元,成本系数为2.0请问乙方的人力资源报价如何?(设备成本、差旅费等等另外计算)乙方的人力资源报价应该是乙方的人力资源报价应该是: 1010×8 8×2.02.0==160160万元吗?万元吗?不对,如果这样报价的话,乙方的老板不对,如果这样报价的话,乙方的老板只好喝西北风了报价必须考虑利润,假设只好喝西北风了。

      报价必须考虑利润,假设双方可以接受的利润率为双方可以接受的利润率为2020%,那么乙方报%,那么乙方报价应该是价应该是160160×1.21.2==192192万元 5.8 关键计算机资源的估算►►包括开发环境、测试环境和用户环境中所使用的计算机资源►►它的估算与项目的规模、运行处理负载和通信量有关 5.9 影响估算的风险因素►►对项目领域的熟悉程度;►►对开发工具的熟悉程度;►►开发人员的生产能力 5.10 无效的项目估计无效的项目估计►►在某种情况下,任何的项目估计方法都没有实际价值,例如:1)项目的人员已经被上级领导限定死了;2)除了办公计算机和工资外,这个项目没有其它经费;3)项目的结束日期早就被领导和客户指定了,不管合不合理,时间一到就要交付软件►►如果人员、资金、时间都已经被毫无道理地指定了,进行科学地估计就没有用,这样的项目在国内并不少见。

      点击阅读更多内容
      相关文档
      安徽省安全员《A证(企业负责人)》冲刺试卷三.docx 2026年房地产经纪人《房地产经纪业务操作》预测试卷三.docx 安徽省安全员《A证(企业负责人)》模拟试卷一.docx 2026年房地产经纪人《房地产交易制度政策》模拟试卷四.docx 安徽省安全员《B证(项目负责人)》冲刺试卷二.docx 2026年房地产经纪人《房地产经纪专业基础》预测试卷四.docx 2026年房地产经纪人《房地产经纪业务操作》考前点题卷一.docx 2023年通信工程师《通信专业实务(传输与接入-无线)》试题真题及答案.docx 安徽省安全员《A证(企业负责人)》试题精选.docx 2026年房地产经纪人《房地产经纪专业基础》预测试卷二.docx 2026年房地产经纪人《房地产经纪业务操作》考前点题卷二.docx 2026年房地产经纪人《房地产经纪职业导论》冲刺试卷三.docx 2026年房地产经纪人《房地产交易制度政策》冲刺试卷三.docx 2026年房地产经纪人《房地产经纪专业基础》考前点题卷二.docx 2026年房地产经纪人《房地产经纪职业导论》冲刺试卷五.docx 2026年房地产经纪人《房地产经纪职业导论》冲刺试卷四.docx 2026年房地产经纪人《房地产交易制度政策》冲刺试卷一.docx 2026年房地产经纪人《房地产交易制度政策》冲刺试卷四.docx 安徽省安全员《B证(项目负责人)》冲刺试卷三.docx 2026年房地产经纪人《房地产经纪业务操作》模拟试卷二.docx
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.