软件工程实践12项目跟踪.ppt
《软件工程实践12项目跟踪.ppt》由会员分享,可在线阅读,更多相关《软件工程实践12项目跟踪.ppt(64页珍藏版)》请在三一办公上搜索。
1、北京理工大学软件工程实践,汤铭端中国航天科工集团公司204所,第十二讲,软件估计软件项目跟踪与控制,内容和目的,了解软件估计的概念掌握基本的软件估计方法掌握软件项目追踪与控制的原理了解软件项目追踪与控制的过程,软件估计方法,经验方法类比方法三点法Delphi技术分解法宽带Delphi技术,功能点方法生产率因子方法COCOMO方法IBM模型,经验方法,根据估计者自己的经验进行估计根据大家的共同经验进行估计标准工法标准工时根据项目和项目组的具体情况进行调整,类比方法,使用过去类似项目的确切数字,考虑与当前项目的差异程度,来估计当前项目的相应数据。当前项目估计=参考项目数据(1+差异百分比)差异百分
2、比当前项目比参考项目多(正)或少(负)的百分比。规模估计可以选取功能、输入输出等作为比较的参考依据。如当前项目系统与系统XYZ类似,XYZ系统的规模是10K代码行,当前系统比XYZ系统增加了约10%的功能。对当前系统的规模估计是:10K(1+10%)=11K。,三点法(Putnam模型),通过估计最大值、最可能值、最小值,并加权平均的估计方法。估计期望值=(最大值+4最可能值+最小值)/6例如,若你认为软件规模的最大值是100K代码行,最小值是50K代行,而最可能值是60K代码行,则加权平均所获得的规模估计初始期望值为:(50+460+100)/6=65K代码行。,分解方法,进行整体估计感觉困
3、难的时候,可以采用分解方法。软件的功能结构、物理结构、软件项目的WBS等都为分解估计方法提供了参考框架。如根据软件的功能结构(逻辑结构)和/或软件(可能)的物理结构,将软件进行逐步分解,直至分解到能够对最小块进行较准确的估计。分别采用基于经验的方法和/或某种估计方法,对分解得到的各块进行估计。将这些子块的估计加在一起,获得对项目软件的整体估计。,各阶段工作量分布,德尔菲(Delphi)方法,在难以获得经验、历史数据及专家时,可考虑采用德尔菲方法作为一种有效的替代估计方法。德尔菲方法通过群体的智慧和交流分析来获得不断趋向准确和一致的估计结果。过程:成立估计小组,首先介绍项目和产品情况,而后让估计
4、小组成员分别进行估计,结果(第一轮)以列表和(或)直方图形式反馈给小组成员。在此基础上,估计值比平均值相差大的人各自讲述自己的理由,然后再分别进行下一次估计,得到新的估计结果(第二轮)。再次让小组讨论后进行新的估计(第三轮)。在第三轮结果的基础上进行最后的调整,得到的平均值就是估计结果。通过上述估计和反馈过程,人们的估计会越来越接近,意见更为统一,也就能得到综合各方面意见更为准确的结果。,宽带德尔菲(Wide Band Delphi),选择3至10名具有管理和估计经验的人员作为估计员共同讨论和了解软件项目的目标、范围、需求、资源分别按照各自的方法,对软件规模进行估计,并记录分别分析项目估计的意
5、外与风险,并确定估计风险与意外调整百分比分别根据其初始估计和估计风险与意外调整百分比,确定各自的最后估计或最后估计范围。计算公式为:最后估计=初始估计(1+意外调整百分比)最后估计范围=(1+减少调整百分比,增加调整百分比)初始估计必要时,安排进行讨论和再评估,以便进一步取得一致估计负责人对所有的最后估计进行平均,获得规模估计,生产率因子方法,假设在同等条件下开发速度(生产率)是一个常数。各机构可以根据以前的工作经验和历史数据,获得生产率因子。再根据估计的软件产品规模,估计项目的工作量和持续时间。确定项目产品的功能点估计项目工作量和持续时间5 功能点/人月 生产率因子9 功能点/人月生产率因子
6、平均值=8 功能点/人月工作量(人月)=功能点数/生产率因子持续月数=2.5(工作量人月数)0.38各阶段工作量划分,功能点方法,代码行数与编程语言相关的,不具可比性功能度量是一致的、可比的先进行核心计算获得未调整功能点(UFP),然后用调整因子获得值调整因子(VAF),将UFP乘以VAF,就达到了调整功能点(AFP)。AFP=UFPVAFUFP的计算:考虑五个功能分量:外部输入EI,外部输出EO,外部查询EQ,文件EIF,外部接口ILF。UFP=IEIEI+IEOEO+IEQEQ+IEIFEIF+ILIFLIFVAF根据软件项目和软件产品的14个相关属性计算获得。,未调整功能点UFP计算公式
7、,五个功能分量,用户输入数:计算每个用户输入,它们向软件提供面向应用的数据。输入应该与查询区分开来,分别计算。用户输出数:计算每个用户输出,它们向用户提供面向应用的数据。这里输出是指报表、屏幕、出错信息等。一个报表中的单个数据项不单独计算。用户查询数:一个查询被定义为一次联机输入,它导致软件以联机输出的方式产生实时的响应。每一个不同的查询都要计算。文件数:计算每个逻辑的主文件(如数据的一个逻辑组合。它可能是某个大型数据库的一部分或一个独立的文件。)外部接口数:计算所有机器可读的接口(如磁带或磁盘上的数据文件),利用这些接口可以将信息从一个系统传送到另一个系统。,调整功能点AFP计算公式,AFP
8、=UFP0.65+0.01Fi,I=1-14Fi是对影响产品规模的14个因素进行分析确定的“复杂度调整值”,取值范围是0-5Fi通过回答后面的问题后参照以下标尺得到,Fi,系统需要可靠的备份和复原吗?需要数据通信吗?有分布处理功能吗?性能关键吗?系统是否在一个已有的、很实用的操作环境中运行?系统需要联机数据项吗?联机数据项是否需要在多屏幕或多操作之间切换以完成输入?需要联机更新主文件吗?输入、输出、文件或查询很复杂吗?内容处理复杂吗?代码需要被设计成可重用吗?设计中需要包括转换及安装吗?系统的设计支持不同组织的多次安装吗?应用的设计方便用户修改和使用吗?,COCOMO方法,构造性成本模型(CO
9、nstructive COst MOdel)Barry Boehm 提出当前使用最为广泛和最有效的估计软件项目开发成本和工作量的方法两个核心方程:用规模估计工作量;用工作量估计项目持续时间Effort=a(Size)bTdev=c(Effort)dEffort(人月),Size(KLOC),Tdev(月),COCOMO的层次,基本COCOMO模型:将软件开发工作量(或成本)作为程序规模的函数进行计算,程序规模以估算的代码行表示中级COCOMO模型:将软件开发工作量(或成本)作为程序规模及一组“成本驱动因子”的函数来进行计算,其中“成本驱动因子”包括对产品、硬件、人员、项目属性的主观评估高级CO
10、COMO模型:包含了中级模型的所有特征,并结合了“成本驱动因子”对软件工程过程中每一个步骤(分析、设计等)的影响的评估,COCOMO针对的软件项目类型,有机方式(Organic),主要关注数据处理、事务和数据检索较小的、简单的软件项目,有良好应用经验的小型项目组,针对一组不是很严肃的需求开展工作嵌入式方式(Embedded),基于硬件系统的集成部件必须在一组严格的硬件、软件及操作约束下开发的软件项目半分离方式(Semi-Detached),介于有机方式和嵌入式方式之间一个中等的软件项目,具有不同经验水平的项目组必须满足严格的及不严格的需求,基本COCOMO的参数,中级COCOMO的公式和参数,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 实践 12 项目 跟踪

链接地址:https://www.31ppt.com/p-6441953.html