第四讲-成本估算

上传人:dream****gning 文档编号:109010469 上传时间:2022-06-16 格式:PPTX 页数:33 大小:246.27KB
返回 下载 相关 举报
第四讲-成本估算_第1页
第1页 / 共33页
第四讲-成本估算_第2页
第2页 / 共33页
第四讲-成本估算_第3页
第3页 / 共33页
点击查看更多>>
资源描述
第四讲第四讲-成本估算成本估算估算的目标估算的目标 生成一个简单的表,描述要完成的任生成一个简单的表,描述要完成的任务、要实现的功能、以及完成每一项所需务、要实现的功能、以及完成每一项所需的成本、工作量和时间。的成本、工作量和时间。3、估算、估算1. 对估算的观察。对估算的观察。2. 项目策划过程。项目策划过程。3. 软件范围和可行性。软件范围和可行性。4. 资源。资源。5. 软件项目估算。软件项目估算。6. 分解技术。分解技术。7. 经验估算模型。经验估算模型。8. 面向对象项目估算面向对象项目估算9. 特殊的估算技术。特殊的估算技术。10. 自行开发或购买的决策。自行开发或购买的决策。3、估算、估算-对估算的观察对估算的观察w 估算是对未来的一种预测。有很大的不确定性。估算是对未来的一种预测。有很大的不确定性。w 采用实用技术,对时间和工作量进行估算。估采用实用技术,对时间和工作量进行估算。估算是所有其他活动的基础。好的估算方法和可算是所有其他活动的基础。好的估算方法和可靠的历史数据提供了好的希望。靠的历史数据提供了好的希望。w 估算的风险:取决于对资源、成本及进度的定估算的风险:取决于对资源、成本及进度的定量估算中存在的不确定性。量估算中存在的不确定性。w 采用现代软件工程的方法,可以在一定程度上采用现代软件工程的方法,可以在一定程度上接受用户需求的变更所带来的风险。接受用户需求的变更所带来的风险。3、估算、估算-项目策划过程项目策划过程w 软件项目策划的目标是提供一个能使管理软件项目策划的目标是提供一个能使管理人员对资源、成本及进度做出合理估算的人员对资源、成本及进度做出合理估算的框架。框架。3、估算、估算-软件范围软件范围w 软件范围描述了将要交给最终用户的功能软件范围描述了将要交给最终用户的功能和特性、输入和输出的数据、使用软件时和特性、输入和输出的数据、使用软件时要呈现给用户的内容,以及界定系统的性要呈现给用户的内容,以及界定系统的性能、约束条件、接口和可靠性。能、约束条件、接口和可靠性。w 确定软件范围的方法:与所有相关人员交确定软件范围的方法:与所有相关人员交流之后,写出对软件范围的叙述性描述。流之后,写出对软件范围的叙述性描述。由最终用户开发的一组用例。由最终用户开发的一组用例。3、估算、估算-软件可行性软件可行性四个固定因素:四个固定因素:w 技术:项目在技术上是可行的吗?它在技术水技术:项目在技术上是可行的吗?它在技术水平范围内吗?能够将缺陷减少到一定程度而满平范围内吗?能够将缺陷减少到一定程度而满足应用要求吗?足应用要求吗?w 经济:它在经济上可行吗?能以开发组织、客经济:它在经济上可行吗?能以开发组织、客户或市场负担起的成本完成开发吗?户或市场负担起的成本完成开发吗?w 时间:项目投入市场的时间可以击败竞争者吗?时间:项目投入市场的时间可以击败竞争者吗?w 资源:组织拥有取得成功所需要的资源吗?资源:组织拥有取得成功所需要的资源吗?3、估算、估算-资源资源w 人力资源。人力资源。w 可复用软件资源。可复用软件资源。w 环境资源。环境资源。项目资源图项目资源图对每种资源必须描述的特征对每种资源必须描述的特征1、资源的描述。、资源的描述。2、可用性说明。、可用性说明。3、何时需要该资源。、何时需要该资源。4、使用资源的持续时间。、使用资源的持续时间。3、估算、估算-软件项目估算软件项目估算 软件成本和工作量的估算从来没有成为一门软件成本和工作量的估算从来没有成为一门精确的科学。所以,一般是在一定的可接受的精确的科学。所以,一般是在一定的可接受的风险范围内的估算。风险范围内的估算。w 把估算推迟到项目的后期进行。把估算推迟到项目的后期进行。w 根据已完成的类似项目进行估算。根据已完成的类似项目进行估算。w 使用比较简单的分解技术,生成项目的成本和使用比较简单的分解技术,生成项目的成本和工作量估算。工作量估算。w 使用一个或多个经验模型来进行软件成本和工使用一个或多个经验模型来进行软件成本和工作量的估算。作量的估算。3、估算、估算-分解技术分解技术 软件估算是一种解决问题的形式,在多数软件估算是一种解决问题的形式,在多数情况下,要解决的问题非常复杂,不能作为一情况下,要解决的问题非常复杂,不能作为一个整体考虑。因此,要针对问题进行分解,把个整体考虑。因此,要针对问题进行分解,把它分解成一组小的问题,再定义他们的特性。它分解成一组小的问题,再定义他们的特性。w 软件规模估算。软件规模估算。w 基于问题的估算。基于问题的估算。w 基于过程的估算。基于过程的估算。w 基于用例的估算。基于用例的估算。w 调和不同的估算方法。调和不同的估算方法。3、估算估算-分解技术分解技术-基于规模的估算基于规模的估算 规模:是指软件项目可量化的结果。直接规模:是指软件项目可量化的结果。直接的方法是代码行技术,间接的方法是功能的方法是代码行技术,间接的方法是功能点技术。点技术。3、估算估算-分解技术分解技术-基于规模的估算基于规模的估算四种不同方法:四种不同方法:1、模糊逻辑:计划人员先确定应用类型,定性地、模糊逻辑:计划人员先确定应用类型,定性地确定其量级,然后在初始范围内在细化该量级。确定其量级,然后在初始范围内在细化该量级。2、功能点法:计划人员对信息域进行估算。、功能点法:计划人员对信息域进行估算。3、标准构件:项目计划人员估算每个标准构件出、标准构件:项目计划人员估算每个标准构件出现的次数,再根据历史数据来确定每个标准构现的次数,再根据历史数据来确定每个标准构件交付时的规模。件交付时的规模。4、修改法:计划人员要估算必须完成修改的数量、修改法:计划人员要估算必须完成修改的数量和类型。和类型。3、估算估算-分解技术分解技术-基于规模的估算基于规模的估算w 采用采用LOC或或FP方法之后,再采用三点估算法方法之后,再采用三点估算法(期望值估算法)进行校正。(期望值估算法)进行校正。 S =(Sopt + 4Sm + Spess )/ 6 Sopt - 乐观值。乐观值。 Sm - 可能值。(遵循可能值。(遵循 概率分布概率分布) Spess 悲观值。悲观值。3、估算估算-分解技术分解技术-基于问题的估算基于问题的估算w 代码行技术。代码行技术。w 任务估算技术。任务估算技术。w Delphi法。法。w 类比法。类比法。w 功能点估计法。功能点估计法。w PERT估计法。估计法。代码行技术代码行技术w LOC是指所有的可执行的源代码行数,包是指所有的可执行的源代码行数,包括可交付的语句、数据定义、数据类型声括可交付的语句、数据定义、数据类型声明、等价声明、输入明、等价声明、输入/输出格式声明等。输出格式声明等。一代码行(一代码行(1LOC)的价值和人月均代码)的价值和人月均代码行数可以体现一个软件生产组织的生产能行数可以体现一个软件生产组织的生产能力,开发组织可以根据对历史项目的审计力,开发组织可以根据对历史项目的审计来核算组织的单行代码价值。来核算组织的单行代码价值。 L = (a + 4m + b ) / 6;任务估算技术任务估算技术 w 项目计划人员首先给出一个有界的软件范围的叙述,再项目计划人员首先给出一个有界的软件范围的叙述,再由此叙述把软件分解成一些小的可分别独立进行估算的由此叙述把软件分解成一些小的可分别独立进行估算的子功能。子功能。w 然后对每一个子功能估算其然后对每一个子功能估算其FP(即估算变量)。(即估算变量)。w 生产率度量生产率度量(FPPM)用做特定的估算变量,导出子功)用做特定的估算变量,导出子功能的成本或工作量。能的成本或工作量。w 将子功能的估算进行综合后就能得到整个项目的总估算。将子功能的估算进行综合后就能得到整个项目的总估算。 计算公式计算公式: L = (a + 4m + b ) / 6;Delphi法法wDelphi法是最流行的专家估算法。是依靠一个或多个专法是最流行的专家估算法。是依靠一个或多个专家对项目做出估计,它要求专家具有专门知识和丰富家对项目做出估计,它要求专家具有专门知识和丰富的经验,是一种近似的猜测。的经验,是一种近似的猜测。 1. 向专家提供项目规格和估计表格。向专家提供项目规格和估计表格。2. 协调人召开专家讨论。协调人召开专家讨论。3. 各专家匿名填写估计表格。各专家匿名填写估计表格。4. 协调人整理估计表格,再将迭代表返回专家。协调人整理估计表格,再将迭代表返回专家。5. 协调人再次召开专家会,讨论较大的估计差异。协调人再次召开专家会,讨论较大的估计差异。6. 专家重新填写估计表。专家重新填写估计表。7. 重复重复4-6,直到达到一个最低和最高估计的一致。,直到达到一个最低和最高估计的一致。类比法类比法w 将新项目与历史项目比较,估算出各功能将新项目与历史项目比较,估算出各功能的估计值。的估计值。 等价代码行等价代码行 = (重新设计(重新设计%+重新编码重新编码+重新测试)重新测试)/3 * 已有代码行已有代码行3、估算估算-分解技术分解技术-基于过程的估算基于过程的估算w 最通用的项目估算技术是根据将要采用的最通用的项目估算技术是根据将要采用的过程进行估算。即,将过程分解为一组较过程进行估算。即,将过程分解为一组较小的任务,并估算完成每个任务所需的工小的任务,并估算完成每个任务所需的工作量。作量。w 具体方法:先抽取功能,在针对每个功能具体方法:先抽取功能,在针对每个功能所必需的一系列框架活动;计算每个功能所必需的一系列框架活动;计算每个功能的持续时间和所需要的人数(不同级别的的持续时间和所需要的人数(不同级别的人的工资不同),就可以计算工作量和成人的工资不同),就可以计算工作量和成本了。本了。3、估算估算-分解技术分解技术-基于用例的估算基于用例的估算建立基于用例的估算方法的困难:建立基于用例的估算方法的困难:1、没有标准形式。、没有标准形式。2、用例表现的是软件的外部视图。、用例表现的是软件的外部视图。3、用例没有标识它所描述的功能和特性的、用例没有标识它所描述的功能和特性的复杂性。复杂性。4、用例没有描述出涉及很多功能和特性的、用例没有描述出涉及很多功能和特性的复杂行为。复杂行为。3、估算估算-分解技术分解技术-基于用例的估算基于用例的估算w 当一个大型系统按层次分解完成后,并要求每个层次由不超过10个用例,每个用例的场景不超过30个时,可以采用如下的经验公式:但是,最终还要落实到LOC或FP上。基于用例估算的经验公式基于用例估算的经验公式LOC估算估算=N*LOCavg+(Sa/Sh-1)+(Pa/Ph-1)*LOCadjustN:实际用例数。:实际用例数。LOCavg在这种类型的子系统中,每个用例包含的平均场景数。在这种类型的子系统中,每个用例包含的平均场景数。LOCadjust校正值。以校正值。以LOCavg的的n%来表示。来表示。Sa:每个用例实际包含的场景数。:每个用例实际包含的场景数。Sh:在这类子系统中,每个用例包含的平均场景数。:在这类子系统中,每个用例包含的平均场景数。Pa:每个用例的实际页数。:每个用例的实际页数。Ph:在这类系统中,每个用例的平均页数。:在这类系统中,每个用例的平均页数。3、估算、估算-经验模型经验模型wIBM模型。模型。wPutnam模型模型wCOCOMO模型模型(COnstructive Cost MOdel)3、估算、估算-经验模型经验模型-IBM模型模型w 1977年,年,IBM的的Walston和和Felix提出。提出。w 估算公式:估算公式: E 5.2L0.91 L是源代码行数。是源代码行数。 以以KLOC计。计。 E是工作量。是工作量。 以以PM计。计。 D 4.1L0.36, D是项目持续时间是项目持续时间(以月计以月计)。 S 0.54E0.6, S是人员需要量是人员需要量(以人计以人计) 。 DOC 49L1.01。 DOC是文档数量是文档数量(以页计以页计)。 在此模型中,一般指一条机器指令为一行源代码。一个软件的源代码行数在此模型中,一般指一条机器指令为一行源代码。一个软件的源代码行数不包括程序注释、作业命令、调试程序在内。对于非机器指令编写的源程不包括程序注释、作业命令、调试程序在内。对于非机器指令编写的源程序,如汇编语言或高级语言程序,应转换成机器指令源代码行数来考虑。序,如汇编语言或高级语言程序,应转换成机器指令源代码行数来考虑。 3、估算、估算-经验模型经验模型- Putnam模型模型w 1978年年Putnam对从美国军队计算机指挥对从美国军队计算机指挥系统的软件项目中收集到的数据分析而得系统的软件项目中收集到的数据分析而得的估算模型。的估算模型。w Putnam模型是一个基于模型是一个基于Norden-Rayleigh曲线的动态模型,在工作量、提交时间和曲线的动态模型,在工作量、提交时间和程序规模之间有一个非线性的折中平衡功程序规模之间有一个非线性的折中平衡功能。能。w 适用项目规模:适用项目规模:30人年的项目。人年的项目。Putnam模型w td是开发持续时间(以是开发持续时间(以年计)。年计)。w K是软件开发与维护在是软件开发与维护在内的整个生存期所花费内的整个生存期所花费的工作量(以人年计)。的工作量(以人年计)。w L是源代码行数(以是源代码行数(以LOC计)。计)。w Ck是技术状态常数。是技术状态常数。 Ck值 开发环境 2000 差 8000 好11000 优3、估算、估算-经验模型经验模型- COCOMOw 这是由这是由TRW公司开发。公司开发。Boehm提出的结构型成提出的结构型成本估算模型,是一种精确、易于使用的成本估本估算模型,是一种精确、易于使用的成本估算方法。算方法。w 基本参数:基本参数: DSI(源指令条数)(源指令条数) KDSI1000DSI。 MM(度量单位为人月)。(度量单位为人月)。 TDEV(度量单位为月)表示开发进度。(度量单位为月)表示开发进度。Putnam模型中Ck值效益分析案例效益分析案例一个公司实际项目预算审批流程:一个公司实际项目预算审批流程: 项目经理提出项目经理提出-部门经理审核部门经理审核-项目管理部审核项目管理部审核-公司领导批准。公司领导批准。各项控制指标:各项控制指标:w 软件开发部门可控的费用:软件开发部门可控的费用:50%。w 与实际发生成本误差控制在与实际发生成本误差控制在10%10%。w 公司管理费大约占公司管理费大约占20-30%20-30%。w 平均利润在平均利润在30%30%左右。左右。
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 金融资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!