- 0
- 0
- 约2.11千字
- 约 43页
- 2017-10-11 发布于浙江
- 举报
5.软件工作量估计的
第5章 软件工作量估计;避免不现实估计的危险
了解可以使用的估计方法的适用范围
使用由底向上的方法估计项目
计算系统的功能点和对象点
估计使用过程编程语言实现软件所需要的工作量
了解开发工作量模型COCOMO方法;成功项目的一个定义是系统能够按时和在预算内交付,并能满足要求的质量。
估计过程的困难:
软件的新颖应用
变更技术
缺乏同类项目的经验
估计的主观特性
角色因素;战略策划
可行性研究
系统规格说明
评价供应商建议书
项目策划
;帕金森定律:工作总是用完所有可以利用的时间。
布鲁克斯定律:在一项延迟的工作上投入更多的人,可能导致该项工作更加延迟。
估计实际上不是预测,而是一个管理目标。
;需要历史数据
工作的度量:SLOC/KLOC
复杂性:取决于估计人员的主观判断
;算法模型
专家判断
类比
帕金森法
嬴的价格
自顶向下
自底向上
;估计人员将项目分解成构件任务,然后估计执行每个任务需要多少工作量。
由底向上法最适合于后期的更详细项目策划阶段。
如果一个项目完全是新颖的或者没有可用的历史数据,那么建议估计人员最好使用由底向上方法。;自顶向下法通常和参数模型相关。参数模型公式如下:工作量 = 系统规模×生产率
预测软件开发工作量的模型有两个关键构件:第一个是评估要承担的软件开发任务的规模的方法;第二个是评估做每项任务的效率。;专家评判往往是使用已标识的来自过去类似项目的非正式的类比法和由底向上估计法相结合的方法。
;Deiphi方法;;即基于案例的推理。估计人员从已经完成的项目中找出与新项目有类似特征的项目,然后将匹配的源案例已经记录的工作量作为目标案例的估计基础。然后对新项目进行估计。
项目间的接近程度计算方法:
欧几里得距离:[(目标参数1-源参数1)2+ … +(目标参数n-源参数n)2]1/2 ;类比估算要解决的问题:;例子:;类比估算的优缺点;5.8 Albrecht功能点分析;外部输入类型:通过界面等的输入,插入更新等操作都是典型外部输入
外部输出类型:仅仅输出,入导出,报表,打印等输出
内部逻辑文件类型:可以理解为业务对象,可能对应多个数据表
外部接口文件类型:其它应用提供的接口数据
外部查询类型:先要输入数据,在根据输入数据计算输出,如查询
;;Albrecht复杂度因子(主观)
;技术复杂度因子;例子:假设技术复杂度为平均水平;1. 计算UFC;2. 计算TCF;3. 计算功能点FP;
;对于每个事务,为调整的功能点的计算方法:
Wi × (输入数据元素类型数) +
We × (引用的实体类型数) +
Wo × (输出数据元素类型数)
;
;设想在最终系统中程序的数据和类型
估计每个已标识程序的SLOC
估计工作内容、考虑复杂度和技术难度
计算工作量(工作天数)
;COCOMO:Constructive Cost Mode
分为基本COCOMO模型,和中级COCOMO模型两种,前者是一个静态单变量模型,对整个软件系统进行估算;后者是一个静态多变量模型,将软件系统模型分为系统和部件两个层次,系统是有部件组成的。;E = ab(KLOC)exp(bb)
D = cb(E)exp(db)
式中E为开发所需的人月,D为所需的开发时间(月),KLOC为估计提交的代码行。ab、bb 、 cb 、 db是指不同软件开发方式的值。具体见下表:
;5.12.1 基本COCOMO模型;;基本模型考虑了软件开发方式和软件规模这两个重要因素, 为了提高测算精度,采用中级COMOCO模型。
先产生一个与基本COCOMO模型一样形式的估算公式,然后对15个“??本驱动属性”进行打分,定出“乘法因子”,对公式进行休整。
产品属性 计算机属性 人员属性 项目属性 ;Evaluation only.
Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.
Copyright 2004-2011 Aspose Pty Ltd.;软件生产率是指每个人一个月所能生产的有效源代码行数。
对软件生产率影响的因素很多,要得到准确结果并不容易。其影响因素为:
人的因素、问题因素、过程因素、生产因素、资源因素。
;确定功能
首先将功能反复分解,直到可以对为实现该功能所要求的源代码行数做出可靠的估算为止。然后可以给出极好、正常和较差三种情况下的源代码估算行数的期望值,分别用a、m、b表示。
;5.13 代码行的成本估算方法;根据经验数据,确定各子功能的代码成本行
计算各子功能的成本和工作量
计算开发时间
对结果进行分析比较
;估算的误差度;Evaluation only
原创力文档

文档评论(0)