当前位置:文档之家› 某软件项目估算培训教材.ppt

某软件项目估算培训教材.ppt


项目工作量的估算(Effort)
➢代码行(KLOC)---->工作量(人月)
➢方法2:COCOMA,一种基于代码行的工 作量估算法
E——工作量(人月) S——千源代码行(KLOC) EAF——Effort Adjustment Factor,工作量调整因子 a,b——随开发模式而变化的因子
项目工作量的估算(Effort)
1.21 1.10 1.00 0.90
1.14 1.07 1.00 0.95
1.24 1.10 1.00 0.91 0.82
1.24 1.10 1.00 0.91 0.83
1.23 1.08 1.00 1.04 1.10
项目工作量的估算(Effort)
➢详细COCOMA模型 ➢E=a(KLOC)b ×EAF
❖ 对于一个陌生的领域,这种复杂性和不确定性 会被放大。
❖ 软件规模越大,复杂性越高、不确定性就越大 ❖ 对当前项目的理解程度,缺乏理解,估算甚至
无从下手 ❖ 是否有足够历史数据,没有历史数据,就缺乏
参照物
软件项目估算
• 软件项目估算主要包括三个方面:
1. 规模和工作量的估算 • 确定每个软件功能所执行的一系列软件工 程任务 ,以及每项任务花费的时间
2.8 1.20
项目工作量的估算(Effort)
➢EAF
成本驱动量
描述
产 品
RELY DATA CPLX
必要的软件可靠性要求 数据库规模 产品复杂性
计 算 机
TIME STOR VIRT TURN
执行时间限制 主存限制 虚拟计算机可变性 计算机响应时间
ACAP 分析员能力
人 员
AEXP PCAP VEXP
2. 进度的估算 • 估计任务的持续时间,即历时估计
3. 资源和成本的估算 • 确定完成软件项目规模相应付出的代价
软件项目估算
规模估算
生产力数据
工作量估算
进度估算
资源估算
成本估算
人力成本
项目规模的估算(Size)
➢估计软件项目的规模,能为后面的工作量估
算、人员估算/计划、进度估算/计划提供依据, 是能直接决定和影响到其它三个估算的决策
项目规模的估算(Size)
➢规模的估算方法
➢代码行估算法 •估算单位:LOC/KLOC(源代码程序 长度的测量)
➢功能点(FP)估算法 •估算单位:FP(系统的功能点数目)
项目规模的估算(Size)
➢代码行估算法(LOC/KLOC) ➢可以用到以下的方法来估计代码行 •专家判定 •类比法(参考以往类似实现) •Pert法
为什么需要软件项目估算
• 软件项目的规模估计历来是比较复杂的 事,估计错误已被列入软件项目失败的 四大原因之一
• 项目组织原因 • 需求缺乏管理 • 缺乏计划和控制
软件项目估算
关于估算
➢估算不是很准确的,是有误差的 ➢经验(历史)数据非常重要 ➢不要太迷信数学模型
项目估算的挑战
项目的复杂性、不确定性是项目估算的挑战
应用经验 程序员能力 虚拟机经验*
LEXP 编程语言经验
项 目
MODP 现代编程经验 TOOL 软件工具使用 SCED 规定的开发进度表
取值
很低

一般

很高
非常 高
0.75 0.88 1.00 1.15 1.40
0.94 1.00 1.08 1.16
0.70 0.85 1.00 1.15 1.30 1.65
项目规模的估算(Size)
➢功能点估算法(FP)
➢在需求分析阶段基于系统功能的一种规模 估算方法
FP=UFC×TCF
未调整的功能ount) 技术复杂度因子(TCF,Technical Complexity Factor)
➢功能点也可以转换成代码行
项目估算
合同管理 启动 需求管理 任务分解 项目估算 项目进度 质量计划 配置计划 风险计划 团队管理 项目度量 集成项目 跟踪控制 项目结束
软件项目估算
• 软件项目估算是指预测构造软件项目所 需要的工作量以及任务经历时间的过程
软件项目估算
• 软件项目估算是有效的软件项目管理必 不可少的,没有比较精确的估算,软件 项目将不可避免地造成项目的超支和软 件开发工作处于失控状态等问题
1.00 1.11 1.30
1.00 1.06 1.21 1.66
0.87 1.00 1.15 1.30 1.56
0.87 1.00 1.07 1.15
1.46 1.19 1.00 0.86 0.71
1.29 1.13 1.00 0.91 0.82
1.42 1.17 1.00 0.86 0.70
半分离式 3.0 1.12 2.5 0.35
嵌入式
3.6 1.20 2.5 0.32
项目工作量的估算(Effort)
➢中级COCOMA模型
➢E=a(KLOC)b ×EAF
EAF----工作量调整因子EAF根据15个成本驱动量计算
开发模式 a b
有机式
3.2 1.05
半分离式 3.0 1.12
嵌入式
包括中级COCOMO模型的所有特性,但用上述各种影 响因素调整工作量估算时,还要考虑对软件工程过程中 每一步骤(分析、设计等)的影响
项目工作量的估算(Effort)
➢代码行(KLOC)---->工作量(人月)
✓要求功能分解足够详细的 ✓有一定的经验数据,比如生产率LOC/PM ✓生产率与具体的编程语言和平台有关 ✓在开发初期估算代码行较困难,适用于过程式程 序设计语言
项目规模的估算(Size)
➢代码行和功能点估算的输入: ------WBS
项目工作量的估算(Effort)
➢工作量的估算单位:
➢人月 ➢人天 ➢人年
项目工作量的估算(Effort)
➢代码行(KLOC)---->工作量(人月) ➢方法1:工作量=代码行/生产率
生产率 = KLOC/PM(人月) 质量 = 错误数/KLOC 成本 = 元/LOC (不同技术平台和语言的生产率 需要分别计算)
➢COCOMA ➢基本COCOMA模型 ➢中级COCOMA模型 ➢详细COCOMA模型
项目工作量的估算(Effort)
➢基本COCOMA模型
➢E=a(KLOC)b
E——工作量(人月) KLOC——千代码行 a,b——随开发模式而变化的因子
开发模式 a b c d
有机式
2.4 1.05 2.5 0.38
相关主题