第一部分推开高质效交付之门
本部分介绍软件交付过程的范围、内容和追求目标,以及数十年来软件工程、敏捷、精益、DevOps等运动在提高软件交付的质量和效率方面的探索和经验。
- 软件交付过程的范围
- 软件交付过程的内容
- 软件交付过程的追求目标:质量和效率
- 几十年来的探索
- DevOps运动
- DevOps相关标准
第二部分 软件交付过程与策略
本部分讲解软件交付过程的价值流也就是流程,简单来说,谁、什么时候、做什么事情。本部分还讲解把这个流程自动化的流水线等工具。
- 持续集成及其流水线
- 逐特性集成
- 提交集成之前的工作
- 【课堂练习】梳理当前项目中提交集成前工作的可改进之处
- 持续交付、持续部署及其流水线
- 特性间进一步解耦
- 在交付过程中运用精益思想
- 突破Scrum的若干约束
- 【课堂练习】把当前项目的发布频率提高一倍
- 实现多项内容协同交付
- 静态库的交付
- 尽快修复问题
第三部分版本控制
在软件交付过程中,程序改动不断累积汇聚,这就需要对它们进行版本控制。不仅是源代码需要纳入版本控制,各种配置、各种制品也应当纳入版本控制。本部分介绍版本控制相关内容。
- 版本控制之道
- 使用版本控制工具
- 分支策略
- 【课堂练习】梳理当前项目中分支策略及其可改进之处
- 使用制品管理工具
第四部分构建并部署运行
源代码经过构建形成安装包,安装包部署到运行环境中,程序才能运行起来,向用户提供服务。本部分介绍构建、部署以及构建环境、运行环境的管理。
- 构建过程
- 构建环境管理
- 部署过程
- 运行环境管理
- SQL变更管理
- 应用配置参数管理
- 【课堂练习】梳理当前项目中构建并部署运行相关的可改进之处 50分钟
第五部分测试的要点与策略
本部分培训测试要点与策略,涵盖静态测试、动态测试、非功能测试及生产环境测试,详解各类测试的含义、适用场景与执行时机,助力掌握全面测试方法。
- 各种静态测试
- 各种动态测试
- 各种非功能测试
- 各种生产环境测试
- 测试通用要点
- 测试通用策略
- 【课堂练习】梳理当前项目中测试相关的可改进之处
- 缺陷修复
第六部分组织结构与文化
组织结构设计的核心秘密是保持专注和减少依赖。保持专注才能越来越专业和高效,减少依赖就意味着减少沟通协调的麻烦。本不分主要讲述这两个原则在软件开发的组织结构设计中的应用,此外也会探讨文化对软件交付质量和效率的影响。
- 本部分培训内容介绍
- 关键思路
- 全功能团队还是职能团队
- 团队规模与层级
- 开发团队间的划分
- 组织级支持
- 团队间协作模式
- 【课堂练习】当前组织结构及其改进
- 团队文化
第七部分杂谈与总结
本部分培训平台工程、软件交付现状调研方法,通过课堂练习梳理项目交付情况,并总结软件交付十策略,助力掌握交付全流程方法。
- 平台工程:工具平台的建设与维护
- 软件交付现状调研方法
- 【课堂练习】梳理当前项目软件交付总体情况
- 总结:软件交付十策略
说明
- 本文档列出的内容是全集,可以据此裁剪。原则上可以根据学员水平和需求,任意挑选内容,形成定制课程。
- 远程培训无法进行课堂练习,定制课程中不能包含这类内容。面对面培训一般应包含相应课堂练习,以利于学员真正掌握。
- 本文档中,每部分、每节标出的时间是默认讲授时间。原则上可以根据学员水平和需求,任意压缩讲授时间。当然,压缩影响讲授效果。
- 由于远程培训时互动较少,讲授时间可按默认讲授时间的80%估算。
- 通常每天授课6小时,每小时包含休息10分钟,即总共300分钟。
- 远程培训每次通常不超过半天。面对面培训每次通常不超过2天。