2经验方法(专家判断) 根据估计者自己的经验进行估计 具有应用领域知识的人员对任务的评估 ■该方法特别是在对原有系统进行替换时有用,评估 者对影响的代码的比例进行分析,从而得到工作量 评估 ■根据大家的共同经验进行估计 ■标准工法 标准工时 ■根据项目和项目组的具体情况进行调整
2 经验方法(专家判断) ◼ 根据估计者自己的经验进行估计 ◼ 具有应用领域知识的人员对任务的评估 ◼ 该方法特别是在对原有系统进行替换时有用,评估 者对影响的代码的比例进行分析,从而得到工作量 评估 ◼ 根据大家的共同经验进行估计 ◼ 标准工法 ◼ 标准工时 ◼ 根据项目和项目组的具体情况进行调整
各阶段工作量分布 阶段 工作量分布比例 需求分析 18% 项目策划 5% 设计 20% 实现和集成 32% 测试 24% 形成产品 %
各阶段工作量分布 阶段 工作量分布比例 需求分析 18% 项目策划 5% 设计 20% 实现和集成 32% 测试 24% 形成产品 1%
3模型方法(参数估算法) 是一种使用项目特性参数建立数据模型来估算的方法, 是一种统计技术,如回归分析和学习曲线。 模型可以简单也可以复杂 参考历史信息 重要参数必须量化处理 ■根据实际情况,对参数模型按适当比例调整 应该具有良好的数据库数据为基础 比较简单,而且也比较准确 是最常用的估算方法 ■如果模型选择不当或者数据不准,也会导致偏差
3 模型方法(参数估算法) ◼ 是一种使用项目特性参数建立数据模型来估算的方法, 是一种统计技术,如回归分析和学习曲线。 ◼ 模型可以简单也可以复杂 ◼ 参考历史信息 ◼ 重要参数必须量化处理 ◼ 根据实际情况,对参数模型按适当比例调整 ◼ 应该具有良好的数据库数据为基础 ◼ 比较简单,而且也比较准确 ◼ 是最常用的估算方法 ◼ 如果模型选择不当或者数据不准,也会导致偏差
4分解方法 进行整体估计感觉困难的时候,可以采用分解方法。 软件的功能结构、物理结构、软件项目的WS等都为分 解估计方法提供了参考框架。 ■如根据软件的功能结构(逻辑结构)和/或软件(可能) 的物理结构,将软件进行逐步分解,直至分解到能够 对最小块进行较准确的估计 分别采用基于经验的方法和/或某种估计方法,对分解 得到的各块进行估计。 ■将这些子块的估计加在一起,获得对项目软件的整体 估计
4 分解方法 ◼ 进行整体估计感觉困难的时候,可以采用分解方法。 ◼ 软件的功能结构、物理结构、软件项目的WBS等都为分 解估计方法提供了参考框架。 ◼ 如根据软件的功能结构(逻辑结构)和/或软件(可能) 的物理结构,将软件进行逐步分解,直至分解到能够 对最小块进行较准确的估计。 ◼ 分别采用基于经验的方法和/或某种估计方法,对分解 得到的各块进行估计。 ◼ 将这些子块的估计加在一起,获得对项目软件的整体 估计
5三点法( Putnam模型) ■假设估计是概率事件,服从β分布 通过估计 ■悲观(最大)值 ■最可能值 乐观(最小)值 加权平均的估计方法 计期望值 (最大值+4X最可能值十最小值)6
5 三点法(Putnam模型) ◼ 假设估计是概率事件,服从ß分布 ◼ 通过估计 ◼ 悲观(最大)值 ◼ 最可能值 ◼ 乐观(最小)值 ◼ 加权平均的估计方法 估计期望值= (最大值+4×最可能值+最小值)/6