软件工作量估算
Attributes 对工作产品 和任务估算
Define
Project
Life Cycle 定义项目 生命周期
Determine
Estimates
of Effort
and Cost 估算项目 工作量和成本
Planning Data
火龙果 整理
PROCESS IMPROVEMENT BASED ON CMMI-DEV
过程域内部结构-3/4
Planning Data
ቤተ መጻሕፍቲ ባይዱ
Establish
the Budget
and
Schedule 建立项目 预算/进度
SG2 Develop a Project Plan
Identify Project Risks
识别项目风险
Plan for Data Management
策划数据管理
Plan for Project Resources
火龙果 整理
PROCESS IMPROVEMENT BASED ON CMMI-DEV
培训内容
• 项目策划的目的 • 与其他过程域的关系 • 过程域的内部结构 • 特定目标与特定实践 • 通用目标与通用实践 • 项目策划过程示例
火龙果 整理
PROCESS IMPROVEMENT BASED ON CMMI-DEV
PROCESS IMPROVEMENT BASED ON CMMI-DEV
SG1 建立和维护对计划参数的估计
• SP1.1 建立工作分解结构WBS来估算项目的范围 • SP1.2 建立并维护对工作产品和任务属性的估算 • SP1.3 定义项目的生命周期,以便进一步开发项目计划 • SP1.4 基于估算方法估算项目工作产品和任务的工作量及成本
项目资源计划
Plan Stakeholder Involvement
涉众参与计划
Establish
the Project
Plan 制定项目计划
Plan for
Needed
Knowledge
and Skills 计划所需 知识和技能
Project Plans
火龙果 整理
PROCESS IMPROVEMENT BASED ON CMMI-DEV
火龙果 整理
PROCESS IMPROVEMENT BASED ON CMMI-DEV
软件项目估算方法:概述
• 估算方法
- 常用的估算方法:Delphi、PERT - 工作量估算模型:COCOMOII - 基于类比的估算:借鉴历史项目数据 - 规模估算方法:LOC(代码行)、FPA(功能点)、UCP(用例点)
• 需求管理(REQM):关于对策划和重新策划时所需要求的管理的信息 • 需求开发(RD):关于规定产品和产品部件的开发需求的信息,产品和产品部
件需求以及对这些需求的变更是策划和重新策划的基础。 • 风险管理(RSKM):关于风险的识别和管理 • 技术解决(TS):关于把需求转换成产品和产品部件解决方案的信息 • 测量和分析(MA):关于项目进展和性能度量的策划的信息
火龙果 整理
PROCESS IMPROVEMENT BASED ON CMMI-DEV
SP1.2 估计工作产品和任务的属性
• 子实践:
- 确定产品技术路线、分析产品特性 - 确定估算的方法 - 基于WBS的估算
• 工作产品:
- 估算结果:功能点、代码行、业务、功能项、界面、表、页、用例、类、对象、IOP点、 逻辑门、模块、任务 - 分析难度、复杂度、假定及过程要有记录 - 估算书/报告、估算中间结果/记录表、会议纪要、Project
外
系统边界
部
ILF
系
统
边
EIF
SYSTEM DB
界
SYSTEM DB’
火龙果 整理
PROCESS IMPROVEMENT BASED ON CMMI-DEV
软件项目估算方法:FPA的优点与用途
过程域内部结构-1/4
SG1 Establish
Estimates 建立估算
Planning Data
SG2 Develop a
Project Plan 制定项目计划
SG3 Obtain
Commitment
to the Plan 获得对计划的承诺
Project Plans
PMC
火龙果 整理
火龙果 整理
PROCESS IMPROVEMENT BASED ON CMMI-DEV
SP1.1 估计项目的范围
• 子实践:
- 根据用户需求确定项目范围、边界 - 基于生命周期产品结构形成WBS - 分析重用的、采购的、外包的组件 - 分析各种支持活动,如:QA、CM等 - 项目目标SMART(明确、可测量、可接受、可实现、有时限性)
组建专家组
系统介绍 PM
系统分解
设定额定偏差(S)
专家组
提交估计结果
计算均值(AVG) 主持人
取最大值(MX),最 小值(MN)
计算估计偏差(V)
V=max {abs (AVG-MX)/AVG, Abs (A-MN)/AVG}
[V> S]
[V< = S] ◎
[记录估计结果, 估算结束]
估计偏差讨论
火龙果 整理
项目策划的目的
• 项目策划的目的在于建立并维护规定项目各项活动的计划。 • 项目计划是执行和控制项目的基础。 • 项目策划过程域包括如下活动:
1. 制定项目计划 2. 与干系人进行适当沟通与交流 3. 获得计划的承诺 4. 维护计划
火龙果 整理
PROCESS IMPROVEMENT BASED ON CMMI-DEV
软件项目估算方法:Delphi与PERT比较分析
准确度
Delphi
受个体意志影响小,有利于独立思考 和逐步明确。估计结果较准确。
PERT 受人为因素影响大,准确度稍差。
可操作性 工作量投入较高,估算时间较长。
容易操作和理解,用时较短。
适合项目
适用于项目启动阶段初步估算。
适用于工期紧迫或项目中后期的重新 估算。
火龙果 整理
PROCESS IMPROVEMENT BASED ON CMMI-DEV
培训内容
• 项目策划的目的 • 与其他过程域的关系 • 过程域的内部结构 • 特定目标与特定实践 • 通用目标与通用实践 • 项目策划过程示例
火龙果 整理
PROCESS IMPROVEMENT BASED ON CMMI-DEV
影响项目失败的12个因素
火龙果 整理
PROCESS IMPROVEMENT BASED ON CMMI-DEV
项目知识体系(PMBOK)
火龙果 整理
PROCESS IMPROVEMENT BASED ON CMMI-DEV
项目阶段中各过程之间的关系
过程域内部结构-4/4
SG3 Obtain Commitment to the Plan
Review Plans that Affect the
Project 评审项目计划
Project Plans
Reconcile Work and Resource
Levels 配备工作与资源
Obtain
Plan
Commitment 获得对计划 的承诺
火龙果 整理
PROCESS IMPROVEMENT BASED ON CMMI-DEV
培训内容
• 项目策划的目的 • 与其他过程域的关系 • 过程域的内部结构 • 特定目标与特定实践 • 通用目标与通用实践 • 项目策划过程示例
火龙果 整理
• 工作产品:
- 技术WBS(产品分解结构)、SOW - 项目WBS (项目工作分解结构)
火龙果 整理
PROCESS IMPROVEMENT BASED ON CMMI-DEV
WBS分解原则
• 任务分层原则:项目->阶段->任务->子任务->工作单元。 • 80小时原则:80小时即10个工作日。理想目标是40小时,即5个工作日。 • 责任到人原则:如果必须由多人才能完成,建议指定一个责任人。 • 风险分解原则。 • 逐步求精原则。 • 团队工作原则。
PROCESS IMPROVEMENT BASED ON CMMI-DEV
过程域内部结构-2/4
SG1 Establish Estimates
Estimate the Scope of the Project
估计项目范围
Establish
Estimates of
Work Product
and Task
火龙果 整理
PROCESS IMPROVEMENT BASED ON CMMI-DEV
项目计划的作用
• 计划是连通团体的经脉
– 压力自上而下充分传递 – 提高团队工作效率 – 明确职责、获取承诺、管理期望 – 清晰地反映产品状态信息
• 计划是走向目标的诺言
– 确定工作总目标 – 控制开发进程 – 计划是工作的指南针 – 质量的保证
火龙果 整理
PROCESS IMPROVEMENT BASED ON CMMI-DEV
缺少计划的项目管理…
火龙果 整理
PROCESS IMPROVEMENT BASED ON CMMI-DEV
培训内容
• 项目策划的目的 • 与其他过程域的关系 • 过程域的内部结构 • 特定目标与特定实践 • 通用目标与通用实践 • 项目策划过程示例
• 三种类型的软件项目:
1.开发项目(Development)
2.增强项目(Enhancement)