知行合一: 实现价值驱动的敏捷和精益开发
2020-04-16 11:28:49 0 举报
AI智能生成
知行合一: 实现价值驱动的敏捷和精益开发
作者其他创作
大纲/内容
第一部分 神形兼备的敏捷开发模式
1 从“先知后行”到“知行合一”——从传统开发模式到敏捷开发模式
1.1 重新审视项目成功的标准
1.1.1 传统的三要素不一定能客观度量项目的成功与否
1.1.2 新的项目管理铁三角
1.1.3 敏捷让我们实现价值驱动管理
1.2 重新审视瀑布模式为代表的传统开发方法
1.2.1 来自制造业的接力式开发模式
1.2.2 瀑布开发模式的不合理之处
1.3 复杂软件项目的共性:需求的不确定及技术的不确定
1.3.1 客户对自己真正需要的产品需要一个认识的过程
1.3.2 实现每个客户需求都有代价,但不是每个需求都有价值
1.3.3 技术平台的不确定性
1.3.4 团队一开始不了解自己的效率
1.3.5 传统方法不能高效解决这些不确定性带来的问题
1.4 从“先知后行”到“知行合一”
1.4.1 知行合一是自然的结论
1.4.2 敏捷就是在开发中学习、成长、调整和完善
1.4.3 敏捷是实现价值驱动管理的好方法
两个团队的故事
2 敏捷开发方法——摸着石头过河的智慧
2.1 经常被错误解读的敏捷宣言及敏捷原则
2.1.1 敏捷宣言是价值宣言
2.1.2 敏捷的12原则背后的故事
2.2 敏捷开发架构与Scrum:调整中增量开发
2.2.1 敏捷开发架构
2.2.2 用一分钟来解释一下Scrum以及Scrum中的3个角色、3个文档和5个会议
2.2.3 敏捷框架下看Scrum
2.2.4 Scrum和极限编程的结合使用
2.3 Scrum是一个实现敏捷价值及原则的开发管理架构
2.3.1 Scrum让敏捷价值的实现变得自然
2.3.2 Scrum是敏捷原则的具体体现
一个团队的两个故事
3 形神兼具——实现敏捷的核心价值
3.1 形似神不似的Scrum实施
3.1.1 Scrum不能保证解决问题,但能保证暴露问题
3.1.2 没有本地化的适配,敏捷过程很难落地生根
3.1.3 不要因为错误的原因引入Scrum,要明确引入敏捷的目的
3.2 使用Scrum的艺术
3.2.1 Scrum中的自我管理及实现方式
3.2.2 管理者从监控型到服务型的转变
3.2.3 追求问题的解决而不是最佳解决方案
3.2.4 对工程人员能力提升及自律的要求
3.2.5 Scrum实践的互补,完整的Scrum才最有价值
3.3 极限编程是Scrum最好的伙伴
3.3.1 技术债务:Scrum的杀手
3.3.2 极限编程的4个核心价值
3.3.3 极限编程的原则
3.3.4 极限编程的4个核心工程活动
3.3.5 极限编程的12条实践
3.3.6 极限编程+Scrum:1+1>2
3.4 引入Scrum等敏捷方法是一场需要勇气的变革
3.4.1 精益组织与敏捷团队
3.4.2 管理者的勇气:做有远见的智慧型领导者
3.4.3 工程人员的勇气:合奏与独奏
3.4.4 过程改进人员的勇气:找到你的定位
3.5 变革之路:从瀑布模式到敏捷模式的转化
3.5.1 瀑布模式到敏捷模式中人和组织的转化
3.5.2 瀑布模式到敏捷模式中企业文化及习惯的转化
3.5.3 瀑布模式到敏捷模式的转化过程
两个团队的故事
第二部分 建立以Scrum为框架的软件开发管理体系
4 布好自己的局——确定Scrum中的角色、文档和活动
4.1 敏捷转型的布局规划
4.2 建立自己的敏捷过程
4.2.1 建立一个端到端的敏捷过程
4.2.2 进入Scrum迭代的准备过程
4.2.3 敏捷迭代过程及验证过程
4.2.4 敏捷的改进过程
4.2.5 选择敏捷实践
4.3 确定Scrum的角色
4.3.1 猪和鸡合作创业的对话
4.3.2 选择Scrum产品经理
4.3.3 选择Scrum过程经理
4.3.4 选择Scrum团队成员
4.3.5 架构师在Scrum团队中的定位
4.3.6 Scrum of Scrum (大敏捷项目的管理)的安排
4.3.7 Scrum中的共享团队资源
4.4 敏捷过程对文档的要求
4.4.1 文档的价值及应用
4.4.2 敏捷文档制作指南
4.4.3 敏捷过程的需求文档
4.4.4 敏捷环境下的工程文档
4.4.5 必要的维护文档
4.4.6 敏捷(Scrum)的管理文档
4.5 建立一个成熟的Scrum过程
4.5.1 什么是成熟的敏捷过程
4.5.2 保证敏捷过程的执行力
4.5.3 保证敏捷过程的改进力
4.6 敏捷工具
两个敏捷角色的故事
5 迭代管理亦有道——执行Scrum项目管理
5.1 应对变化的敏捷计划:波浪式的版本规划
5.1.1 掌握你的团队速率
5.1.2 允许项目需求范围有一定的灵活性
5.1.3 遵循“最小有市场价值”原则制订产品版本计划
5.1.4 制订第一个版本计划
5.2 Scrum迭代中的管理:频繁反馈,及时调整
5.2.1 细化版本需求列表中的用户故事:准备好下一轮迭代的工作
5.2.2 计划下一轮迭代
5.2.3 开好每日站立会议
5.2.4 展示团队的迭代成果:开好迭代评审会议
5.2.5 不断完善Scrum过程:开好迭代回顾会议
5.3 建立、维护你的敏捷岛
5.3.1 迭代任务状态板块
5.3.2 其他信息板块
5.3.3 白板是最有效的沟通方式
5.4 Scrum中的风险管理
5.4.1 软件项目的5大风险来源
5.4.2 把握你的进度风险
5.4.3 把握好需求使之自然完善而不是遍地蔓生
5.4.4 建立一个T字型能力团队缓解团队不稳定风险
5.4.5 建立维护好产品规格
5.4.6 克服低效率风险的几个法宝
两个团队的故事
6 把握好敏捷的度——敏捷工程及质量控制实践
6.1 再议技术债务
6.1.1 技术债务的来源
6.1.2 管理技术债务
6.1.3 减少技术债务的实践
6.1.4 减少技术债务的具体步骤
6.1.5 技术债务的度量
6.2 敏捷中的需求开发及管理
6.2.1 敏捷四级产品计划
6.2.2 用户类型的识别过程
6.2.3 建立维护典型用户档案
6.2.4 从用例到用户故事
6.2.5 贯穿整个开发过程中的需求澄清:串讲及反串讲
6.3 敏捷中的设计和开发
6.3.1 简明设计原则
6.3.2 设计决策的时机
6.3.3 再议程序开发中的代码重构
6.3.4 敏捷中的评审
6.4 敏捷中的测试
6.4.1 测试驱动开发的价值及方法
6.4.2 持续集成:提高开发效率的重要保证
6.4.3 敏捷测试策略及方法
6.4.4 让发现的缺陷的价值最大化
6.5 健康迭代比速度更重要
两个团队的故事
第三部分 CMMI框架下的敏捷实施
7 盲人摸象——关于敏捷和CMMI的错误偏见
7.1 来自两个阵营的偏见
7.2 CMMI的核心和价值
7.3 CMMI+敏捷:解决软件开发问题之匙
7.4 来自敏捷宣言起草者及CMMI作者的最新声音
敏捷和CMMI的故事
8 建立敏捷的保护网——CMMI架构下的敏捷实施
8.1 从使用角度看CMMI
8.1.1 一个产品开发最佳实践的集合
8.1.2 CMMI的4条主线
8.1.3 正确解读CMMI评估
8.1.4 CMMI对工作产品(文档)的要求
8.2 完善Scrum实现CMMI项目管理的要求
8.2.1 需求管理和“Scrum+极限编程”
8.2.2 项目计划和“Scrum+极限编程”
8.2.3 项目监督与控制和“Scrum+极限编程”
8.2.4 供方协议管理和“Scrum+极限编程”
8.2.5 集成项目管理和“Scrum+极限编程”
8.2.6 风险管理和“Scrum+极限编程”
8.3 用敏捷实践实现CMMI工程活动的要求
8.3.1 需求开发和“Scrum+极限编程”
8.3.2 技术解决方案和“Scrum+极限编程”
8.3.3 产品集成和“Scrum+极限编程”
8.3.4 验证和“Scrum+极限编程”
8.3.5 确认和“Scrum+极限编程”
8.4 用敏捷手段实现CMMI支持活动的要求
8.4.1 敏捷环境下的过程与产品质量保证
8.4.2 敏捷环境下的配置管理
8.4.3 敏捷环境下的度量与分析
8.4.4 敏捷环境下的决策分析与解决
8.5 敏捷环境下实现CMMI过程管理的要求
8.5.1 敏捷环境下的组织级过程关注
8.5.2 敏捷环境下的组织级过程定义
8.5.3 Scrum环境下的组织级培训
8.6 敏捷环境下实现CMMI高成熟度的要求
8.6.1 敏捷下的量化管理:QPPO、基线及模型(OPP和QPM)
8.6.2 敏捷环境下过程优化管理:CAR和OPM
8.7 敏捷环境下的CMMI评估应关注的两个问题
8.7.1 实施选择还是模型要求
8.7.2 理解模型的目的
敏捷环境下的两个CMMI实施和评估故事
第四部分 新一代精益软件工程
9 敏捷不是解决软件开发问题的银弹
9.1 再议软件过程的特殊性
9.1.1 软件过程公理
9.1.2 软件过程体系应追求的价值
9.2 敏捷的局限及挑战
9.2.1 如何尽早获取有价值的用户反馈
9.2.2 如何设计软件架构支持快速迭代开发
9.2.3 缺乏具体有效方法实现敏捷原则
9.2.4 忽略了开发中的等待队列
9.2.5 忽略了开发过程中的变异管理
9.3 有效软件开发借鉴之源及应具备的特点
9.3.1 软件开发借鉴之源
9.3.2 有效软件开发模式应具备的特点
10 软件开发的新模式——新一代精益软件工程
10.1 初级软件精益开发模式:看板方法
10.2 精益软件开发框架
10.3 用经济指标指导软件开发
10.4 用基本队列理论、统计方法管理软件开发过程
10.4.1 管理好软件开发中的等待队列问题
10.4.2 软件开发过程中变异量的管理
10.5 两个关键关注点
10.5.1 控制好软件批量开发规模
10.5.2 控制好软件开发队列的WIP个数
10.6 精益管理控制实践
10.6.1 在充满不确定的环境下,尽可能保持流畅的软件开发通道
10.6.2 充分、及时、有效地利用开发过程中的反馈信息
10.6.3 软件开发中集中与分散协调控制机制
10.7 实践出真知
对本书的赞誉
序一
序二
序三
0 条评论
下一页