基于就业需求和OBE理念的软件测试课程教学改革
来源:用户上传
作者:董宗然,楼偶俊,梁艺多
摘要:随着计算机技术飞速发展,软件质量已成为业界关注重点。为了使高校培养的软件测试人才能更好适应测试工作岗位,提出基于就业需求和成果导向教育(OBE)理念对软件测试课程进行教学改革。以OBE理念为指导设计教学过程,根据就业需求确定课程培养目标,探讨以学生参与为中心的教学和考核方法,并对课程实施中的重点事项,如课时编排、资源建设、实验设计等进行说明。课程评估结果表明基于就业需求和OBE理念的教学模式有助于提升软件测试教学质量,适用于业界需要的软件测试人才培养。
关键词:软件测试; OBE; 就业需求; 教学改革; 课程改革
中图分类号:G642 文献标识码:A
文章编号:1009-3044(2022)32-0122-03
1 概述
随着计算机软件广泛应用到各行业和领域,软件质量备受关注,软件测试作为质量保证和控制手段越发重要,软件企业对专职测试人员需求旺盛。此外,随着敏捷开发被广泛采用,单元测试、测试驱动开发、验收测试驱动开发、持续集成测试等方法也成为开发人员的必备技能。
软件测试是软件工程专业的核心专业课,对培养合格的软件工程师和测试工程师具有重要意义。传统软件测试课程教学中存在诸多问题[1],例如:教学内容偏理论,对学生实践能力训练不够;教学内容与业界需求脱节,不能学以致用;课程设计不科学,不能激发学生学习兴趣;与软件工程、软件项目管理等专业课程衔接不好,存在知识点重复;考核以笔试为主,不能全面考查学生能力。以上问题的主要原因一方面是课程培养目标不能很好适应学生就业需求,另一方面是教学内容和方法设计不蚩蒲АD壳八孀殴こ探逃的推进,基于成果导向教育(Outcome-Based Education, OBE)的教学模式已在多个计算机教育发达国家广泛开展,被证明是高等工程教育的先进教学实践[2-3],为此本文面向就业需求和OBE理念探索软件测试课程教学改革,提升软件测试人才培养质量。
2 OBE理念的提出与应用
成果导向教育(OBE),也称能力导向教育、目标导向教育或需求导向教育,最早出现于美国和澳大利亚的基础教育改革,指教学设计和教学实施的目标是学生通过教育过程最后所取得的学习成果。在OBE教育系统中,教育者必须对学生毕业时应达到的能力及其水平有清楚的构想,然后寻求设计适宜的教育结构来保证学生达到这些预期目标。学生产出而非教科书或教师经验成为驱动教育系统运作的动力,这显然同传统上内容驱动的教育形成了鲜明对比。从这个意义上说,OBE教育模式可被认为是一种教育范式的革新。
OBE教育的三个关键是成果导向的教学设计、成果导向的教学实施以及成果导向的教学评价。成果导向要求反向设计,即要求课程从学生就业需求的关键指标反向倒推教学设计、教学实施和教学评价,不是单纯按照教师想法安排教学。目前已有国内教育学者在计算机课程中尝试基于OBE的教学改革,例如,刘强[4]结合清华大学软件工程专业教学实际,基于OBE理念对软件工程课程教学方案进行优化;向模军[5],余烨等[6]将OBE理念引入Java程序设计课程,变以教学内容驱动为学习结果驱动;刘杰等[7]以OBE理念制定C程序设计课程教学目标,优化教学内容,构建可持续改进的考评体系;王骏美[8]、王鑫便[9]等以OBE理念探索软件测试课程教学改革,在教学目标、培养路径、课程内容和考核方式等方面进行了初步设计,但目前基于OBE的软件测试类课程改革仍然缺少实证研究。
3 基于就业需求和OBE理念的课程培养目标
OBE教学模式强调目标导向,因此需要结合软件测试行业需求精准分析课程培养目标,逆推课程教学内容、教学设计和考核方式,之后评价目标达成度,找出差距后持续改进相应环节。此外,OBE课程非常看重持续改进,为此建立了回访机制,设计调查问卷,与结束课程学生和已就业学生保持联系,获取他们对课程的改进意见。基于OBE的软件测试课程培养方案设计流程如图1所示。
课程开始阶段要向学生强调软件测试课程在专业人才培养中的定位,它是软件工程专业体系的核心课,调查数据显示本专业就业中,测试相关岗位占比很高,职业发展前景广阔,进而激发学生对测试课程的学习热情。通过分析软件测试网(51Testing)行业调查报告[10],软件企业招聘测试岗位的要求,以及对行业专家的访谈和调研,结合软件工程专业人才培养目标,从软件测试行业需求为出发点,反向设计的测试人才培养目标如表1所示。
表1中用5个等级衡量个体对知识和技能的掌握程度,1代表初步掌握,5代表精通,熟练程度逐级增强,其中n+表示n及以上级别。从上表看出,一般情况下,企业对学生各方面能力要求要高于学校课程教育所能培养的水平,这之间的差距很大程度需要学生在工作实践中补齐。基于OBE理念,课程培养目标要对接就业目标,因此课程培养目标要尽可能涉及必要领域,同时要科学设计教学内容,以便能够适应基本就业需求,为后续能力提升打好基础。需要说明的是表中部分技能的课程学习培养度,如软件工程过程、程序开发基础、问题分析能力、外语能力等是要建立在其他专业课程学习基础之上的。
4 基于OBE理念的软件测试课程教学改革
在课程学时内有效完成教学目标,离不开科学的课程设计。本节讨论基于OBE理念进行理论教学、实践教学和考核方式的设计,以及教学效果评价。软件测试课程理论和实践内容较丰富,推荐课时为48学时以上,建议理论学时与实践学时比例相当,可选择理论课和实验课穿插排课,也可先排理论课后排实验课。
4.1 理论教学设计
理论课的知识点需要面向测试岗位就业需求,以软件测试核心概念和技术学习为主,结合当前技术发展定期更新理论课件,重点覆盖表1中类别1~4涉及的知识点。课件内容力求实用,涵盖核心知识,并做到讲练结合。教材可以根据各院校学生水平选择,但教材更新周期一般较长,推荐选择知识点全面的经典教材,实验教材或实验资源可由教师自行开发或者根据教学需求单独选择。
nlc202301131114
即使软件测试课程资源建设非常合理,也不能涵盖测试领域的各方面,另外受到课程学时和学生个性化学习需求限制,课程采用线下与线上融合的教学模式,整理了一套适合软件测试专业学习的线上资源库,包括:测试技术学习书单和学习路线图、测试教学开放视频、测试专业学习网站、测试学习公众号。正常情况以线下教学为主,学生课余时间通过线上资源扩展知识面,但如遇疫情等突发状况,可快速转变为线上教学模式,此时线上资源将发挥更大作用。
为助力学生职业生涯发展,课程还建设了进阶的学习资源。包括:为计算机水平和资格认证的软件评测师考试和国际软件测试工程师认证(ISTQB)学习的题库,研究生复试使用的软件测试知识库等。
理论课程的学习倡导以“翻转课堂”形式开展,由教师课前根据学生能力布置学习任务,让学生提前预习,之后在课堂中由教师指定学生或学生小组讲解学习任务内容,教师针对学生表现进行点评和订正,强调重点和易错点。借助超星学习通、智慧树等App准备的作业开展随堂测试,及时了解学生学习效果。
4.2 实践教学设计
软件测试实践需要结合具体软件项目实施,因为学时限制,教师可提前准备用于测试的软件项目,例如:Web开发、移动App、桌面应用等项目,根据学生专业方向选择相应测试项目。面向测试岗位就业需求,遴选如下实践内容,重点覆盖表1中类别1~4涉及的测试实践。
4.2.1 测试用例设计要点
测试用例设计是测试工程师的基本业务能力,是开展其他测试活动的基础,实验中基于黑盒测试方法(等价类划分、边界值分析、组合优化)和白盒测试方法(逻辑覆盖、基本路径覆盖)设计测试用例,教师可先在程序中预置错误,方便评价学生的测试用例效果。本实验同样要提供可运行代码,要求学生先自行部署环境,保证程序运行。黑盒用例设计中,学生不看源码设计测试用例,然后基于程序执行测试用例,对比预期结果和实际结果。白盒用例设计中,学生查看源代a设计用例,再运行程序执行用例,对比预期结果和实际结果。经过对比,学生将对黑盒和白盒测试方法的理解更为深刻。
4.2.2 测试工具实验要点
为了提高测试效率或执行不能依靠人工完成的测试,实际测试工作中常需借助测试工具,涉及单元测试、集成测试、功能测试、性能测试、安全性测试等方面。以往测试案例过于简单化,与实际工作脱节,为此课程重点培养学生对复杂系统部署和测试能力。例如,要求学生先部署一个较复杂的Web项目,测试课程一般安排在第6或第7学期,学生已具有专业课基础,在教师指导或参阅资料情况下可搭建起项目运行环境。部署测试项目和搭建测试平台同样是测试工程师必备能力,建议学生在个人电脑或实验室机器自行完成。有了可运行的软件项目,后续的测试实践以及测试管理都可以基于该软件项目开展,让学生体会不同测试阶段的工作场景。
4.3 课程考核方式设计
课程考核兼顾理论与实践,全面考查学生综合能力。其中,理论成绩占50%,以期末闭卷笔试形式考核;实验成绩占40%,以实验上课表现和实验报告形式考核;出勤及课堂纪律占10%,用于约束学生养成良好习惯。理论考试卷面成绩低于50分,或总成绩低于60分判定为不及格。
在授课人数较多的情况下,教师仅通过实验报告很难鉴别学生真实的实践能力,为此需要结合实验表现判断,例如:鼓励学生及时汇报实验完成情况,重点记录和检查头几组完成实验的学生;鼓励自认为实验完成出色的学生向老师汇报工作,由教师查看实验记录并提问;结合实验中预置的陷阱向学生提问,记录能自主发现陷阱的学生。将以上情况折合成实验表现与实验报告成绩一同构成实验成绩。
关于人员组织形式,考虑到课程实验较多且部分难度较大,允许学生以团队形式提交实验报告,但团队规模限制为1~3人,能力强的同学可单人完成全部实验,其他情况可酌情确定小组人数,但必须在实验报告中准确记录协商一致的个人工作内容和贡献度,以便评定成绩参考。
4.4 课程改革效果评价
基于提出的教改方法对大连外国语大学软件工程专业2017级和2018级学生的软件测试课程进行教改实施,取得了较好效果,有近80%的同学可满足表1提出的课程培养达成度,对未达标的同学进行调查,失败的主要原因是课程培养目标与学生个人发展方向不符或对课程重视程度不够。此外,2017、2018级学生的整体学习表现,如课堂参与度、学习热情、期末考试合格率,相比2016级学生都有明显提升。
对2017、2018级毕业生中从事软件测试和软件质量保证工作的同学进行调查回访获知,本课程所培养的知识和技能与企业软件测试岗位需求有很高的契合度,不足之处更多体现在知识和技能的深入程度方面,这与课程学时限制和课堂教学需要考虑学生整体情况有关。
5 结束语
基于就业需求和OBE理念设计的软件测试教学改革较好地解决了传统软件测试教学存在的诸多问题。以学生积极参与教学为中心,课程培养目标、教学内容以及考核方式均由企业岗位需求反向设计得出,体现了学以致用的特点,在提升教学质量的同时为学生打下良好就业基础。此外,所提出的教改方法对其他专业课程建设具有参考意义,相信未来基于OBE理念的教学模式必将被广泛推广并完善。
参考文献:
[1] 董玉坤.“软件测试”课程教学现状分析[J].课程教育研究,2015(25):229.
[2] 朱永东,叶玉嘉.美国工程教育专业认证标准研究[J].现代大学教育,2009(3):46-50,112.
[3] 中国工程教育专业认证协会. 工程教育专业认证标准[EB/OL]. http://www.ceeaa.org.cn.
[4] 刘强.基于OBE理念的“软件工程”课程重塑[J].中国大学教学,2018(10):25-31.
[5] 向模军.基于OBE理念的Java课程教学改革研究[J].电脑知识与技术,2020,16(12):169-171.
[6] 余烨,徐京涛,路强,等.基于OBE的Java程序设计课程教学改革[J].计算机教育,2017(6):95-99.
[7] 刘杰,赵永强,刘晋钢.基于OBE理念的“C程序设计”课程教学改革与探索[J].教育理论与实践,2022,42(3):61-63.
[8] 王骏美,吴吉红,郑东霞,等.基于OBE和CDIO的软件测试课程混合式教学探究[J].软件工程,2019,22(10):54-56.
[9] 王鑫便,刘仰光,程萍,等.基于OBE的软件测试课程教学改革探索[J].计算机教育,2020(5):97-101.
[10] 软件测试网. 2007~2021软件测试行业现状调查报告[EB/OL]. http://www.51testing.com.
【通联编辑:王力】
nlc202301131114
转载注明来源:https://www.xzbu.com/8/view-15444073.htm