培训收益:
1)全面掌握敏捷的价值观、理念、知识和工具,适应这个需求多变的时代
2)全面掌握敏捷团队管理、决策与问题解决、冲突管理与教练技术等核心技能,提升项目领导力
3)提升敏捷工程能力,简单设计、结对编程、重构、TDD等敏捷实践
4)掌握敏捷中产品经理、开发、测试不同角色的职责和协作模式
5)学习业界标杆敏捷转型经验,传统研发与敏捷的核心不同,帮助组织全面推行敏捷模式
6)构建适应敏捷的团队绩效评价模式,更强调贴近市场,以责任结果为导向
课程背景:
21世纪是“快鱼吃慢鱼”的时代!现代企业的竞争就是“速度”的竞争!谁能尽快开发出符合客户需求的产品,谁就是大赢家!尤其是中国互联网+的时代背景下,崇尚注重个性,注重体验和参与,适应变化,随需而变,拥抱变化、因人而变,必须对传统的做法进行革新,敏捷就在这样的背景下应运而生,并在实际实践中展现出强大的生命力。当前敏捷项目管理与传统项目管理已经并驾齐驱,尤其是面对复杂和不确定的未来,敏捷已经展现出其强大的适应性;它强调原则胜过做法,形成一套切实可行的管理方法和工程手段,实用性达到一个前所未有的水平,成为解决传统软件开发管理一些顽疾的良药。
1、需求变更的有效解决手段:敏捷
VUCA时代,项目的变更越来越多,越来越快。客户需求不断调整,需要项目适应这种变化,敏捷方法应运而生。敏捷软件开发就是为了应对项目需求的快速变化而采用的、新的管理手段。
2、敏捷是改善质量和提升速度的利器
敏捷采用精益画布、用户画像、用户故事地图等多种方法,及时准确的确定需求;在开发的过程中,使用简单设计,快速实现和测试,及时完成功能并进行验证,减少做错的返工成本,从而提高速度。
3、敏捷是一套完整的实战方法,需要全面掌握
敏捷采用的是小步快跑的方式,针对每个迭代做详细的计划,并建立故事看板、时间盒,站会,燃尽图等方式了解项目进展,并做到目视管理,使用站会、回顾会、需求澄清会等了解项目的问题。
4、测试工程、测试自动化是敏捷的重要支撑
敏捷采用自动化工具执行产品测试,简化测试流程。一页纸测试计划、探索性测试、ATDD、重构、CI、CD、自动化测试、Show Case等,结合DevOps和TestOps,全面提升测试效率。
5、敏捷对团队成员提出更高的能力要求
传统软件开发是Process Base,而敏捷是Skill Base,团队成员的能力需要从点能力上升到线能力,甚至面能力、体能力,相应的能力清单给成员指明进步的方向。
课程介绍:
实践证明,通过推行敏捷,82%的项目生产率有提升,78%的项目质量有提高,76%的项目客户满意度有提升,敏捷已经是业界软件开发企业的最佳实践,对减少需求变更、提升开发效率、提高交付质量有很大的效能;本课程结合业界敏捷的最佳实践,从敏捷理念、敏捷团队、敏捷工作件、敏捷管理、敏捷工程、敏捷工具、敏捷绩效评价等详细介绍敏捷实务方法,通过全程实战演练,全面掌握敏捷开发方法;同时介绍项目级敏捷、版本级敏捷、产品级敏捷、商业级敏捷的转型之路,指导公司有条不紊地实现敏捷转型。
本课程实战框架:
课程大纲:
第一部分:案例分析
第二部分:什么是敏捷软件开发
1.研发项目管理的典型问题
1.1质量
1.2交付周期长
1.3效率低下
1.4 交付延期
1.5交付不被市场/客户接受
2.软件管理方法总览
3.什么是敏捷项目管理
4.敏捷项目管理的解决之道
4.1总体框架:“需求-构建-发布”的快速迭代4.2卓越交付:保证正确的构建正确的产品
4.3自组织团队
4.4短周期迭代
4.5可工作的完成标准
4.6价值驱动
4.7基于反馈的改进
4.8风险前移
5.敏捷项目管理的精要
5.1创造力来源于小而美团队
5.2短迭代的可工作的交付
5.3客户参与
5.4响应变化
5.5交付的价值优于完成的任务
5.6效率通过演进的流程获得
6.核心价值观
7.敏捷开发如何提升生产率?
8.敏捷开发如何提升质量
9.我是否该敏捷?
10.敏捷对企业的价值
第三部分:敏捷项目管理提升研发流程的具体实践
1.项目团队管理-人是最重要
1.1敏捷团队的三个核心角色
1.2敏捷团队的角色职责
2.敏捷项目管理
2.1敏捷估计-估算扑克
2.2Delphi估算
2.3演练:我的故事要多少工作量?(使用客户内部开发需求)
3.敏捷项目计划管理
3.1迭代计划会
3.2计划会序曲-猪与鸡的故事
3.3猪与鸡的行为模式
4.项目过程与风险管理
4.1每日立会
4.2燃尽图
4.3“迭代期内无变更”
4.4故事板 Kanban
5.项目质量管理-高质量的交付
5.1评审会与反思会
5.2评审会
5.3反思会
5.4现实世界的反思会
5.5大型项目管理
5.6研讨与演练:基于客户团队的实际痛点进行讨论,从敏捷项目管理的角度讨论解决方案
第四部分:敏捷软件开发工程实践
1.项目需求管理-用户故事-交付最有价值需求
1.1用户故事 = 用户 + 功能 + 价值
1.2用户建模
1.3超越敏捷-现实世界的用户故事
1.4需求优先级排序
1.5以团队形式进行排序
1.6超越敏捷-敏捷生态系统
1.7用户故事的进化
1.8敏捷生态系统初探:需求管理
1.9从客户价值驱动到持续交付客户价值
2.团队结构与日常开发活动
2.1办公环境
2.2特性小组”
2.3“松结对编程”
2.4“松结对编程”的小组长责任
2.5“松结对编程”的工作习惯
3.重构
3.1重构的定义
3.2为什么需要重构
•
何时需要重构
3.3代码的坏味道
3.4各种重构的方法
3.5重复的代码
3.6重构演练
4.敏捷测试
4.1持续集成和每日构建
4.2每日构建的实施策略
4.3每日构建和版本管理的集成
4.4以每日构建为基础的发布管理和试验环境
4.5Smoke Test和持续集成的关系
4.6BVT Automation和Non BVT Automation是持续继承的有力保证
4.7通过每日构建和持续集成,使得版本管理不仅仅记录代码的存在和历史,更保证代码的正确性
4.8自动化测试
第五部分:敏捷开发过程中的测试和度量活动
1.测试驱动开发
2.持续集成
3.测试用例设计
4.构建管理、持续集成、发布管理
5.敏捷度量-规模
6.敏捷度量-工作量
7.敏捷度量-进度
第六部分:组织级敏捷部署与绩效管理
1.敏捷转型三步走
2.敏捷成功与否的衡量标准是业务结果(质量、TTM)的改进
3.首次实施敏捷的参考步骤—八步曲
4.敏捷教练角色
5.团队方式:特性项目组和模块项目组优劣对比
6.项目级敏捷通用过程模型
7.项目级敏捷过程样例
8.敏捷团队绩效管理
9.执行与实施层面的敏捷实践