课程介绍:•敏捷过程同样适用于大项目
•敏捷过程不是开发者的游戏,而是工作者的指南
本课程有具有丰富软件工程实践经验的专家(熟悉传统过程,CMMI,RUP,敏捷),从客观而专业的角度带领您实践敏捷—而不是观赏敏捷。课程从分析常见问题入手,揭示各种软件工程方法的利弊,秉承"以人为本"的敏捷开发原则,关注敏捷开发的主要过程和公共实践。 首先让您了解都有哪些敏捷过程,这些过程有什么角色、执行什么工作、产生哪些产品。然后结合实际项目案例,教给您如何结合项目背景选择有效的*敏捷实践,带领你体验完整的敏捷开发过程,在这个过程中来自不同企业的实践者一起学习并思考:如何让开发团队快速工作、及时的响应变化,按时交付用户满意的产品。*,结合讲师的丰富经验和您一起探讨“适合您的敏捷过程”。
适合人群:系统架构师、分析人员、设计人员、开发人员和测试人员
培训目标:•软件开发面临的问题
•敏捷开发概述
•大型复杂项目的敏捷开发扩展
•敏捷项目规划与度量
•敏捷--极限编程实践
•敏捷--Scrum方法
•基于敏捷软件开发的实践—工欲善其事,必先利其器
•敏捷项目管理
•敏捷建模
•敏捷开发过程
•敏捷测试
•基于敏捷方法实践项目实战
课程大纲:软件开发面临的问题
•如何在资源和时间受限的条件下快速、连续的交付软件?
•如何交付高质量的软件?
•如何平衡成本、时间、质量和范围?
敏捷过程与其他过程
•常见的过程框架:CMMI,RUP,结构化过程
•都有哪些敏捷过程:SCRUM,XP,OpenUP
•敏捷过程宣言
•敏捷开发原则
大型复杂项目的敏捷开发扩展
•大型项目多个敏捷团队的合作
•多维度扩展处理方法的特点
•敏捷过程与CMMI的融合
敏捷项目规划与度量
•敏捷开发中需求的特点
•规划的不同层次与思路
•敏捷项目规模度量与估计
•基于主题的优先级的度量
•基于用分析矩阵确定优先级的度量
•基于确定经济优先级的度量
敏捷开发*实践 (XP方法实践)
•计划游戏
•现场客户
•小版本,持续集成
•测试驱动开发
•简单设计,重构,系统Metaphor
•结对编程,集体代码所有权
•代码标准
敏捷--Scrum方法
•什么是Scrum
•自我管理团队
•Scrum的角色分配
•Scrum的流程
•Scrum的人工因素
•Sprint计划和Sprint backlog
•每日Scrum
•评审
基于敏捷软件开发的实践—工欲善其事,必先利其器
•版本控制系统的搭建和*实践
•Bug管理系统的搭建和*实践
•Build系统的搭建和*实践
•测试驱动开发—XUnit*实践
•项目管理工具的*实践
敏捷项目管理
•编写项目开发计划
•组建开发团队,定义团队成员角色
•制定开发进度表并将其发布至项目进度网页中
•将产生的文档和代码签入至版本控制系统中
•文档与项目实际开发进度保持同步
敏捷建模
•编写需求文档:定义系统范围和需求
•利用UML用例图捕获需求,并编写用例文档
•根据用例图和用例文档进行系统概要设计
•进行UML类图设计
•进行UML顺序图设计
•构建软件的原型系统
•根据需求的变化迭代以上过程
敏捷开发过程
•编写详细设计书,定义开发标准文档
•组织团队成对编程
•重构产生的代码
•将产生的文档和代码签入至版本控制系统中
•使用Build系统生成软件可运行版本
•根据设计的变化反复迭代以上过程
敏捷测试
•对代码进行实施单元测试
•进行可接受测试
•将测试中发现的Bug发布到Bug管理系统
•根据开发的进度反复迭代以上过程
案例实战: 基于敏捷方法项目完全实践
•工作路线图
•产品列表和工作订单
•发布计划
•迭代计划
•变更列表
•角色分配,自我管理团队
•简单设计
•团队开发规范
•个人开发规范
•迎接变更
•不断测试推动工作计划
•持续集成
•不断发布