课程大纲:
一、案例分析
二、什么是敏捷软件开发
2.1 研发中项目管理的典型问题
?质量
?交付周期长
?效率低下
?交付延期
?交付不被市场/客户接受
2.2 软件管理方法总览
2.3 什么是敏捷项目管理
2.4 敏捷项目管理的解决之道
?总体框架:“需求-构建-发布”的快速迭代
?卓越交付:保证正确的构建正确的产品
?自组织团队
?短周期迭代
?可工作的完成标准
?价值驱动
?基于反馈的改进
?风险前移
2.5 敏捷项目管理的精要
?创造力来源于小而美团队
?短迭代的可工作的交付
?客户参与
?响应变化
?交付的价值优于完成的任务
?效率通过演进的流程获得
2.6 核心价值观
2.7 敏捷开发如何提升生产率?
2.8 敏捷开发如何提升质量
2.9 我是否该敏捷?
2.10敏捷对企业的价值
2.11研讨与演练:我们的痛点在那里?
三、敏捷项目管理提升研发流程的具体实践
3.1 项目团队管理-人是最重要
3.1.1敏捷团队的三个核心角色
3.1.2敏捷团队的角色职责
3.2 敏捷项目管理
3.2.1敏捷估计-估算扑克
3.2.2Delphi估算
3.2.3演练:我的故事要多少工作量?(使用客户内部开发需求)
3.3 敏捷项目计划管理
3.3.1迭代计划会
3.3.2计划会序曲-猪与鸡的故事
3.3.3猪与鸡的行为模式
3.4 项目过程与风险管理
3.4.1每日立会
3.4.1.1 为何站着开会?
3.4.1.2 每日立会成功的关键
3.4.1.3 现场演练:明天的每日立会
3.4.2燃尽图
3.4.2.1 燃烧图的团队“指纹”
3.4.3“迭代期内无变更”
3.4.3.1 拥抱变化还是恪守承诺?
3.4.3.2“迭代期内无变更”与研发心理学
3.4.3.3对策:MoSCoW方法
3.4.4故事板 Kanban
3.5 项目质量管理-高质量的交付
3.5.1评审会与反思会
3.5.1.1 评审会序曲
3.5.1.2 从外部理解团队目标
3.5.1.3 “可运行软件”的标准
3.5.2评审会
3.5.2.1 评审会的行为模式
3.5.2.2 引导客户表达需求
3.5.2.3 现场演练:为三个故事设定完成标准
3.5.3反思会
3.5.3.1 现实世界的反思会
3.6 大型项目管理
3.7 研讨与演练:基于客户团队的实际痛点进行讨论,从敏捷项目管理的角度讨论解决方案
四、敏捷软件开发工程实践
4.1 项目需求管理-用户故事-交付最有价值需求
4.1.1用户故事 = 用户 + 功能 + 价值
4.1.1.1 好故事的四个标准
4.1.1.2 切分故事
4.1.1.3 现场演练:将三个需求转换为用户故事
4.1.1.4(使用客户内部开发需求)
4.1.2用户建模
4.1.2.1 谁在用我的产品?
4.1.2.2 现场演练:针对三个需求进行用户建模
4.1.2.3(使用客户内部开发需求)
4.1.3超越敏捷-现实世界的用户故事
4.1.3.1 用户故事 = 需求文档?
4.1.3.2复合型的需求文档
4.1.3.3 敏捷中的精益理念
4.1.4需求优先级排序
4.1.4.1 以团队形式进行排序
4.1.4.2 超越敏捷-敏捷生态系统
4.1.4.3 用户故事的进化
4.1.4.4 敏捷生态系统初探:需求管理
4.1.4.5 从客户价值驱动到持续交付客户价值
4.2 团队结构与日常开发活动
4.2.1办公环境
4.2.2?“特性小组”
4.2.3?“松结对编程”
4.2.4“松结对编程”的小组长责任
4.2.5“松结对编程”的工作习惯
4.3 重构
4.3.1重构的定义
4.3.2为什么需要重构
4.3.3何时需要重构
4.3.4代码的坏味道
4.3.5各种重构的方法
4.3.6重复的代码
4.3.7重构演练
4.4 敏捷测试
4.4.1持续集成和每日构建
4.4.1.1 持续集成的概念
4.4.1.2 每日构建的概念和意义
4.4.1.3 每日构建的实施策略
4.4.1.4 每日构建和版本管理的集成
4.4.1.5 以每日构建为基础的发布管理和试验环境
4.4.1.6 Smoke Test和持续集成的关系
4.4.1.7 BVT Automation和Non BVT Automation是持续继承的有力保证
4.4.1.8 通过每日构建和持续集成,使得版本管理不仅仅记录代码的存在和历史,更保证代码的正确性
4.4.1.9 典型案例分析
4.4.2自动化测试
4.4.2.1 自动化测试概念,局限性
4.4.2.2 自动化测试基本理论
4.4.2.3 自动化测试实施
4.4.2.4 常用工具介绍
4.4.2.5 自动化测试成熟度
4.4.2.6 自动化测试评估
五、敏捷开发过程中的测试和度量活动
5.1 测试驱动开发
5.2 持续集成
5.3 测试用例设计
5.4 构建管理 持续集成 发布管理
5.5 敏捷度量-规模
5.6 敏捷度量-工作量
5.7 敏捷度量-进度
5.8 实践演练
六、组织级敏捷部署与绩效管理
6.1 敏捷三步走
6.2 敏捷成功与否的衡量标准是业务结果(质量、TTM)的改进
6.3 首次实施敏捷的参考步骤——八步曲
6.4 敏捷角色
6.5 项目组团队的组建方式:特性项目组和模块项目组优劣对比
6.6 项目级敏捷通用过程模型
6.7 项目级敏捷过程样例(版本中项目组全都实施敏捷)
6.8 敏捷团队绩效管理
6.8.1谁来管理团队中的个体?
6.8.2敏捷团队的目标
6.8.3从团队外部认识团队目标
6.8.4敏捷开发中的目标管理意识
6.9 执行与实施层面的敏捷实践
七、总结