软件测试思维在“程序设计基础”教学中的培养初探

2016-02-16 08:20刘舒婷
中国校外教育 2016年3期
关键词:软件测试程序设计程序

◆刘舒婷

(吉林大学软件学院)

软件测试思维在“程序设计基础”教学中的培养初探

◆刘舒婷

(吉林大学软件学院)

针对“程序设计基础”课程教学的现状进行了分析,提出了四点软件测试思维与“程序设计基础”课程知识点的结合的措施,同时以长春建筑学院为例,通过实践数据说明了该教学思想有助于提高课堂的有效教学,为程序设计基础课程的教学改革提出了新的思想。

软件测试思维 程序设计基础 教学改革

《程序设计基础》是各高校计算机专业开设的专业基础课之一,大多数高校通过讲授C或C++ 语言来锻炼培养学生的逻辑思维能力、计算能力和编程能力,为以后学生学习其他程序设计类课程打下坚实的基础。探讨如何通过软件测试思维的引入提高学生的编程兴趣,增强领域知识对教学具有实际意义。

一、“程序设计基础”课程教学现状分析

当前,大多数教师在教授该门课程时只重视语法和算法的讲授,而不注重程序设计的综合能力的培养,学生没有学习兴趣,教学效果不好。分析造成该状况的原因主要有以下三点:(1)缺乏融合软件工程思维的程序设计基础教材。经调查发现,大多数的面向普通本科的C/C++教材的内容的编排都是传统模式,以讲解语法为主,在讲解循环结构、结构体、链表等章节时融入了数据结构、算法的知识,只有近几年年出版的个别教材对内容进行了改革,从案例角度、软件工程的角度、算法的角度来进行讲解,但这种教材使用范围较小。(2)教师讲授该课程的知识体系和思想意识落后。很多教师不喜欢改变原有的知识体系,因循守旧,只考虑把课程教完就万事大吉,而没有从学生角度考虑问题。(3)部分教师自身知识体系不完整。由于高校教师除了从事日常教学外还承担着科研的任务,每个人都有自己的研究领域,所以对自身不擅长的领域内容欠缺或忽视,这也直接体现本门课程的教学中。

众所周知,程序是构成软件的重要的组成部分,程序的正确性、健壮性问题关系到整个软件的质量。所以应该培养学生编程能力的同时加强对软件测试能力的培养,增强对软件和程序的宏观认识。

二、融入软件测试思维的“程序设计基础”课程教学改革措施

首先,教师在教学过程中应将软件工程中强调的“5W+1H”的思想注入到学生的思想意识中,在此可解释为Why(程序的作用)、What(程序的功能)、Who(开发者)、When(开发时间)、Where(开发地点)、How(程序的算法),使学生建立软件的概念,强调在编写完程序后要选用恰当的测试数据,进行足够多的测试,保证程序的正确性、健壮性,当测试达到要求后才能够提交程序。

其次,将软件测试的思想、方法融入到程序设计基础课程的讲授中。部分软件测试思想与C/C++各知识点的结合列举如下:

(1)将黑盒、白盒测试技术融入到选择、循环结构内容中。白盒测试重点测试程序的内部结构是否正确,C/C++课程中的选择结构和循环结构有多条路径,在判定节点拥有多个判定条件,在讲解该结构时应将白盒测试中的逻辑覆盖思想融入其中。在完善程序时可采用等价划分和边界值分析两种思想选取测试数据,利用等价划分技术分析数据有利于提高程序的健壮性。

(2)单元测试、集成测试与函数的结合。可以将C语言中的函数理解成模块,每一个函数完成一个独立的功能,编写由多个函数构成的程序时,应该对每个函数进行单元测试,确认每个函数的正确性,然后逐一集成,最终完成整个程序的测试。

(3)编写程序时应融入的软件测试意识:在编写C/C++程序时要让学生知道绝对正确的程序是不存在的,再小的程序也存在着错误;在学生编写完程序后应让学生组成小组,互相测试对方的程序,这也是软件测试中第三方测试的作用;鼓励创造性思维,提出不合理数据进行软件测试。

三、教学效果分析

该教学思想已经应用于长春建筑学院14级信息安全专业学生的“程序设计基础”课程教学。该课程开设于第一学期,学时均为84学时,其中理论42学时,上机42学时,选用的教材相同。信息1401为改革班,信息1402为传统班。在2014-2015学年一学期《程序设计基础》期末考试中,信息1401平均分73.3分,优秀率6%,及格率72%;信息1402平均分54.71分,优秀率0%,及格率52%。在2014-2015学年二学期的《程序设计基础》课程设计中,信息1401优秀4人,良好8人,中等15人,及格3人,不及格0人;信息1402优秀2人,良好5人,中等17人,及格5人,不及格0人。

以上数据说明将软件测试思想融入到程序设计课程的教学中可以提高教学效果,增强学生的学习兴趣和学生解决问题的能力,尤其在第二学期的程序设计基础课程设计中,信息1401班学生更能够从整体上考虑整个系统功能的划分,完成各部分程序的设计,整个系统的功能和性能更好,系统更稳定。

四、结论

以上改革实践证明,在讲授程序设计基础课程时,除了讲授语法、算法之外,还应该有意识的培养学生的测试能力,使学生对程序有更完整的认识。在将软件测试思想融入课程教学的同时要注意循序渐进,不能够喧宾夺主,让软件测试的思想不知不觉进入到学生的意识中。希望的这种教学思想能够为程序设计基础课程教学注入新的活力。

[1]田红磊.基于计算思维的计算机程序设计课程教学改革.[J].课程教育研究,2015,(3):73-74.

[2]沈济南,梁芳.程序设计类课程实践教学方式改革研究[J].教育论坛,2014,(52):99-100.

[3]张进,叶慧婷.程序设计新型教学方法研究[J].中国现代教育装备,2015,(1):104-106.

[4]张红.软件测试教学中思维能力的培养与探索[J].计算机教育,2013,(24):1-4.

[5]杨冬风.任务驱动式教学模式在C语言程序设计课程中的应用[J].现代农业科技,2015,(4):326-327.

1.吉林省教育科学“十二五”规划课题,批准号GH150390。

课题名称:基于软件工程思维的计算机程序设计课程教学方法与评价体系改革实践。

2.吉林省高等教育学会2015年度高教科研课题,课题编号JGJX2015D291。

课题名称:基于软件工程思维的C语言程序设计课程教学方法与评价体系改革研究。

猜你喜欢
软件测试程序设计程序
基于OBE的软件测试课程教学改革探索
基于Visual Studio Code的C语言程序设计实践教学探索
航天软件测试模型构建与应用
从细节入手,谈PLC程序设计技巧
试论我国未决羁押程序的立法完善
EXCEL和VBA实现软件测试记录管理
“程序猿”的生活什么样
英国与欧盟正式启动“离婚”程序程序
高职高专院校C语言程序设计教学改革探索
软件测试工程化模型及应用研究