讲师公开课内训文章


首页>公开课程 > 研发管理 [返回PC端]

敏捷软件开发实务

讲师:李老师天数:2天费用:元/人关注:2609

日程安排:

课程大纲:

敏捷软件开发技术培训

课程背景:
21世纪是“快鱼吃慢鱼”的时代!
现代企业的竞争就是“速度”的竞争!!
谁能尽快开发出符合客户需求的产品,谁就是大赢家!!
如何使产品开发周期显着缩短?如何促使企业充分利用外部资源,寻求合作设计、开发和制造的机会,让新产品上市时间更快?
“敏捷化开发”是国外*提出的着眼于速度竞争的新产品开发管理模式,其基于一系列先进的研发管理方法,采取产品开发与市场投入的速度领先战略,以获得产品开发的时间领先优势,使企业在竞争日趋激烈的环境中获取利益*化。
软件系统的日益复杂化和用户需求、软件更新的频繁化,加之开发团队分散的工作方式,项目的沟通和平滑管理变得越来越困难。另一方面,如何在多角色分工的情况下,紧扣用户提出的需求,监控其实施,确保用户需求最终落实到产品的各个版本中去,并在产品发行和用户支持等方面提供帮助,响应用户新的需求,推动新的开发周期。
新的开发方法-敏捷开发,有助于开发人员、测试人员和管理人员更快的适应客户需求的变化,快速的发布和提交版本。使得软件的发布能更快捷的满足客户的需求。
敏捷软件开发过程中,有一些新的开发手段,把开发活动和测试活动结合起来。通过敏捷项目管理,可以更好的发挥团队特长,并行开发,合理控制软件版本,有效地提高生产率。
本课程在介绍了敏捷项目一般管理方法基础上,深入地讨论了如何将敏捷化开发应用于其它行业的产品研发活动,使学员同时掌握以上两种方法,在实际工作中能按照实际情况灵活应用。

培训特色:
本工作坊的主要特点是:
体验式学习:
大量采用体验式练习,而不是灌输知识,让团队自己生成新的理念、原则、方法等,寓教于乐,更容易被大家接受。
以演练的方式学习:
巧妙地将敏捷软件开发方法以研讨与演练的方式来展示,形象生动,又能把握商业模式创新的关键点。

采用教练方式:
采用教练而不是培训、咨询的方式,更赋能,具有激发团队潜力、向内挖掘资源等特点。
讲师具有近二十年软件开发、软件设计、需求分析及项目管理经验,长期战斗在软件项目钱眼,精通SCRUM、极限编程及MSF并用于全公司的项目管理,参加多次CMMI5级评估,并有使用敏捷软件开发通过CMMI评估的案例。讲师有多年的授课经验,讲课深入浅出,注重引导学员思考,善于将主题内容融于简单的例子中,让学员通过体会实例掌握知识。

课程大纲:
一、案例分析

1.1工作坊:案例项目存在哪些管理问题
1.2背景了解
1.3问题收集
1.4关键问题辨析

二、什么是敏捷软件开发
2.1研发中项目管理的典型问题
2.1.1质量
2.1.2交付周期长
2.1.3效率低下
2.1.4交付延期
2.1.5交付不被市场/客户接受
2.2软件管理方法总览
2.3什么是敏捷项目管理
2.4敏捷项目管理的解决之道
2.4.1总体框架:“需求-构建-发布”的快速迭代
2.4.2卓越交付:保证正确地构建正确的产品
2.4.3自组织团队
2.4.4短周期迭代
2.4.5可工作的完成标准
2.4.6价值驱动
2.4.7基于反馈的改进
2.4.8风险前移
2.5敏捷项目管理的精要 
2.5.1创造力来源于小而美团队
2.5.2短迭代的可工作的交付
2.5.3客户参与
2.5.4响应变化
2.5.5交付的价值优于完成的任务
2.5.6效率通过演进的流程获得
2.6核心价值观
2.7我是否该敏捷?
2.8什么时候可以引入敏捷实践?
2.9敏捷实践清单
2.10敏捷开发如何提升生产率? 
2.11敏捷开发如何提升质量
2.12敏捷对企业的价值
2.13研讨与演练:软件开发,我们的痛点在那里?

三、理解敏捷过程
3.1敏捷过程的本质
3.1.1以人为根本
3.1.2以最终交付的软件为目标
3.1.3进度的推进策略
3.1.4团队工作文化
3.2敏捷过程的*实践
3.2.1小版本,现场客户
3.2.2隐喻,简单设计,重构
3.2.3测试驱动开发,持续集成,结对编程
3.2.4代码共有,编程标准
3.2.5工作空间与时间

四、敏捷项目管理提升研发流程的具体实践
4.1项目团队管理-人是最重要
4.1.1敏捷团队的三个核心角色
4.1.2敏捷团队的角色职责
4.1.3Scrum Master工作检查单
4.2敏捷项目策划
4.2.1敏捷估计-估算扑克
4.2.2Delphi估算
4.2.3研讨与演练:我的故事要多少工作量?(使用客户内部开发需求),扑克牌法
4.2.4敏捷估算方法2:NASMA
4.2.5NASMA和功能估计的相同点和不同点
4.2.6NASMA估算的估算精度
4.2.7通过速率估算开发周期
4.3敏捷项目计划管理
4.3.1迭代计划会
4.3.2计划会序曲-猪与鸡的故事
4.3.3猪与鸡的行为模式
4.4项目过程与风险管理
4.4.1每日立会 
4.4.2燃尽图 
4.4.3“迭代期内无变更”
4.4.4故事板 Kanban
4.5项目质量管理-高质量的交付
4.5.1评审会与反思会
4.5.2评审会 
4.5.3反思会
4.6敏捷风险管理
4.6.1*KE和Story的风险评估
4.6.2发布计划和迭代计划中的风险处理策略
4.6.3设计中的风险处理
4.6.4开发过程中的风险处理
4.7大型项目管理的敏捷项目管理实践
4.8研讨与演练:基于客户团队的实际痛点进行讨论,从敏捷项目管理的角度讨论解决方案

五、敏捷软件开发工程实践
5.1项目需求管理-用户故事-交付最有价值需求
5.1.1用户建模 
5.1.2用户故事 = 用户 + 功能 + 价值
5.1.3用户故事描述的语法规则
5.1.5超越敏捷-现实世界的用户故事
5.1.6需求优先级排序
5.2史诗故事
5.2.1用户故事的颗粒度
5.2.2什么是史诗故事?
5.3用户故事地图
5.3.1为什么要建立用户故事地图?
5.3.2用户故事地图建立的步骤
5.4敏捷架构和简单设计
5.5技术债务
5.6团队结构与日常开发活动
5.6.1办公环境
5.6.2“特性小组”
5.6.3“松结对编程”
5.6.4“松结对编程”的小组长责任
5.6.5 “松结对编程”的工作习惯
5.6.6 结对编程的几种结对形式
5.7静态语法检查与代码质量
5.7.1为什么要做代码审查?
5.7.2编码规范
5.7.3自动化的审查代码
5.7.4演练:使用静态语法工具进行代码质量分析
5.8TDD(测试驱动开发)及静态语法检查
5.8.1什么是TDD
5.8.2如何进行TDD
5.8.3演练:对一个功能进行TDD设计
5.8.4系统级TDD
5.9重构
5.9.1重构的定义
5.9.2为什么需要重构
5.9.3何时需要重构
5.9.4代码的坏味道
5.9.5各种重构的方法 
5.9.6重复的代码
5.10敏捷测试
5.10.1持续集成
5.10.2测试用例设计
5.10.3构建管理 持续集成 发布管理
5.10.4持续集成和每日构建
5.10.5自动化测试

六、大规模的敏捷实践
6.1大规模敏捷框架
6.2大规模敏捷项目管理的层次
6.2.1多级项目规划
6.2.2项目/产品愿景
6.2.3项目/产品路线图
6.2.4版本发布计划
6.2.5迭代计划
6.2.6每日实现
6.3大规模敏捷组织结构
6.3.1Super Scrum Master
6.3.2:团队协作与管理
6.3.3团队交流渠道
6.3.4团队互相激励方法
6.3.5公共目标的驱动
6.3.6工作结果布告
6.4平台化与定制

七、敏捷开发过程中的度量
7.1敏捷软件开发的度量体系
7.2精益软件度量什么
7.2.1组织目标
7.2.2决策场景
7.2.3指标框架
7.2.4度量元
7.2.5价值评价
7.3常见的敏捷度量指标
7.3.1产能度量
7.3.2内部质量的度量
7.3.3外部质量的度量
7.3.4组织能力的度量
7.4部分度量案例展示
7.4.1规模
7.4.2工作量
7.4.3进度
7.4.4技术债务
7.4.5能力
7.5度量的实施和推进
7.6演练:我们需要什么度量

八、组织级敏捷部署与绩效管理
8.1敏捷三步走
8.2敏捷成功与否的衡量标准是业务结果(质量、TTM)的改进
8.3首次实施敏捷的参考步骤——八步曲
8.4敏捷角色
8.5项目组团队的组建方式:特性项目组和模块项目组优劣对比
8.6项目级敏捷通用过程模型
8.7项目级敏捷过程样例(版本中项目组全都实施敏捷)
8.8敏捷团队绩效管理
8.8.1谁来管理团队中的个体?
8.8.2敏捷团队的目标
8.8.3从团队外部认识团队目标
8.8.4敏捷开发中的目标管理意识
8.9执行与实施层面的敏捷实践

九、总结

敏捷软件开发技术培训

上一篇: 班组长综合管理技能提升课程
下一篇: 项目经理的个人能力提升


其他相关公开课程:


联系电话:4000504030
24小时热线(微信):
13262638878(华东)
18311088860(华北)
13380305545(华南)
15821558037(华西)
服务投诉:13357915191

 
线上课程关注公众号