课程名称:持续提升软件工程能力
课程详情
持续提升软件工程能力_受控、集成与测试验证课程说明
一、 课程说明
本课程的授课内容全部源于对较佳实践的总结与探索。在培训方法上,通过课堂讲授(演示和案例培训相结合)、实际操作等形式,将软件代码受控与配置管理、持续集成与持续交付、测试方法与工具建设结合在一起,达到企业整体软件工程能力的效果。
二、 预期目标
(1) 全面掌握软件代码受控与配置管理的方法、并行开发与协同等的要点与实施过。
(2) 全面理解先进的持续化集成体系的原理与建设目标,掌握端到端持续集成与构建的工具与方法;
(3) 掌握软件入库前各种测试方法/工具与实施;
(4) 掌握集成测试要点与实施环节,包括测试需求、测试计划方案、各种设计测试用例的方法、测试执行与结果分析;
(5) 熟悉软件生产与交付流水线的建设、相关工具、业界较佳,实现全过程自动化;
(6) 匹配企业产品生命周期模式,设计并建设符合企业自身的过程体系;
三、 授课时长1天。
四、 学习对象
集成/分析/设计/开发人员等软件工程师,测试经理或测试工程师;软件质量管理人员。
五、 预备知识
具备一定的软件开发或测试经验。
具体授课安排
持续提升软件工程能力_受控、集成与测试验证
第一节课交付效率和质量分析
l 通过不同工程方式的实践总结,分析和找到工程能力的弱点及改善方案,包括:
1)协同波次开发,通过波次开发波次测试解决大集成带来的效率低下;
2)通过单元测试和静态代码检查,减少“低级错误”产生;
3)持续集成(端到端工具),实现“小步、快速、自动”构建与反馈;
4)通过配置库全面管控,实现代码与配置受控、流转、可追溯;
5)快速自动化测试设计与集成测试;
第二节课配置管理
l 代码版本管理;文档配置管理;
l 代码基线与快照;
l 管理变更;
l 并行开发与工作协同;分支与合并方法;
l 管理配置文件;
l 管理模型;
l 配置工具使用;
第三节课持续集成与交付
l 通过实际案例讲述持续集成工具的安装/集成与使用,包括Jenkins/Ant/Maven/Nexus等
l 代码自动检测原理与方法/工具,包括Junit、Cunit/Findbugs等;
l 持续集成与持续交付
第四节课测试
l 单元测试与静态检测
l 集成测试的用例设计(等价类、边界值、场景法、因果图、基本路径覆盖法);
l 测试执行的较佳实践五步曲;
l 测试度量与Bug分析;
l 测试驱动开发;
l 自动化测试与实践;
小结:适合企业自身的工程能力建设
l 组织成熟
l 技术成熟
l 以产品为中心
l 持续交付
l 业界典型实践介绍
l 互动:建设计划与建设难点等