工程教育认证视角下的《软件测试技术》教学研究

2020-07-22 09:54刘进亢艳芹王勇刘涛张新杨
电脑知识与技术 2020年11期
关键词:工程教育认证教学内容

刘进 亢艳芹 王勇 刘涛 张新杨

摘要:“学生为中心、产出为导向和持续改进”工程教育认证理念,为传统的软件测试技术课程教学提供了改革的指导性方向。为此,该文分别从课程定位、理论教学内容、实验教学内容、考核方式四个角度对工程认证教育理念下的软件测试技术课程进行研究,并提出一些改革思路和方法。

关键词:工程教育认证;软件测试技术;教学内容

中图分类号:G642.4 文献标识码:A

文章编号:1009-3044(2020)11-0047-02

1研究背景

随着我国计算机技术、信息技术及软件产业的迅速崛起,软件测试工程师在诸多领域中越来越受到重视,培养软件测试专业技术人才的软件测试技术课程,显得尤为重要。工程教育认证最终是以输出评价为依据,针对软件测试技术这门课程,以产业应用为导向的培养人才模式是教学的核心思想,不仅需要具有扎实理论沉淀及丰富实践积累的一线教师,还应能充分发挥教师在专业技能传授中的主导作用,关键就是如何结合工程教育理念及实际产业需求对课程进行深化改革。

2课程定位分析

《软件测试技术》课程是软件工程专业学生的必修课程。通过本门课程的系统学习后,要求学生能够掌握软件测试的基本理论,熟练掌握软件测试基本方法及运用相关技术对软件项目进行测试,并能设计软件测试用例和撰写测试报告,熟悉相关自动化测试工具的使用。课程的学习能够为本专业学生从事软件开发及测试工作和进一步计算机领域深入研究提供基础理论知识和基本实践技能。

课程目标对学生能力要求如下:

课程目标1:掌握软件测试的基本方法及充分陛度量准则,掌握基于单元测试、集成测试等方法,能够使用一种框架,选择合适的测试方法对给定软件进行测试的能力。

课程目标2:具备给定一种待测软件,评估和分析测试任务、明确测试计划、设计测试用例及运行测试用例的能力,并对该软件的工程和社会影像进行分析和评价。

课程目标3:能够针对软件相关领域中的复杂工程问题与相关领域技术人员及社会公众进行交流,掌握相关的测试报告和测试文档撰写方法,能清晰表述及分析软件中存在的缺陷。

在学生素质提高、能力培养和知识获取3个方面工程教育认证都有对应的明确任务,专业所培养的学生在毕业时需要达到相对应的12项要求。而本门软件测试技术课程为专业核心课程,要求在12项毕业要求中能突出体现第5、6和10项要求,具体如表1所示。

3基于工程教育认证的课程教学内容研究

3.1理论教学内容

1)教学内容不够合理

传统教学中,教师更关注理论性知识点的讲授,学生难以通过实践做一个完整的软件工程项目。目前,现有一些优秀的软件测试相关教学资源中,也仅包括专业教师所设计一些单一有限的测试示例,或者从相关学习网站(如讨论论坛或开源社区等)中下载的一些简单测试项目,这些教学资源之间往往是孤立的,并不能从根本上发挥培养学生实践技能的作用。

2)能力培养目标不达标

软件测试技术课程,在培养学生解决一定复杂工程问题能力中具有重要的地位。通过该课程的学习,学生应具有以下能力:获取项目相关信息的能力、解决工程实际问题的能力、在具体的软件工程项目中锻炼测试技术、能利用团队合作的优势高效解决工程复杂问题、可持续发展的学习能力。但传统教学重理论轻实践,内容陈旧,学生学习兴趣不高,主动分析思考启发不足,缺乏解决问题的内在动力,最终导致工程应用能力和创新能力的欠缺。

对软件测试技术课程进行工程教育认证改革,需要转变思想,更新教学理念,进一步修改完善课程教学大纲,调整课程教学模式和内容。作者所在高校结合软件工程专业工程教育认证建设要求和人才培养需要,对课程教学内容进行整合优化,并引入翻转课堂教学模式,通过软件测试工程项目案例讲授基本理论知识,采用智慧教學平台“雨课堂”课前发布课程资源,课中开展主题讨论,课堂测验等,课后在线互动答疑,实现线上线下相结合。

理论教学内容及要求如下:

1)软件测试概述:了解软件测试工程师的工作;掌握软件测试过程;掌握软件测试的基本思想;了解构造测试用例的方法。

2)边界值测试:掌握软件测试中的边界值分析方法;掌握图模型进行软件测试的内涵;理解边界值分析,边界值测试测试、健壮性边界值测试等相关方法的选取及意义;掌握边界值测试的基本原则。

3)等价类测试:掌握等价类的划分;掌握传统的等价类测试方法;掌握改进的等价类测试方法;熟练运用等价类测试的方法实现实际程序的测试;了解边缘测试;掌握等价类测试原则和注意事项。

4)基于决策表的测试:掌握决策表的定义;掌握决策表测试过程及策略;掌握因果图法与输入域划分约束之间的关系;掌握决策表测试技巧;掌握决策表测试原则和注意事项。

5)路径测试:了解程序图;掌握DD路径的划分;掌握基路径测试的基本步骤;掌握路径测试的基本原则和注意事项。

6)数据流测试:掌握数据流测试的定义和使用方法;掌握基于程序切片的测试;掌握部分程序切片工具;了解基于程序切片的测试用例选择算法。

7)集成测试:掌握软件测试充分性度量的意义;熟悉测试中的桩及驱动程序的意义;掌握不同覆盖的测试充分性;了解不同覆盖标准之间的区别和联系。

8)系统测试:掌握系统测试里面线索的意义;掌握基于模型的线索;系统测试的覆盖指标;了解长用例与短用例测试的区别;了解系统测试的相关方法。

9)面向对象测试:了解关于面向对象测试的概念及基本方法;理解面向对象测试与传统测试的不同,熟悉面向对象测试中不同层次的测试方法。

3.2实验教学内容

在工程教育认证理念的指导下,为配合理论课程学习,单独开设《软件测试技术实验》课程。本课程包括1个验证类实验课题、5个设计类实验课题和1个综合类实验课题。其中,验证型课题侧重于静态测试,使学生理解完整的项目文档以及逻辑严谨的程序代码对于软件质量的重要性。设计型实验课题能够让学生快速掌握测试的基本方法。综合型实验课题其目的是提高学生解决一定软件复杂工程问题的能力,培养软件测试技能的同时更侧重于分析解决问题的能力。针对实验内容和实验题目的设计其出发点要以本专业学生为中心,合理安排难易程度,能够让大部分学生得到充分锻炼,从而提高学生对本专业课程学习认识度。

3.3改革考核方式

改革后课程最终考核包括30%平时评分和70%期末考试评分,其中平时评分又由50%作业和50%课内讨论两部分组成,课堂作业部分对应完成软件测试技术课程目标1和2两部分,课内讨论部分包括课堂情况、小组沟通、问题表达、回答问题,学习态度等,对应课程目标1和3。期末考核内容改革为简答题、分析题和综合设计题,对应完成软件测试课程目标1和2两部分。在整个课程的考核结束后,课程教师将按照预定的课程目标达成度进行统计和分析,对该课程的教学效果进行总结和评价,最后做到持续改进的效果。

4结束语

本文以工程教育认证为导向对软件测试技术课程进行教学改革研究,将软件测试技术课堂教学内容整合为基础知识,实用技术和实践解决问题三大模块,完善实验实践学习内容,增大学生实践动手环节,更重要的是改革了教学方法,采用了从演示工程实例,抽象出测试模型到理论知识分析,再到创设软件项目测试场景,学生分组讨论形成总结,完成专业知识理解,有目的地培养软件专业学生的工程实践能力。

猜你喜欢
工程教育认证教学内容
工程教育认证背景下的机械工程专业课程建?设研究与实践
“启蒙运动”一课教学内容分析
基于工程教育认证的学生能力达成度评价体系设计
以工程教育认证为导向的材料成形CAD/CAE/CAM课程教学改革探索
“清末新政”也可作为重要的教学内容
线性代数课程学—研—用教学内容及模式探索
精心设计教案 重构教学内容