软件估算操作指南解析

上传人:我** 文档编号:112705674 上传时间:2019-11-06 格式:DOCX 页数:9 大小:40.36KB
返回 下载 相关 举报
软件估算操作指南解析_第1页
第1页 / 共9页
软件估算操作指南解析_第2页
第2页 / 共9页
软件估算操作指南解析_第3页
第3页 / 共9页
软件估算操作指南解析_第4页
第4页 / 共9页
软件估算操作指南解析_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《软件估算操作指南解析》由会员分享,可在线阅读,更多相关《软件估算操作指南解析(9页珍藏版)》请在金锄头文库上搜索。

1、1. 目的本文档规定了XX公司研发项目的软件估算过程,规范项目的软件估算过程,为项目计划过程提供软件估算方法。2. 适用范围本文档适用于XX公司范围内的研发项目。3. 参考资料 无。4. 术语定义术语定义技术专家估算中的技术专家包括技术经理,软件工程师或者其他技术专家5. 角色与职责无。6. 软件估算技术6.1 功能点技术 功能点计数的标准由IFPUG(International Function Point Users Group,国际功能点用户组)负责维护,可以在他们的网站www.ifpug.org找到该标准。 程序中的功能点数是根据下列对象的数量和复杂度得到的:外部输入:外部输入(Ext

2、ernal Input - EI)是指一个处理来自本应用边界之外的一组数据或者控制信息的基本处理。外部输入的基本目的是为了维护一个内部逻辑文件(ILF)或者改变系统的行为。具体为最终用户或其它程序用来增加、删除或改变程序数据的屏幕、表单、对话框或控制信号。外部输出:外部输出(External Output - EO)是指一个向应用边界之外发送数据或者控制信息的基本处理。外部输出的基本目的是为了向用户展示一组经过了除了提取之外的其他逻辑处理的数据或者控制信息。这里得其他处理包括至少一个数学演算或者对衍生数据的生成。外部输出也可能包括对内部逻辑文件(ILF)的维护或者对系统行为的改变。具体为程序生

3、成供最终用户或其它程序使用的屏幕、报表、图表或控制信号。外部查询:外部查询(External Query - EQ)是指是指一个向应用边界之外发送数据或者控制信息的基本处理。外部查询的基本目的是为了向用户展示提取的数据估算软件产品的规模主要依靠过去相关的经验,估算人员应当具有相似系统的开发经验,利用自上而下(top-down)或者自下而上(bottom-up)方式进行软件规模的估算。具体为输入/输出组合,其中一个输入引出一个即时的简单输出。内部逻辑文件(Internal Logical File):完全由程序控制的存在逻辑关联的一组最终用户数据或控制信息。逻辑文件可能是一个平面文件(flat

4、file),也可能是关系数据库中一个表。外部接口文件(External Interface File):受其它程序控制的文件,而且正在计算功能点的程序就是与该文件进行交互的。例如,进入或离开程序的所有存在逻辑关联的一组数据或控制信息。下表说明了将对输入和输出等的计数转换成原始功能点计数值的方法。这些数值的和就是原始功能点计数值。功能点程序特性低复杂度中复杂度高复杂度外部输入_*3_*4_*6外部输出_*4_*5_*7外部查询_*3_*4_*6内部逻辑文件_*7_*10_*15外部接口文件_*5_*7_*10计算出原始功能点计数值后,可以根据14个因素对程序的影响计算出影响力乘数。这些因素包括数

5、据通信、在线数据录入、处理复杂度、安装简易度等。影响力乘数的取值范围是0.65-1.35。使用原始功能点计数值乘以影响力乘数,可以得到调整后的功能点计数值。下表提供了一个计算最终的调整后功能点总数的例子。表中显示的输入、输出、查询、内部逻辑文件和外部接口文件的特定数量仅仅是用来解释计算方法的。计算功能点数如下:功能点程序特性低复杂度中复杂度高复杂度外部输入6_*32_*43_*6外部输出7_*47_*50_*7外部查询0_*32_*44_*6内部逻辑文件0_*72_*103_*15外部接口文件2_*50_*77_*10原始功能点总数284影响力乘数1.0调整后功能点总数2846.2 代码行技术

6、代码行技术是一种简单而直观的软件规模估算方法,它从过去开发类似产品的经验和历史数据出发,估算出所开发软件的代码行数。开发人员需要给出软件的范围描述,并进一步将软件分解成一些尽量小且可分别独立估算的子功能,通过估算每一个子功能并将其代码行数累加得到整个系统的代码行数。 估算时,要求评估人员给出乐观的( a )、可能的( m )、悲观的( b )三种情况,并采用以下公式计算估算结果,其中 L 是软件的代码行数,单位是行代码 LOC 或千行代码 kLOC 。 L ( a 4m b ) 6 举例:某软件系统中有一个指定窗口对象,开发人员估算处理该窗口编辑所需的支持代码在 200 400 行之间,并且认

7、为接近 200 行,这时最终的估算结果可能是: 266 LOC 计算代码行应遵循以下原则: 保证每个计算的“源代码行”只包含一个源语句; 计算所有交付的、可执行的语句; 数据定义只计算一次; 不计算注释行; 不计算诸如测试行、测试用例、开发工具、原型工具等使用的调试代码或临时代码; 在每一个出现的地方,每条宏的调用、激活或包含都作为源代码的一部分。 代码行技术的优点是简单方便,在历史数据可靠的情况下可以很快估算出比较准确的代码行数;其缺点是这种方法需要依赖比较详细的功能分解结果,难以在开发初期进行估算,其估算结果与所用的开发语言紧密相关,且无法适用于非过程语言。7. 软件估算方法7.1 自上而

8、下估算法该方法首先对整个系统进行总工作量估算,再考虑子系统,把总工作量逐步分解为各组成部分的工作量,并考虑到开发该软件所需要的资源、人员、质量保证、系统集成安装等的工作量。优点:估算的工作量小,速度快。缺点:对项目中的特殊困难估算不足,估算出来的工作量盲目性大,有时会遗漏被开发软件的某些部分。例如:接到一个周期为6个月的项目,项目经理可能做如下估算: 一个月:需求分析 一个月:设计 两个月:编码 两个月:测试再根据这个估算对每个阶段进一步估算和规划。7.2 自下而上估算法该方法是按组件划分,先对每个组件的工作量估算,然后总计得到整个项目的规模和工作量。优点:估算各个部分的准确性高,能提高参与人

9、的责任心;缺点:缺少各项子任务间相互联系所需要的工作量,还缺少许多与软件开发有关的系统级工作量。所以往往估算值偏低,必须用其它方法进行检验和校正。7.3 Delphi法在组织没有历史经验数据可供参考的情况下,或者历史经验数据库中有少于3 个类似项目的经验数据时,选择使用Delphi 法。Delphi 法可以使用会议形式或者独立估算形式。Delphi 法是最流行的专家估算技术,在没有历史数据的情况下,这种方式适用于评定过去与将来,新技术与特定程序之间的差别。尽管Delphi 技术可以减轻这种偏差,但专家“专”的程度及对项目的理解程度是工作中的难点。Delphi 法鼓励参加者就问题相互讨论。这个技

10、术,要求有多种软件相关经验人的参与,互相说服对方。Delphi 法通过多次独立的估算,使最终的结果趋于一致,从而得到最后的结果。Delphi 法估算出来的规模采用源代码代码行(SLOC)为单位,不利于采用不同开发语言的软件产品之间进行比较。Delphi法的估算过程:(1)协调人向各专家提供项目规格和估算表格;(2)协调人召集小组会各专家讨论与规模相关的因素;(3)各专家匿名填写迭代表格;(4)协调人整理出一个估算总结,以迭代表的形式返回专家;(5)协调人召集小组会,讨论较大的估算差异;(6)专家复查估算总结并在迭代表上提交另一个匿名估算;(7)重复4-6,知道达到一个最低和最高估算的一致。7.

11、4 类比法如果组织已经建立了历史经验数据库,并且历史经验数据库中有多于3 个(包括3 个)类似项目的经验数据时,则由程序经理根据历史经验数据库中的类似项目的数据进行估算。类比法适用于估算一些与历史项目在应用领域、环境和复杂度上相似的项目,通过新项目与历史项目的比较得到规模估算。类比法估算结果的精确度取决于历史项目数据的完整性和准确度,因此,用好类比法的前提条件之一是组织建立起较好的项目后评价与分析机制,对历史项目的数据分析是可信赖的。基本的类比估算过程:(1)获取以前相似项目详细的规模、工作量和成本结果数据。如果可能的话,应按照特性领域、工作分解结构(WBS)类别或其他分解方案分解后的信息进行

12、获取;(2)逐个部分地比较新项目和旧项目的规模;(3)根据新项目相对旧项目的比例估算其规模;(4)根据新项目规模相对旧项目规模的情况计算工作量估算值;(5)检查新旧两个项目中的假设是否一致。7.5 专家判断法到目前为止,专家的个人判断是实践中最常用的估算方法。对单个任务的专家判断估算构成了自底向上的估算的基础。7.6 挣值管理法 挣值管理(EVM)术语表2000版术语说明解释1996版术语说明PVPlanned Value(计划值)应该完成多少工作BCWS(计划工作的预算成本)计划工作预算成本EVEarned Value(挣值)完成了多少预算工作BCWP(完成工作的预算成本)完成工作预算成本A

13、CActual Cost(实际成本)完成工作的实际成本ACWP(完成工作的实际成本)完成工作的实际成本BACBudget at Completion(完工预算)全部工作的预算Budget at Completion(完工预算)全部工作的预算EACEstimate at Completion(完工估算)全部工作的成本Estimate at Completion(完工估算)全部工作的成本ETCEstimate to Complete(完工尚需估算)全部工作在当前预计的成本Estimate to Complete(完工尚需估算)全部工作在当前预计的成本计划成本(BCWS:Budgeted Cost

14、of Work scheduled): 当前报告期结束时所有预计要完成任务的成本的总和。进度预算(BCWP:Budgeted Cost of Work Performed): 当前报告期结束时已经完成任务的预算成本之和。实际成本(ACWP:Actual Cost of Work Performed): 已经完成任务的实际成本之和。成本偏差(CV): 成本偏差=BCWP-ACWP “+”有利;“-”不利 CV(%)=(CV)*100/BCWP成本绩效系数: CPI=(BCWP/ACWP) 1有利;1不利进度偏差(SV): 进度偏差=BCWP-BCWS “+”有利;“-”不利 SV(%)=(SV)*100/BCWS进度绩效系数: SPI=(BCWP/BCWS) 1有利;1不利其它度量完工尚需估算: ETC=EAC-ACWP完工估算: EAC=BAC/CPI EAC=ACWP+(BAC-BCWP)/CPI其它挣值性能度量数据日程性能指数(SPI): SPI=BCWP/BCWS 1.0表示项目进度领先于日程表;1.0表示项目进度落后于日程表成本性能指数(CPI): CPI=BCWP/ACWP 1.0表示项目在预算之内;1.0表示项目超出预算8. 软件估算项8.1 估算软件规模

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

当前位置:首页 > 高等教育 > 大学课件

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