目录
(3)类比 (自顶向下)估算法:信息不足时使用,例如招标时使用
(2)甘特图:方便的查看任务的工期、开始时间、结束时间以及资源的信息
(2)工程评估评审技术(PERT):PERT历时=(O+P+4M)/6
第一章
1、软件工程
软件工程 = 软件开发 + 项目管理 + 过程改善
2、项目
项目定义:项目是为了创造一个
唯一的产品
或提供一个
唯一的服务
而进行的
临时性
的努力。
项目的特征 (1)目标性
(2)项目的活动之间具有
相关性
(3)临时性(
限定周期
)
(4)独特性
(5)
资源约束性
(6)不确定性 (变更)
项目的特殊性: 逻辑实体,相对于物理实体
软件包括:程序 + 数据 + 文档,
不好监控
(学习软件项目管理的原因)
相互作用的系统,例如QQ,C/S
变更多,要管理好变更
渐近明细,随着项目推进不断细化明确
3、项目管理(
PMBOK
)
项目管理定义:是一系列的伴随着项目的进行而进行的、目的是为了确保项目能够达到期望的结果的一系列管理行为。
项目管理的5个标准化过程组:
启动
、
计划
、
执行
、
控制
、
总结
项目管理的知识领域:
范围
、
进度
、
成本
、
质量
、人力资源、沟通、
风险
、采购 、项目集成管理
软件项目管理的范围:
战略上:人员、问题、过程
战术上:质量、成本、进度(QCD):QCD可以量化的衡量软件项目是否成功
D:完成时间,天 C:开发效率,L/H Q:缺陷率,Bug/KL
4、软件过程
过程管理就是对过程进行管理,目的是要让过程能够被共享、复用,并得到持续的改进(用于管理最佳实践,不断优化组织的过程)
第二章
1、项目立项
定义:明确项目的
目标
、
时间表
、
使用的资源
和
经费
,而且
得到项目发起人的认可
。
关联:
决策
、
合同环境
(甲方需求方、乙方供应方)
2、项目章程
(1)项目确认
(2)项目目标描述
(3)授权项目->授权给项目经理 (项目经理的职责->计划、监控、分析、决策)
3、PMI人才三角
技术项目管理
、
领导力
、
战略和商务管理
第三章
1、生存期模型(软件的生命周期)
生存期模型:套路
预测生存期模型:瀑布模型、V模型
瀑布模型:前一个活动完成,后一个活动才能开始
V模型:更强调
安全可靠
,在汽车电子方面应用很广泛
原型模型:用于规避风险,原型的目的是确认需求、确认技术可行性
增量模型:对于大项目,规避
需求不明确和成果
物
完成时间点太靠后
的风险
螺旋模型:加强版的原型模型,应对各个阶段的风险。
渐进式增量模型:结合了增量和螺旋模型。
DevOps
模型
:面向运维的工作流、由D
evelopment
和
Operations
的组合,包含
开发
、
测试
、
运维
。
第四章
第四章
1、计划的重要性
软件项目中所有的工作,都必须在计划的指导下进行,进度计划是最重要的计划 。
2、进度计划的编制过程
任务分解
->
成本估算
->
确认资源
->
安排进度
3、软件需求管理包括
获取
、
分析
、
需求规格说明
、
验证
、
变更
验证的方法:评审、checklist
4、需求变更管理的过程
提出变更、变更评审、审批、变更通知、变更实施、变更跟踪、记录存档
5、 需求建模的基本方法
原型方法、结构化方法、面向对象的用例分析法、功能列表法
第五章
1、WBS
(
任务分解结构
)
WBS:任务分解结构,为了把任务变小,便于跟踪管理
WBS是面向可交付成果的(WBS分解的结果是任务,这个任务要对应着成果)
不在WBS中包括的工作就不是该项目的工作
工作包应当由唯一一个部门或承包商负责
WBS是由粗到细的
分级的树形结构
2、任务分解(
清单表示法、图表表示法
)
任务分解过程
输入(需求)-> 分解 -> WBS
任务分解步骤
1) 确认并分解项目的组成要素(WBS编号)。
2) 确定分解标准,按照项目实施管理的方法分解,而且分解的标准要统一。
3) 确认分解是否详细,是否可以作为费用和时间估计的标准,明确责任。
4) 确定项目交付成果(可以编制WBS字典)。
5) 验证分解正确性。验证分解正确后,建立一套编号系统。
分解标准
功能
和
生存期
,分解标准要统一。
任务分解方法
模版
、
类比
、
自上而下
、
自下而上
任务分解检验
1)最底层的要素是否是实现目标的充分必要条件
2)最底层要素是否有重复的
3)每个要素是否清晰完整定义
4)最底层要素是否有定义清晰的责任人,是否可以进行成本估算和进度安排
3、 任务分解指南
WBS分解的规模和数量因项目而异、因项目经理而异
收集与项目相关的所有信息
参看一下类似的项目的WBS,与相关人员讨论
可以参照模板
最低层是可控的和可管理的,但是避免不必要的过细,最好
不要超过7层
,
软件项目
推荐分解到40小时的任务
每个Work package必须有一个提交物
定义任务完成的标准
每个WBS必须有利于责任分配
可以准备WBS的字典
最后与相关人员进行评审
4、 WBS的意义
提供了项目范围基线(也叫基准,是后续工作的基础),是范围变更的重要输入
为评估和分配任务提供具体的工作包
进行估算和编制项目进度的基础
对整个项目成功的集成和控制起到非常重要的作用
第六章
1、进度
成本 + 资源 => 进度
2、成本估算和成本预算的区别:
估算是资源成本的近似估算,是整体
;
预算是将估算分配给任务,是部分
;
3、规模:
是
成本的主要因素
,是
成本估算的基础
规模的单位:
LOC
(
软件规模代码行
)、
FP
(
数式程序设计
)、
人时
、
人日
、
人月
、
人年
4、软件的规模和成本的关系
工作量 = 规模 / 开发效率
成本 = 工作量 * 成本参数
5、成本估算过程
输入:需求、WBS 估算:
直接成本
、
间接成本
输出:估算文件、估算说明
6、成本估算方法
(1)
代码行
L是源代码行数(以千行计),E是工作量(以人月计)
IBM:E(工作量)=5.2*L^0.36 D(项目持续时间)=4.1*L^0.36
S(人员需要量)=0.54*E^0.6 DOC(文档数量)=49*L^1.01
(2)
功能点
:FP = UFC * TCF
UFC是分类加权 UFC的功能计数项:
外部输出
、
外部文件
、
外部查询
、
外部输入
、
内部文件
TCF是技术复杂度乘法因子
斐波那契数列(Fibonacci)
计算功能点:f(n)=f(n-1)+f(n-2)
TCF=0.65+0.01(SUM(Fi))
(3)类比 (自顶向下)估算法:信息不足时使用,例如招标时使用
(4)自下而上估算法:根据WBS估算,比较准确
(5)
参数法估算法(
E=A+B*S^C
)
总公式:E=A+B*S^C,其中E是工作量,s是参数(LOC或FP)
cocomo模型等级:基本cocomo;中等cocomo;高级cocomo;
有机
、
半有机
、
嵌入式
基本cocomo公式:
中等cocomo公式:
*(6)
专家估算法
第一步:每个专家的估计结果,
Ei = (ai + 4mi + bi) / 6
第二步:所有专家的平均值,
E = (E1 + E2 … + Ei) / n
第三步:计算每个专家与平均值的估算差异
(7)用例点方法
通过分析用例角色、场景和技术与环境因子等来进行软件估算。
7、估算方法总结
1.各阶段所用估算算法
初期:
类比估算法
、
专家估算
计划和实施阶段:时间允许的情况下,首选
自下而上
、
参数模型
2. 软件估算模型
对任务进行分解(WBS):1,2,…,i…
估算每个任务的成本Ei
直接成本=E1+E2+……+ Ei+……+ En
项目总估算成本 = 直接成本+间接成本
直接成本=规模*人力成本参数(人月、人时…)
估算成本=规模*成本系数
项目总报价=项目总估算成本+风险利润
3.估算不准的原因
基础数据不足
缺乏经验的估算人员
签约前后的不连贯
低劣的推测技术
估算对需求的敏感性
4.避免低劣估算
避免无准备估算
留出估算的时间,并做好计划
使用以前的项目数据
使用以开发人员为基础的估算
分类法估算
详细的较低层次上的估算
使用软件估算工具
第七章
1、进度管理的意义
进度管理是为了确保项目按期完成所需要的过程
按时完成项目是项目经理最大的挑战之一
时间
是项目规划中灵活性最小的因素
进度问题
是项目冲突的主要原因,尤其在项目的后期
2、进度管理过程
活动定义(Activity definition)
活动:WBS,或在WBS上细化的任务
活动排序(Activity sequencing)
使用最多的是结束-开始关系
活动历时估计(Activity duration estimating)
任务资源估计
制定进度计划(Schedule development)
进度控制(Schedule control)-项目跟踪
3、进度管理图示
(1)
网络图
:PDM和ADM
ADM也称AOA,双代号网络图、箭线图法,用箭线表示活动、节点表示事件的一种网络圈绘制方法。逻辑关系仅有FS;
PDM也称AOD,单代号网络图、前导图法,它使用方框或者长方形(被称作节点)代表活动,它们之间用箭头连接,显示它们彼此之间存在的逻辑关系。支持四种逻辑关系,即
FS、SS、FF、SF
4种类型的依赖关系:
(l)结束•开始的关系(F-S型)。前序活动结束后,后续活动才能开始。
(2)绪束一结束的关系(F-F型)。前序活动结束后,后续活动才能结束。
(3)开始。开始的关系(s-s型)。前序括动开始后,后续活动才能开始。
(4)开始:结束的关系(S-F型)。前序活动开始后,后续活动才能结束。
(2)
甘特图
:方便的查看任务的工期、开始时间、结束时间以及资源的信息
(3)里程碑图:仅仅表示事件的标记
(4)资源图
4、网络图任务进度时间参数:
时间特性:
单向性、不可重复性、不可替代性
时间公式:
(1)自由时差 =所有紧后工作中最早开始时间最小值- 最早结束时间
FF=ES(successor)-EF(predecessor)
(2)总时差 =最迟开始时间-最早开始时间=最迟结束时间-最早结束时间
TF=LS-ES=LF-EF
5、历时估计方法
(1)定额估计:T=Q/(R*S)
T:活动的持续时间 Q:活动的工作量 R:人力或设备的数量 S:产量定额单位时间完成的工作量
(2)工程评估评审技术(PERT):
PERT历时=(O+P+4M)/6
O是乐观值,P是悲观值,M是最可能值
标准差δ=(最大估算值-最小估算值)/6
方差δ^2=[(最大估算值-最小估算值)/6]^2
项目在n天完成的概率:(n+δ)-(n-δ)/总时间
(3)基于承诺的估计
(4)Jones一阶估算准则
(5)其他策略: 专家法
类比法
估算软件
6、编制项目进度计划的步骤
进度编制:
关键路径法(CPM):
关键路径
(
CP
)
:
是决定项目完成的最短时间,是浮动为0的路径
正推:
EF+Lag=ESs(ESs是后置任务的最早开始时间)
EF=ES+duration(任务的历时时间
)
逆推:
LS=LF-duration(任务的历时时间)
LS-Lag=LFp(LFp为前置任务的最晚完成时间)
正推法容易错的点:有多个前置任务的任务
逆推法容易错的点:有多个后置任务的任务
原则:推出时间后,验证一下,后置任务的开始时间不能小于前置
任务的结束
时间压缩法:
一、(
应急法
)
赶工
进度压缩单位成本法(单位时间压缩成本)
项目存在最短进度 、压缩成本和时间的关系
进度压缩因子法:进度压缩因子=压缩进度/正常进度
要锁进度的工作量=正常工作量/进度压缩因子
(
平行作业法
)
快速跟进
二、关键链法
约束、管理预留
7、总结
编制项目进度计划的步骤
1. 进度编制
进度编制方法总结:
正常情况下:关键路径法 + 管理预留
异常情况下(时间不够的情况):时间压缩
2. 资源调整(略)
3. 成本预算(略)
4. 计划优化调整:进度能不能缩短,成本能不能降低(略)
5. 计划基线(略)
第八章 软件质量
1、软件质量定义
(1)软件质量:
是软件满足明确说明或者隐含的需求的程度
(2)软件质量框架模型的3层构架:质量特征、子特征、度量因子
(3)质量的重要性:是项目管理的最高统一(
进度
、
质量
、
费用
)
软件危机的主要矛盾
低质量的软件就像定时炸弹
低质量的产品,增加成本
质量是生命也是信誉
(4)审计:是对过程或产品的一次独立质量评估
(5)项目执行过程审计:对项目过程中的工作产品进行质量审查的过程,功能:记录不符合项、编写产品审计报告
(6)
质量管理=质量保证+质量控制+质量计划
(7)
质量成本CoQ =预算成本+缺陷成本
2、软件质量管理过程
软件项目的质量计划
质量估算结果,分配到活动中
软件质量保证:审计(
质量保证=项目执行过程审计+项目产品审计
)
质量保证不能直接提高产品质量,关注过程,由质量保证人员实施
软件质量控制:评审、测试、跟踪
质量控制是能够直接提高产品质量,关注产品,由开发人员实施
第九章 配置管理
1、配置管理定义
配置管理的意义:确保软件开发者在软件生命周期中的各个阶段都能得到精确的产品配置,最终保证软件的
完整性
、
一致性
、
追朔性
、
可控性
配置管理的的主要功能:
版本管理
、
变更管理
配置项SCI :系统规格说明书、软件需求规格说明书、软件规格说明书、源代码、测试规格说明书…
基线:标志开发过程一个阶段的结束和里程碑
配置控制委员会
SCCB
:评估变更、批准变更申请、在生存期内规范变更申请流程、对变更进行反馈、与项目管理层沟通
2、配置管理过程
(1)配置项标识、跟踪
(2)配置管理环境建立
(3)基线变更管理 基线变更:
变更请求
、
变更评估
、
变更批准/拒绝
、
变更实现
(4)基线审核
(5)配置状态统计
(6)配置管理计划
3、配置管理工具功能
版本管理、变更管理、问题追踪、建立管理、状态统计、配置审核、访问控制和安全控制
第十章 项目沟通
1、项目沟通的基本原则
及时性
、
准确性
、
完整性
、
可理解性
2、项目沟通的方式
(1)书面沟通和口头沟通
(2)语言沟通和非语言沟通
(3)正式沟通和非正式沟通
(4)单向沟通和双向沟通
(5)网络沟通
3、项目经理80%以上的时间做沟通
4、
沟通渠道=N(N–1)/2
5、人力资源计划
职能型组织结构
:
可以充分发挥部门资源优势集中的组织结构
组织结构的特性:临时性、目标性
组织形式:
职能型
、
项目型
、
矩阵型
项目型不能资源共享,
项目涉及多的领域和特性
选择矩阵型
第十一章 项目风险
1、项目风险的三要素
事件
、
概率
、
影响
风险的类型:
(1)预测角度:已知风险、可预测风险、不可预测风险
(2)范围角度:项目风险、技术风险、商业风险
2、风险的基本性质
风险的
客观性
、风险的
不确定性
、风险的
不利性
、风险的
可变性
、风险的
相对性
、风险同利益的
对称性
3、风险管理的四个过程
识别
、
评估
、
规划
、
跟踪控制
4、风险识别方法
德尔菲方法
、
头脑风暴法
、
情景分析法
、
风险条目法
5、风险评估(定量风险评估)
访谈、模拟、决策树分析、量化风险条目检查表
6、风险规划
回避风险
、
转移风险
、
损失控制
、
自留风险
第十二章 项目合同
1、合同的生存期
准备
、
签署
、
管理
、
终止
2、合同类型
成本补偿合同CPCC、固定价格合同FFP、单价合同
3、项目集成管理
项目集成管理-> 项目的各个目标相互制约:质量、进度、成本、范围、其他
基准计划:产品规格/质量、成本、进度
第十三章 笔记和习题获取
1.笔记
百度网盘链接:
https://pan.baidu.com/s/1nSqk4S6sSx3P-XRzG0l34A
提取码:sv8v
2.习题
本人csdn记录:
https://blog.csdn.net/weixin_42139734/article/details/108662614
百度网盘链接:
https://pan.baidu.com/s/1ZJ4l6mKxAt9dqhw0Qa58xA
提取码:j4jz