敏捷是在极具创新要求的产品背景下,对软件工程方法提出的新改进。敏捷方法更加强调人在软件开发中的作用,强调自组织、自管理原则,授权于项目开发团队,通过频繁运用“检查-调整”周期加速创造更具价值的软件,它带来较低的管理成本和高质量的产出。实施敏捷模型并不容易,它需要有更高的管理艺术,在面对具体项目开发中也有更多的成功机会。项目经理需要理解敏捷,根据项目的特征、环境、要求和团队的特点来实施正确管理。
培训内容
1、敏捷方法的“破”
传统方法论的问题
敏捷对传统方法论的改进
敏捷游戏的博弈规则
纵向视图:目标导向、团队协作、最佳实践。
横向视图:尊重经济、持续改善、最佳实践
关于敏捷的误解
哪些场景与条件比较适合敏捷
哪些场景与条件不适合敏捷
大部分以自主创新为特色的企业都适合敏捷方法
敏捷不是反对计划和规范,而是更好的实现计划与规范
目标:了解敏捷对传统软件工程方法都改进了什么?理解敏捷方法对于自主创新企业的意义,形成正确的敏捷观。
2、迭代闭环
为什么要迭代?
迭代闭环在XP与Scrum中的实践
需求管理与分解(User Story、Backlog)
计划游戏与估算(计划扑克、站立式会议)
“项目心跳”与步长(燃尽图、迭代演示、周计划)
迭代会议(评估会议、计划会议、评审会议、回顾会议)
反思改进
怎么管理多个敏捷团队?
怎么管理地理位置上分布的团队?
迭代实践与传统实践的对比
目标:通过具体场景的课题实战,掌握在敏捷开发过程中正确实施迭代闭环的方法。
3、“质量体检”闭环
为什么要体验?
“完成”的定义
质量体检(编码标准、测试、评审)
集体代码所有权
一步构建
持续集成
质量体检报告
团队绩效评估
质量体检闭环与传统实践的对比
目标:通过具体场景的课题实战,掌握在敏捷开发过程中实施质量控制的方法。
4、测试驱动开发闭环
为什么测试驱动开发?
源代码就是设计
增强内聚性
解耦
固定意图(单元测试、XUnit与Fit的使用)
简单设计(职责驱动设计、代码整洁可用)
重构(重构导向模式、重构工具的使用)
测试驱动开发的原则
测试驱动开发与传统开发流程的对比
目标:通过具体场景的课题实战,掌握在敏捷开发过程中实施测试驱动的开发,理解何谓更好的设计以及重构的方法。
5、工作环境的温度与湿度
实施敏捷的温度条件
给“团队”加湿
敏捷团队中的“角色”转变
教学要求:通过具体场景的课题实战,掌握管理和提升团队能力,使团队达到敏捷要求的方法。
6、如何在团队内实施敏捷管理
绘制团队价值流图
整改的四个步骤
再看敏捷
目标:通过总结,全面掌握敏捷方法的精髓。
中科院计算所培训中心