估算专题讲义v5

上传人:子 文档编号:46906337 上传时间:2018-06-28 格式:PDF 页数:106 大小:1.68MB
返回 下载 相关 举报
估算专题讲义v5_第1页
第1页 / 共106页
估算专题讲义v5_第2页
第2页 / 共106页
估算专题讲义v5_第3页
第3页 / 共106页
估算专题讲义v5_第4页
第4页 / 共106页
估算专题讲义v5_第5页
第5页 / 共106页
点击查看更多>>
资源描述

《估算专题讲义v5》由会员分享,可在线阅读,更多相关《估算专题讲义v5(106页珍藏版)》请在金锄头文库上搜索。

1、项目估算项目估算北京英普信科技有限公司Process Improvement Solution., Inc. 2006年8月内部培训参考教材内部交流,请勿翻印2声明声明此教材限量用于已与北京英普信科技有限公司 签订合同的组织实施CMMI的内部培训参考使 用,不能用于任何其它目的。讲义中如有不准确或错误,欢迎给我们反馈。 (supportcmmi-)内部交流,请勿翻印3大纲(一)大纲(一)第一部分:概述关于估算的基本概念和认识估算框架生命周期阶段如何影响估算第二部分:项目估算对象项目的规模估算工作量、成本估算进度估算第三部分:几种估算技术常用估算方法PERT方法宽带DELPHI方法COCOMO模

2、型项目估算项目估算BUG数估算 程序可靠性估算 程序复杂性估算功能点法 PROXY方法 关键路径法内部交流,请勿翻印4大纲(二)大纲(二)第四部分:估算方法的使用估算参数建模和工具如何创建估算规程估算举例第五部分:估算方法练习及答疑使用前面讲的的12种估算方法针对所 给的案例进行估算练习计划和估算工作中遇到的问题咨询指导项目估算项目估算内部交流,请勿翻印5第一部分:概述第一部分:概述关于估算的基本概念和认识估算框架生命周期阶段如何影响估算内部交流,请勿翻印61.关于估算的基本概念和认识关于估算的基本概念和认识问题为什么要做软件项目估算?什么时间进行估算,估算的对象是什么?估算的准确性标准是什么

3、,什么是有效的估算?你知道或使用过哪些估算的技术和方法?如何选择估算的方法和工具?估算应遵守的原则和态度是什么?什么人才能做估算人员,要有些什么知识和经验?内部交流,请勿翻印7项目估算和计划活动的时间点项目估算和计划活动的时间点项目估算和计划活动贯穿项目的整个生命周期过程。在项目的早期阶段,对项目各子阶段的估算较为粗略随着项目的进展,在一个阶段完成,开始下一阶段的工作 时,要为下一阶段的工作进行更细化的估算和计划。内部交流,请勿翻印8CMMI 对估算的要求对估算的要求从二级开始估算,并不要求精确,但要求能不断改进文档化估算规程从现有的开始每次迭代均作改进 尽量使用数据,特别是自己的数据在项目生

4、存期内,随着信息的增加不断精化估算项目进程中,计划被不断修订,每次修订必须作估算。估算是经常作的。只有对项目选定一种(或几种)能够改进的 估算方法,多次估算的结果才能进行比较,才能积累经验和数 据,估算才能越来越准确。所有可靠的估算技术均依靠历史数据,历史数据愈多,估算愈 精确,高等级时可以根据自己组织的历史数据建立自己的估算 模型或获得更加准确的修正参数内部交流,请勿翻印9估算的准确性估算的准确性开始估算出来的规模和时间可能不很准确,这是正 常的。首要的目标是要学会作出无偏估算。也就是说每进 行10次估算,预计希望有5次高估和5次低估。估算上的偏差会逐渐减少,如能学会作出无偏估 算,就能减少

5、估算错误的平均值。Error%=100*(Actual Estimate)/Estimate内部交流,请勿翻印2.一个典型的估算框架一个典型的估算框架产品交付跟踪报告产品交付跟踪报告定义项目范围定义项目范围WBS分解分解估算规模估算规模估算资源估算资源生成进度生成进度开发产品开发产品规模、资源、 进度数据规模、资源、 进度数据分析过程分析过程可用资源可用资源规模 数据库规模 数据库生产率 数据库生产率 数据库数据、报表和文件任务数据、报表和文件任务客户客户需要客户客户需要内部交流,请勿翻印113. 生命周期阶段如何影响估算生命周期阶段如何影响估算应该在软件开发的各个阶段都进行估算,越到最后 阶

6、段估算越逼近真实值软件估算分为框架性预估和详细估算:框架性预估一般在商务报价前进行,需要考虑商 业竞争的因素。详细估算一般在需求比较明确的情况下进行。对于不同的生命周期模型及在生命周期的不同阶 段,可以选用不同的估算方法内部交流,请勿翻印12第二部分:项目估算对象第二部分:项目估算对象软件产品、过程、资源项目的规模估算工作量、成本估算进度估算BUG数估算程序可靠性估算程序复杂性估算风险及关键资源。一般这些量之间 有一定的关系, 由历史数据来定当缺乏历史数据 时,可分别估算 多个量,以便相 互验证内部交流,请勿翻印131. 规模估算规模估算规模 代码行(Line of Code - LOC) 功

7、能点(Function Points- FP) 文档页 用例数 数据库记录 屏幕或页面数应主要考虑以下问题: 在技术上可行的情况下,从最详尽的产品结构开始 精确定义规模度量的标准 估算每个产品元素的规模 汇总这些元素,得到一个总体估算 适当考虑偶然因素的影响软件估算首先要将整个工程的 规模估算出来,才能进行下面的其 他估算。 规模,就是一个工程可量化的 结果,是用具体数字来体现项目的 描述。规模估算的信息来源是清晰、 有界限的用户需求。内部交流,请勿翻印14软件代码行计算方法软件代码行计算方法估算和度量方法可执行的行数可执行的行数数据定义可执行的行数数据定义 注释屏幕上输入的物理行数逻辑分隔符

8、号行计算的类型仅新行新的修改的新的修改的重用的所有交付的临时支撑代 码所有交付的临时支撑代 码和支持代码内部交流,请勿翻印15用代码行和功能点估算规模的优缺点用代码行和功能点估算规模的优缺点代码行估算 优点:用软件代码行数估算软件规模简单易行。 缺点 代码行数的估算依赖于程序设计语言的功能和表达能力; 采用代码行估算方法会对设计精巧的软件项目产生不利的影响; 在软件项目开发前或开发初期估算它的代码行数十分困难; 代码行估算只适用于过程式程序设计语言,对非过程式的程序设 计语言不太适用等等。 功能点估算: 优点:功能点估算不依赖于程序设计语言。 缺点: 它涉及到的主观因素比较多,如各种权函数的取

9、值; 信息领域中的某些数据有时不容易采集; FP的值没有直观的物理意义。内部交流,请勿翻印16代码行和功能点的关系各种语言的LOC/FP代码行和功能点的关系各种语言的LOC/FP程序设计语言LOC/FP(平均值)汇编语言300COBOL 100FORTRAN 100Pascal 90Ada70面向对象的语言30四代语言(4GL) 20代码生成器15对若干软件采用事后处理的方式分别统计出不同程序设计语言每个功能点与 代码行数的关系,用LOC/FP的平均值表示。内部交流,请勿翻印17软件规模估算的两个要点软件规模估算的两个要点在估算软件规模之前,需要有一个一致的、可重复的 方法来描述产品的规模 ,

10、以确保当几个人分别独立地测量同一产品的规模时,他们要能 一致地得到相同的结果。由于手工统计既耗时又容易出错,规模最好能够自动 统计。内部交流,请勿翻印182. 估算开发工作量估算开发工作量_1是对开发软件所需的人员工作时间的估算,它和进度估算一起决定了开发团队的规模和构建。定义工作量统计单位:通常以人时、人天、人月、人年的单位来衡量,这些不同单位之间可以进行合理的转换。人月,每人月等价于30人天?人日,每人日等价于8小时工作日还是日历日?人时或标准工时内部交流,请勿翻印192. 估算开发工作量估算开发工作量_2在估算开发工作量时,要把生产产品的数量与耗费的开发工作量联系起来区别不同的产品类别和

11、过程阶段 统计产品的LOC时,不计算未改动的重用代码 估算生产率时,只统计那些修改过的,而不应该把删除的或 未改动的包括在内。如果重用的数量和改动的工作量太大应该先收集几个项目的数据,看看哪种统计方法可以使规模 和开发小时数有最好的相关性。使统计方法尽量简单,至少在收集了足够的基础数据之前是 这样。内部交流,请勿翻印20规模和工作量估算的一般步骤规模和工作量估算的一般步骤要完成的规模 有多大要完成的规模 有多大平均每单位规模需 要多少工作量或每个子单位规模需 要多少工作量平均每单位规模需 要多少工作量或每个子单位规模需 要多少工作量计算出总共需要的 工作量计算出总共需要的 工作量规模规模工作量

12、工作量成本成本人员人员时间时间进度进度生产率生产率子规模子规模 子规模子规模 子规模子规模 子规模子规模子规模子规模内部交流,请勿翻印21软件成本估算软件成本估算包括人力、物质、有形的、无形的支出成本估算, 其中以人力成本为主要部分。比较容易被忽视的使学习成本、软件培训成本、人 员变动风险成本、开发延期成本等,一些潜在成本 消耗。内部交流,请勿翻印223. 进度估算进度估算_1制定软件项目进度表有两种途径。(1)软件开发小组根据提供软件产品的最后期限从后 往前安排时间。(2)软件项目开发组织根据项目和资源情况制定软件 项目开发的初步计划和交付软件产品的日期。软件开发组织希望按照第二种方式安排工

13、作进度。 多数场合遇到的都是比较被动的第一种方式。对软件项目的进度安排比对软件成本的估算要求更 高。成本的增加可以通过提高产品定价或通过大批 量销售得到补偿,而项目进度安排不当会引起顾客 不满,影响市场销售。内部交流,请勿翻印23进度估算进度估算_2开发周期里程碑关键路径甘特图时差?进度是项目自始至终之间的一个时间段。?进度以不同阶段的里程碑作为标志。?进度估算是针对以阶段为单位的估算,而不是对每一个细小任务都加以估算,对任务的适当分解很重要,分解得越细反而会不准确。内部交流,请勿翻印24第三部分:几种估算技术常用估算方法第三部分:几种估算技术常用估算方法PERT方法宽带DELPHI方法类比法

14、功能点法 规模 PROXY方法 规模、工作量 COCOMO模型 工作量、成本、进度 关键路径法进度通用于所有估算对象内部交流,请勿翻印25基本估算策略基本估算策略自顶向下整体阶段-工作单元。估算工作量小,结果有盲目性。自底向上工作单元阶段整体。容易落掉一些管理工作量,结果易偏低。差别估算与历史项目比较。集中上述两方法,但有时不容易找 到相似的项目。内部交流,请勿翻印26选择估算方法的关键考虑选择估算方法的关键考虑简单的统计技术多个项目一般的描述信息简单的统计技术多个项目一般的描述信息简单估算关系算术至少一个相似项 目详细的产品信息算术至少一个相似项 目详细的产品信息类比法算术来自于一些项目 的

15、详细的数据详细的过程和产 品信息算术来自于一些项目 的详细的数据详细的过程和产 品信息基于活动的模型复杂的统计技术校准模型的数据一般的描述信息复杂的统计技术校准模型的数据一般的描述信息参数模型数学的复杂度所需要的的历史 数据假设的理解估算方法内部交流,请勿翻印271. PERT方法方法在采用自底向上的方法估算每一个子问题 时,可采用PERT方法。首先作出以下三种估算:-非常可能的值tm-最乐观的值to-最悲观的值tp再使用公式计算平均值= (to + 4tm + tp) / 6利用方差概念、概率分布,可得到平均值落在一个区间内 的概率 为预期平均值,概率是50% 左右扩大一个标准偏差,概率是8

16、4% 左右扩大两个标准偏差,概率是97.7% 左右扩大三个标准偏差,概率是99.9% 标准偏差=(tp - to) / 6方差=(tp - to)/ 6)2 内部交流,请勿翻印282. 宽带宽带DELPHI方法方法起源于Rand公司,后来由Boehm总结而得。Boehm这种方法要求 几位工程师各自单独估算,接着它用一个Delphi过程集成大家一致同 意的估算结果。基本过程如下:给专家组的每个人发放一份估算表格和程序规范。他们聚在一起讨论项目目标,做出设想并进行估算。然后,他们都不记名地列出项目任务和规模估算。这些估算都交给估算仲裁者,由仲裁者将结果列出表格并交给这些 专家,如图。仅仅标识出专家自己的估算,但其他人的估算都是不记名的。那些专家们一起讨论结果,每个人都评论他们所定义的任务

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

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