Home » Training » Courses » Scrum Developer Training
- 显著提高工作成效
- 通过Visual Studio 2010 和TFS有效实践SCRUM
- 获得专业SCRUM开发人员认证
- 微软产品组与scrum.org共同推出的第一个敏捷认证课程
Visual Studio 2010 专业SCRUM开发人员认证课程
- 北京
8月2日-8月6日
- $1250 (3.5折优惠 约合RMB7500) 立即购买
- 北京
10月4日-10月8日
- $1500 (4折优惠 约合RMB9000) 立即购买
Visual Studio 2010 专业SCRUM开发人员认证培训
我们独一无二的的Scrum 开发人员课程是专为软件开发人员及项目管理者打造的为期5天的集中培训。
该课程将指导软件开发团队如何将产品或项目需求转化为潜在的、可以持续交付的的软件。
参加培训的人员将分成若干团队,采用Visual Studio 2010 和 Team Foundation Server 2010来完成SCRUM实践。
培训对象
本课程适合软件开发团队的所有成员 - 架构师、程序员、数据库开发人员、测试人员等等。
我们鼓励整个开发团队一起参加,同样欢迎个人参加。
参加培训的人员将分成若干Scrum团队,每个人承担不同的角色。
为了达到培训效果,培训参与者需掌握一定的技能与知识,请参考此页下方的详细说明。
产品负责人(Product Owners), 流程经理(Scrum Masters)以及其他感兴趣的人士同样可参加,但是请记住每个参与者都需为所在的团队实现SCRUM目标而付出努力。
课程介绍
本课程综合了讲座、演示、集体讨论、情景模拟以及实战开发等内容。
本课程的大部分时间为实战演练,即各团队通过一系列迷你迭代(Sprints)完成一个产品案例的软件开发。
星期一的上午以及星期五的大部分时间将主要通过讲座及集体讨论的形式强化Scrum理念,以避免再今后实践中出现一些常见错误。
您的收获
您将通过不间断的讲座,演示,讨论和动手实验体验SCRUM模式的精华。 学员会有机会获得讲师一对一的指导来了解如何正确的使用SCRUM模式,
在一周的课程结束时,您将学到以下内容:
- 组织并管理高效的软件研发团队
- 使用Visual Studio 2010架构师版的功能对已有的复杂应用程序进行分析
- 如何定义“完成规范”,定义质量标准和用户接受标准
- 创建自动化构建
- 正确处理和发布软件补丁包(hotfix)
- 验证和处理软件缺陷
- 计划发布和迭代(sprints)
- 对产品待办事项表(product backlog)进行估算
- 创建和管理sprint待办事项表(sprint backlog)
- 组织有效的sprint评审会议
- 通过回顾会议改进您的流程
- 使用高质量的架构来避免可能出现的技术问题
- 使用测试驱动开发作为设计工具
- 建立并使用持续集成改进您的软件开发流程
- 使用受影响测试分析工具来减少测试次数
- 使用敏捷方法管理SQL Server数据库开发
- 进行更加有效的.NET重构和T-SQL重构
- 创建,部署和测试SQL Server数据库
- 创建和管理测试计划和测试用例
- 创建,运行,录制和自动回放手动测试
- 创建分支策略并进行代码分支
- 创建高可维护性代码
- 找到流程和人员的问题,并解决这些问题
- 对您的软件研发团队进行监控并改进流程
培训日程
总体上说,PSD培训会将参训人员组成团队,并通过多个Sprint的实践进行增量功能的开发;5天的课程大体上按照以下计划进行组织:
| 周一 |
上午:培训总体介绍,SCRUM的基础知识,SCRUM模拟演练
下午:使用Visual Studio 2010实现SCRUM,案例分析
|
| 周二 |
上午:接手遗留项目,使用Visual Studio 2010架构师版进行架构分析,补丁的实现,项目计划
下午:架构设计,Sprint 1
|
| 周三 |
上午:测试驱动开发,Sprint 2
下午:敏捷数据库开发,Sprint 3
|
| 周四 |
上午:软件发布,Sprint 4
下午:其他内容,Sprint 5
|
| 周五 |
上午:讨论和解决SCRUM问题
下午:SCRUM常见问题分析,认证考试
|
周一的上午和周五的全天我们不需要使用计算机来进行,这样可以帮助我们更好的集中精力来进行SCRUM的演练并找出实践中的问题,帮助大家找到解决方案。
迭代(Sprints)
时间箱(Timebox)是Scrum也是本课程的一个关键概念。我们期望每个培训参与者都能理解和遵守时间箱(Timebox)准则。
每个时间箱(Timebox)的规定时间都清楚的在每次活动上标明,表示参与者需在此时间内完成活动目标。
本次培训中的开发迭代周期为半天。每次迭代的流程如下:
|
活动
|
描述
|
用时(分钟)
|
|
指引
|
介绍及演示新的相关工具及最佳实践
|
60
|
|
迭代计划会议(Sprint planning meeting)
|
产品经理(Product owner) 介绍 backlog; Scrum团队承诺在本迭代中要实现的产品功能
|
10
|
|
迭代计划会议(Sprint planning meeting)
|
Scrum团队决定如何实现产品功能,确定开发任务
|
10
|
|
迭代(Sprint)
|
Scrum团队通过自我组织与管理的方式完成开发任务
|
120
|
|
迭代评审会议(Sprint Review meeting)
|
每个Scrum团队演示在本次迭代中所实现的产品功能
|
≤30
|
|
迭代回顾(Retrospective)
|
集体回顾与讨论已完成的迭代,审查并改进。
|
10
|
每次迭代中,每个团队应该自我组织与管理并完成所承诺的迭代目标。
我们鼓励团队成员结对(Pairing)工作。
讲师或产品经理(product owner) 随时会解答团队遇到的问题,但并不参与任何团队的实际工作。
每个团队成员应通过与其他团队成员的沟通与交流实现迭代目标。
如果您遇到相关的技术问题,您的结对伙伴或其他团队成员应该是您的首选求助对象。
讲师
|
Adam Cogan
|
微软区域总监(Microsoft Regional Director) & 微软最有价值专家 (MVP), SSW首席架构师
|
|
徐磊
|
微软区域总监(Microsoft Regional Director) & 微软最有价值专家 (MVP), SSW中国研发中心首席代表,资深软件架构师
|
培训地点
|
北京
|
北京市朝阳区望京街8号,利星行广场微软大厦3层
注:本课程可提供中英文培训
|
联系方式
发送邮件
或致电 +8610 6815 5515
课程模块
模块1:介绍
通过这个模块,学员可以对讲师以及专业SCRUM开发人员课程有更深入的了解,并且我们会对整个的日程做详细介绍和解释。
最后,学员们会被分成不同的SCRUM团队,以便我们开始后面的团队实践(SCRUM团队会经历组成,冲突,化解和高效几个阶段,从这里开始您就可以开始积累SCRUM团队的经验了)。
- 讲师和学员介绍
- 专业SCRUM开发人员项目介绍
- 日程介绍和解释
- 组成团队,配置环境(账号,登陆TFS,项目初始化)
- 团队成员自我熟悉
- 回顾会议
模块2:SCRUM的基础
通过这个模块,我们会对SCRUM模式的基本概念进行介绍,让所有的学员对SCRUM中的角色,时间盒以及工件都有初步了解。我们的团队可以根据这些知识进行后续的团队实践,包括产品开发,计划,评审和回顾。
- SCRUM概述
- SCRUM中的角色
- SCRUM的时间盒概念
- SCRUM中的工件
- 案例模拟
- 回顾会议
模块3:使用Visual Studio 2010进行SCRUM实践
这个模块会使用Visual Studio 2010的Scrum流程模板来进行SCRUM实践。学员团队会了解如何使用Visual Studio 2010所提供的工具来实现SCRUM中的各个概念。当团队都成功登陆到我们的TFS服务器之后,团队将会再次开始新一轮的演练,使用Visual Studio 2010来管理产品开发流程。
- 将SCRUM概念和工件映射到Visual Studio 2010的工具上
- 用户情景(User Story)工作项
- 任务(Task)工作项
- Bug工作项
- 演示
- SCRUM模拟
- 回顾会议
模块4:案例分析
在这个模块中,我们的团队将会开始真正的SCRUM演练并且开始遇到各种问题。讲师将会扮演产品负责人product owner的角色,并给各团队部署下面sprint中的任务。团队成员获得任务以后,需要首先对质量标准,完成规范进行定义;然后团队下载代码,编译并分析代码,并进行bug的修复。
- 案例分析介绍
- 下载源代码,编译并分析应用程序
- 定义质量标准和完成规范
- 如何使用Visual Studio 2010来更加高效的报告Bug
- 回顾会议
模块5:补丁
这个模块会让学员直接进入到一个遗留的应用程序中,产品负责人会要求团队修复程序中的一些高优先级的bug。通过这个过程,学员可以了解如何寻找,测试,修复,验证和关闭bug。
- 如何使用架构浏览器可视化的分析和浏览应用程序
- 使用单元测试验证Bug的存在
- 找到并修复Bug
- 验证并关闭Bug
- 回顾会议
模块6:计划
这个模块会对如何使用Visual Studio 2010系统进行产品发布和迭代计划。团队学习如何记录他们的sprint目标和其他的计划信息。
- 发布和迭代计划
- 发布计划和产品待办事项表(product backlog)
- 产品待办事项表的优先级设定
- 接受标准和测试
- 迭代计划会议和Sprint待办事项表
- 创建和关联任务
- 回顾会议
完成这个模块之后,团队将具备使用Visual Studio 2010系统进行Scrum实践的基本能力,在后续的模块中,他们将开始进行增量功能的开发并要求团队满足他们自己定义的“完成规范”。
模块7:架构设计
这个模块会向团队展示如何使用架构工具来对新的功能进行更好的架构设计。团队将学习SCRUM如何对架构设计进行支持。之后,产品负责人向团队展示新的产品待办事项表和优先级,团队需要选择接受一些Sprint工件以便开始他们的sprint实践,并最终交付产品。
- 架构设计与SCRUM模式
- 原则,模式和实践
- Visual Studio 2010 架构设计工具
- UML和分层图
- SPRINT 1
- 回顾会议
模块8:测试驱动开发
此模块将展示Visual Studio 2010中对测试驱动开发的支持。为了提高效率和质量,SCRUM团队必须建立持续集成以便对代码改动进行频繁的构建和回归测试。另外,还会对Visual Studio 2010中的“受影响测试分析”工具进行介绍,指导团队进行代码重构并只运行那些必要的测试。
持续集成
- TFS构建
- 测试驱动开发
- 代码重构
- 受影响测试分析工具
- SPRINT 2
- 回顾会议
模块9:敏捷数据库开发
这个模块会为那些从事SQL Server数据库开发的程序员提供一个秘密武器,使得他们的开发也可以敏捷起来。使用Visual Studio 2010种的数据库项目,数据库开发人员可以和其他开发人员一样来管理他们的数据库结构和代码。学员在这个模块中将学习如何使用Visual Studio 2010来进行SQL Server 2005/2008/R2的开发周期管理。
- 敏捷数据库开发
- Visual Studio 数据库项目
- 倒入数据库结构和脚本
- 构建和部署数据库项目
- 自动生成测试样本数据
- 数据库单元测试
- SPRINT 3
- 回顾会议
模块10:产品发布
仅仅开发出团队喜欢的功能并不代表产品负责人也会喜欢这些功能。这个模块将会再次将完成规范和接受标准提上日程。我们会将接受标准分解为手工测试用例的步骤,团队成员将使用微软测试管理器来执行手工测试,录制测试步骤并通过不同的途径来提交bug。在这个sprint结束之前,新增的功能将会被交付,团队在这个时候将会了解他们什么时候需要创建第一个分支。
- 接受标准
- 在Visual Studio 2010中进行测试
- 使用微软测试管理器
- 创建和运行手工测试
- 分支
- SPRINT 4
- 回顾会议
模块11:团队机能失调的解决之道
这个模块会向学员展示在SCRUM模式中,人员,流程和工具可能出现的各种机能失调问题。我们会展示很多不同的场景,并和学员一起讨论在团队中该如何解决这些问题。这个模块会让您对如何独立运作一个SCRUM团队建立信心,使您在课程结束后可以面对真实的SCRUM团队并对他们进行改进。
- 不纯粹的SCRUM和不坚定的SCRUM
- SCRUM团队最佳实践
- 团队中的挑战
- ScrumMaster的挑战
- 产品负责人的挑战
- 干系人的挑战
- 课程回顾会议
您需要的准备
PSD课程是一个非常独特的课程,专注于技术实现,专注于团队协作,并且有严格的时间盒要求。这个课程要求所有的参与人员可以进行自我组织并自发的管理应该完成的工作,这样才能保证交付演练中的产品功能可以实现。
- 在讲座和演示中集中精力
- 在团队和小组讨论中充分参与
- 和其他团队成员精诚合作
- 严格遵循时间盒的要求
- 对工作给出承诺并尽全力完成
您所需要的基本技能:
- 了解SCRUM模式
- 熟悉Visual Studio 2010
- 具备C#, .NET 4.0 和 ASP.NET 4.0的开发能力
- 具备SQL Server 2008开发经验
- 软件测试经验
自我组织的团队
PSD课程的另外一个独特之处则是,这个培训所针对的不是的某个学员,而是一个开发人员团队。我们建议您派遣您的整个开发团队来参训,这将保证您的学员可以具备所需要的技能。如果您是一个人来参加这个培训,那么您将和其他开发人员组成团队。我们的讲师会尽力帮助每个团队都具备各项技能,但是这往往是不可能的。因此,您可能需要尝试去扮演一个您并不熟悉的角色,学习一些新的技能或者和自己不熟悉的人一起工作。实际上,这正是SCRUM的精华所在。
哪些人不适合PSD课程?
由于PSD课程的上述特点,我们不建议下列人员参与这个课程:
- 如果您需要详细步骤的指导,PSD课程不同于微软的动手实验,我们不提供详细步骤的指导
- 如果您不习惯于时间盒的工作方式
- 如果您不习惯于团队工作方式
- 如果您不具备任何的软件开发技能
- 如果您不能全心的投入团队工作,这将大大削弱您所能学到的技能同时还会对其他团队成员产生影响。
课程资料
相关联接