03.与方法相关.md
项目开发方法、节奏,生命周期阶段相关的活动和功能。将业务交付与干系人价值联系。促进可交付物的交付节奏。
可交付物:产品、结果、服务能力。
开发方法:创建和改进可交付物的方法,预测型、迭代型、增量型、敏捷型、混合型。
节奏:开展活动的节律。
项目阶段:一组有逻辑关系的活动集合,以一个或多个可交付物的完成为结束。
项目生命周期:项目从开始到结束所经历的一系列的阶段。
交付物决定开发方法和交付节奏,开发方法也决定了交付的节奏,开发方法和交付节奏决定了项目生命周期及其阶段。
# 交付节奏
一次、多次、定期、持续
一次:做奶茶
多次:医学制药
定期交付:排课
持续交付:软件交付,DevOps(Development和Operations),CI/CD/CD
# 开发方法
预测型:如名,通过专业经验去定义、手机、分析产品需求。借鉴类似的产品,制定计划,按照计划走。早起明确却相对稳定。
适应型:如名,愿景明确,但会不断的完善,需求高度不确定且易变。包括迭代型和增量型的方法。
混合型:预测和适应的结合。比预测要强,比适应性要弱。软件部分敏捷、硬件部分瀑布。
增量型:每次构建一部分
迭代型:多次循环,不断细化
选择开发方法的考虑因素:产品、服务、结果、项目。
# 生命周期绩效域
项目的生命周期:项目从开始到结束的主要阶段
项目阶段:一组有逻辑关系的项目活动的集合,以一个或多个可交付成果的完成为结束。
项目阶段:属性、名称
阶段关口:进行下一个阶段前的末尾审查。通过项目绩效(进度、成本、质量) VS 商业论证、章程、管理计划、效益管理计划 来审查。
五大过程组和十大知识域
原则:持续验证、经验教训、角色指责、阶段管理、例外管理、关注产品、必须裁剪。
主题:商业论证、组织、质量、计划、风险、变更、进展
阶段:可行性、设计、构建、测试、部署、收尾阶段。
协调交付节奏、开发方法和生命周期
开发方法和生命周期绩效域与干系人、规划、不确定性、交付、项目工作、团队绩效域相互作用。
模型映射
Cynefin 模型:划分问题,问题归类。简单、繁杂、复杂、混乱、失序。采用不通解决策略。
简单问题(知道的知道):了解,归类,响应。
繁杂问题(知道的未知):专家意见。感知,分析,响应。
复杂问题(未知的未知):事后方知。解决思路:试探,了解,响应。
混乱问题(没人知道):莫名其妙。及时止损。解决思路:行动,感知,响应。
尝试将混乱转变为复杂问题。
失序问题:不清楚到底是什么类型问题。先分解,在和以上四种场景对应,再分别处置。
Stacey 矩阵:从交付物需求相对不确定性和创建交付物的技术相对不确定性这两个维度来建立Cynefin模型。复杂程度是影响项目裁剪方法和实践的一个因素。
简单:预测型
繁杂:迭代型
复杂:增量型
混乱:不要碰
失序:敏捷型
预测、迭代、增量、敏捷型的特征
预测型:需求固定,活动仅执行一次,一次性交付,常用于管理成本。
迭代型:需求动态,反复执行直至完善,一次性交付,验证解决方案的正确性。
增量型:需求动态,对给定增量的活动执行,频繁且更小规模的交付,常用于提高交付的速度。
敏捷型:需求动态,反复执行直至完善,频繁且小规模的交付,常用于小规模交付来反馈出已实现的客户价值。
通过交付频率和变更程度的二维坐标系来分析出适合那种。
最好的方式创造商业价值
敏捷或者预测无关紧要,要知道怎么做才最成功。以下是几种不同的方式。
1
开发部分存在不确定性、复杂性、风险时,先用敏捷。
明确可重复的发布阶段,采用预测。
2
敏捷法:短迭代、每日站会、回顾。
预测法:前期评估、工作分配、进度跟踪。
3
预测为主,敏捷为辅。
4
敏捷为主,预测为辅。