不同类型软件的cocomo模型.pptVIP

  • 42
  • 0
  • 约5.9千字
  • 约 75页
  • 2018-04-28 发布于天津
  • 举报
不同类型软件的cocomo模型

软件工程 第4章 软件项目估算 对估算的认识 “如果能对所说的内容进行度量,并能用数字表示之,那么表明你对所说的内容有所了解;反之,如果不能对所说的内容进行度量,或者不能用数字表示之,则表明你对它知之甚少,无法令人满意;也许你对它的认识刚刚开始,远未达到科学的程度”。 对估算的认识 外星球是否存在智慧生命是我们地球人类永远感兴趣的话题,但这个存在的可能性有多少恐怕很难回答。人们可以糊里糊涂的推测,也可以无拘无束的猜想。有科学家甚至提出一个“德雷克(Drake)”公式来计算,其公式描述如下: 银河系中的高等文明数的估算 银河系中的高等文明数= 恒星总数×恒星拥有行星系统的概率×行星系统中产生生命的概率×生命中产生智慧生命的概率×智慧生命进入技术时代的概率×技术时代的平均持续时间÷银河系年龄。 德雷克(Drake)公式 在这个公式中,每一项乘积都是基于概率的,各项数值的估计随意性太大,很难有确切的计算结果。德雷克根据这一公式预言有4000个有交流能力的文明社会;阿西莫夫(著名预言家)在《地球以外的文明世界》一书中算出有53万个;可见估算误差如此之大! 这件事情告诉我们,估算在有些时候是需要的,但必须要接受它的不确定性。对于软件项目估算也是如此。 什么是估算? 估算的属性? 4.1.2 软件项目估算的特点 软件项目估算指软件开发过程中估算所花费的工作量及相应的代价。软件成本预测的直接目的是估算出成本和工作量,而其最终目的是为项目的过程和结果提供概率意义上的预测,同时可以用来改进软件过程。 软件项目估算的特点 软件项目与其他工程项目相比,有其特殊性,主要表现在软件开发是处在动态开发环境下,受诸多可变要素影响的不确定性活动。因此,要在项目早期做到精确地估算工作量是不可能的。 4.1.3 软件项目估算的复杂性分析 软件工程专家Roger S.Pressman指出,软件成本及工作量估算永远不会是一门精确的科学,人员、技术、环境、策略都会影响开发所需的工作量及软件项目的最终成本。软件成本估算经过几十年的发展,已经取得了较大的成就,但其估算准确度相比其他工程行业,还有较大差距。 项目估算中的错误范围 4.1.4 软件项目估算的相关内容 4.2 项目规模估算 在规模估算之前,软件功能需求必须被定义。在项目早期定义需求可能是非常困难任务。然而,在对需求一无所知的情况下,精确的估算出项目的成本和进度是不可能的。 表4-1 大型软件项目(产品)的规模(LOC) 4.2.1 基于代码行的规模估算 LOC指所有的可执行的源代码行数,包括可交付的工作控制语言语句、数据定义、数据类型声明、等价声明、输入/输出格式声明等。 代码行估算评价 代码行数量是对软件源代码行数的直观测量,由于代码行数量是所有软件开发项目都有的“产品”,且容易精确估算甚至自动计算获得,在目前仍然是常用的软件规模度量方法。 4.2.2 功能点估算 功能点(FP)是基于应用软件的外部、内部特性以及软件性能的一种间接的规模测量。其特征是:“在外部式样确定的情况下可以度量系统的规模”. 功能点估算表 功能点调整值 4.2.3基于计划评审技术的规模估算 PERT规模估计技术是一种基于β分布和软件各部分单独估算的技术。应用该技术时,对于每个软件部分要产生三个规模估算量,分别表示乐观、可能与悲观的值,所以又称三点估算法: ai:软件第i部分可能的最低规模; mi:软件第i部分最可能的规模; bi::软件第i部分可能的最高规模; 三点估算法 第i部分规模期望Ei : 三点规模估算的方差表示 三点规模估算的标准差表示 方差和标准差的意义 样本方差和样本标准差都是衡量一个样本波动大小的量,样本方差或样本标准差越大,样本数据的波动就越大。在PERT估算中,它表明估算的不确定性程度。如果方差很大,则说明悲观和乐观估值相差太多,这表明完成该工作存在的不确定因素较多;反之,则表明不确定因素较少。 4.3 工作量估算 基于LOC和FP的生产率计算 软件生产率是指人均每月所能生产的有效源代码行或功能点数。 软件生产率=项目规模(LOC或FP)/项目总工作量(人月) (单位:LOC/PM或FP/PM) 基于数学模型的工作量估算 一个典型的估算模型是通过对以前的软件项目中收集到的数据进行回归分析而导出的。 4.3.3 COCOMO模型 COCOMO是英文Constructive Cost Model的缩写,翻译为“构造性成本模型”。可以用来估算软件成本、工作量和进度计划。 COCOMO用3个

文档评论(0)

1亿VIP精品文档

相关文档