上海艾纵企业管理咨询有限公司 - 课程体系 - 专题课程 - 软件开发技术专题


您好!欢迎来到上海艾纵企业管理咨询有限公司!

加入收藏

登录注册

400-676-1955

专题课程

TDD

我要报名

编辑日期 2018-06-11  阅读次数:376 次


【课程简介】

在敏捷开发实践过程中总有一些棘手的问题,让敏捷开发的过程磕磕绊绊,下面列举了一些常见的问题:

1)不愿意使用Unit TestTDD,原因增加工作负担

2)改变我以前的工作习惯,习惯于头脑中构思,不愿意编写出来

3)不懂测试技术,无法设计测试用例

4)整个软件中的函数都需要完成TDD吗?

5)如何结合UMLTDD

6)如何结合持续集成构建与TDD

7User story描述简洁,如何展开User Story各种场景?

8)如何从验证角度完善User Story

9Unit TestTDD的粒度?

10)有些工具支撑BDD

       这些问题引发了互联网上得一些论战,不同实践者,依据自己的实践理解给出了一些有价值的经验,这些经验就像盲人摸象,只能解决其中的一部分问题,如何打通敏捷编程的五经六脉呢?讲师通过多年的实践与咨询,发现能够实现高质量与高效率编程的一套实践方法,有效结合UMLMDAATDDBDDTDD的方法,其中最为关键的事ATDDBDDTDD,故称之为编程三剑客。

    

 

【培训对象】

1)敏捷过程的编程者{希望融合ATDDBDDTDD的编程者}

2)常规过程的编程者{希望了解编程三剑客内涵的编程者}

3)敏捷过程的Master

4)常规过程的项目管理者、质量保证者

 

【培训时间】

2

 

【培训形式】

1)全新的可视化教学方式-图形化方式演绎课程的知识体系

2A4动手实践法-背对背的头脑风暴实践模式,揭示思维的差异

3A4回顾实践法-每日阶段性回顾,符合人的记忆规律

【课程大纲】

1

1.计算机解决问题需要什么

1)冯诺依曼计算机结构与程序结构

2)程序结构对需求规格描述的影响

3)验收测试对需求规格的要求

4)场景步骤描述的二义性问题

5)关键字的形式化语言

6)推导出ATDDBDD的需求规格

7)圆桌实践:你的需求我描述

8)归纳总结:记录发布你的实践感悟

2.ATDD验收测试驱动开发

1product owneruser story开发与测试问题

2User Story & Product Backlog

2)用户故事的细化description

3User Story & 测试验证

4)测试用例结构与功能验收标准

5)功能验收标准 & IDEF 0

6)功能之间的调用关系与功能集成测试

7)非功能性验证标准与系统测试

8)开发者与测试者辅助PO撰写验收标准

9)动手实践:基于ATDD的方式描述User Story实践

3. BDD行为驱动开发

1Use Case & Scenario

2)与界面相关的交互场景分解

3)功能操作的场景分解

4Scenario Description中的二义性问题

5)何为形式化语言?

6)形式化语言关键字与语法结构

7)形式化语言描述Scenario

8)可以执行的形式化语言

9)动手实践:基于BDD形式化语言描述User Story实践

4.良好的编程习惯改变软件的质量

1PDCA解释一种有准备的工作习惯~先构思后编程

2)思维导图与UML一种可视化构思表达

3)编程者最擅长什么?

4)形式化语言是一种精准方式的构思表述

5)以阅读者的视角定义构思的表达

6)从需求变更引发文档变更视角定义构思表达

7)百家争鸣:如何改变开发者固有的编程习惯

5.全部TDD还是局部TDD

1TDD的工作量评估

2)动手实践:TDD工作量评估实践,给出代码行数量

3TDD使用场景决策

4)惯性编程是否需要TDD

5)待开发模块归类,一类只需一种TDD

6)基于Software FactoryTDD编程思维

7)百家争鸣:TDD的全面实施与局部实施

8)白纸方式的TDD是否可以使用

2

6.打通编程的五经六脉

1)展示:不同流派的编程模式

2)待实现模块的Structured Method

3)待实现模块的Object Oriented Method

4)对象化与结构化的衔接与图形可视化表达

5)结合UMLMDA的自动骨架代码生成

6)类函数实现框图中数据流与测试脚本

7)动手实践:结合UMLTDD实践

7.TDD的测试思维与测试技术

1)测试输入、场景、输出、依赖构造技术

2)测试技术-边界、等价、因果、决策、正交表、所有值对表等

3)函数的输入与输出取值分析与Mapping

4)单元测试的Assert编程结构

5)单元测试的MockStub编程结构

6)复杂数据结构输入与输出的数据构造技巧

7)测试数据与测试脚本分离

8)动手实践:测试脚本撰写实践

8.TDD编程与重构

1Unit Test Process & 重构

2)功能到断言的中间环节如何打通

3)函数内部结构-定义、初始化、算法与释放

4)函数内部的逻辑结构与输入输出关系

5)逻辑结构复杂的函数的TDD技巧

6TDD测试脚本的重构

7)动手实践:TDD测试脚本重构实践

9.持续集成构建与TDD

1)持续集成构建过程与工具

2)持续集成构建中的BVT验证性测试

3)基于接口函数单元测试的BVT测试

4)编程者Check in去除mockTDD脚本

5TDD触发持续集成构建事件

6)动手实践:基于持续集成构建的TDD实践