路 红 刘红英
(南京理工大学紫金学院,江苏 南京 210023)
随着工程教育认证体系的逐步完善与成熟,其对高校的教育质量提出了更高的要求,已成为各大高校提升教育质量的重要途径之一。工程教育的核心是成果导向教育(Outcome-based Education,OBE),是以学生学习成果为导向的教育理念,即教学活动的目标是学生通过一段时间学习后所取得的成果[1-3]。与传统的以学习内容为驱动的教学模式不同的是,成果导向教育更看重学习者在学习过程结束后所具备的能力和水平。OBE教学理念要求根据完成职业岗位工作任务所需要的知识、技术以及素质要求确定教学内容,让学生在工作之前明确自己应该学些什么、做些什么,使学生能够持续职业发展。
应用型本科院校的计算机相关专业重点关注培养和增强学生实践能力,这与OBE教育理念相吻合。因此,在应用型本科院校的计算机课程中应用OBE教育理念实施教学可以提高学生的编程能力,并能使学生具备依据所学知识解决实际应用问题的能力,且提高自身就业竞争力和今后岗位适应能力。为此,目前已有很多高校基于OBE理念开展计算机课程教学改革,通过教改制定“学习产出”课程目标,梳理支撑课程目标的教学知识点,建设优质线上线下教学资源,开展各种丰富的教学活动,并注重过程评价和形成性评价考核方式,以达提升教育质量的目的,已成为应用型本科院校开展课程教学改革的重要趋势之一[4,5]。
数据结构是一门计算机类相关专业的专业核心课程,主要是培养学生的计算思维和数据抽象能力,要求学生掌握数据结构基本知识点之后,能够根据实际问题选择恰当的数据结构,设计合理的算法和存储结构,并对算法的时间和空间复杂度进行分析[6]。而传统的教学模式以教师课堂讲授为主、以理论知识为主要内容,学生学习课程的主动性较差,课程学习结束后不能独立自主地运用所学知识解决实际问题[7]。OBE教学理念倡导一种以学生为中心、以成果导向为目标的课程教学模式,可以有效解决传统数据结构存在的问题。为此,本文以提高数据结构课程的学习效果为目标,借助OBE教学理念针对数据结构课程实施教学改革,使学生能够利用数据结构所学知识点独立解决实际应用问题,完成深度学习,并以期达到优化教学的目的。
结合笔者自身在应用型本科院校多年数据结构课程教学实践情况,总结目前数据结构课程教学现状如下:
(1)注重理论教学
数据结构传统的教学中较注重理论教学,课上教师主要讲解各类数据结构的基本运算及经典应用算法,且考核方式通常为卷面考试,学生大都以通过期末考试为目标[8]。通常学生仅仅知道数据结构的课程地位以及是一门重要的考研课程,但通过一学期学习后,大部分学生仅仅掌握了能顺利通过期末考试的知识点,并不清楚如何在实际应用中使用数据结构中的知识点,更有很多同学不能独立将所学经典算法通过编程方式在电脑中调试实现。
(2)知识点抽象难懂
数据结构具有知识点繁多、经典算法抽象难懂的特点。学生在学习时经常会出现上课时感觉自己能听懂老师课上讲的算法和例子,但是在课下练习时发现所学算法解决所做题目时出现障碍,或者不能独立完成练习中类似较复杂的题目。在遇到上述问题时,学生课下又无法及时与教师或同学确认课上所讲的内容,造成不能完全掌握知识点,久而久之就会出现“厌学”的问题。
(3)课程评价通常以考试为主
受传统课程评价方式影响,数据结构课程评价通常是期末卷面考试,试卷内容以理论知识点为主,编程应用较少。课程评价方式决定了学生如何学习,为顺利通过期末考试,学生往往采用题海战术,对经典算法的编程实现甚至出现考前突击、死记硬背。
基于OBE理念的数据结构课程改革实施过程如图1所示。首先,依据国家工程认证标准、IT行业发展需求、专业培养目标、人才培养方案确定毕业要求,在深刻理解毕业要求基础上,结合OBE教育标准要求,制定基于OBE的“学习产出”课程教学目标;其次,深入剖析所设定的教学目标,梳理要完成各个子目标所需要的知识点,以此来确定课程内容并选定合适的参考教材;然后,在课程实施过程中,教师运用恰当的教学方法和教学手段开展教学,例如线上线下混合教学法,引导学生独立自主使用数据结构所授知识点解决实际应用问题,以实现事先所设定的教学目标;最后,依据所制定的课程目标,建立一套形成性教学评价指标,以此衡量学生学习效果和发现教学中所出现的问题,并由此产生如图1中两个循环以实现课程优化。
图1 基于OBE理念的数据结构课程改革流程图
“学习产出”目标是支撑OBE课程改革的关键部分,它定义了毕业要求中的工程基础知识,以及课程思政的要求,为课程内容选定、教学实施和课程评价提供的重要依据。因此,在课程改革初始阶段,我们首先制定出符合工程认证标准、行业发展需求、专业培养目标、人才培养方案和课程思政要求的课程目标,使学生能够通过学习数据结构课程,掌握线性结构和非线性结构的逻辑结构、物理结构以及基本运算,并理解经典算法的实现过程,从而学会在实际应用中能根据实际问题选择合适的数据逻辑结构和存储结构,并能设计相应算法。通过一系列的实践任务,逐步达到具备分析问题、数据抽象和解决问题的能力,并能养成良好的程序撰写习惯,为后续的课程和工作打下良好的基础。具体课程目标如下:
3.1.1 工程基础知识目标
(1)掌握数据结构的基本理论和方法;
(2)掌握数据关系的四种基本结构的逻辑结构、存储结构和操作运算;
(3)掌握常用的查找、排序算法的基本原理和实现步骤。
工程基础知识目标主要是让学生掌握常用的数据结构的逻辑关系、存储结构、操作特点及有关应用,从而深入理解数据结构中的基本概念、经典算法解决问题的基本思想,以及优缺点。
3.1.2 问题分析目标
在理解经典数据结构和算法设计的基础上,能够根据实际问题的应用场景抽象出所解决问题的定义,且能恰当选择和设计数据结构以及数据元素的构成和逻辑关系,形成计算思维模式,并能灵活高效地解决各种计算机典型应用问题,具备计算思维能力。
3.1.3 研究目标
针对计算机领域复杂工程问题,会综合运用数据结构的基本理论和设计方法,独立自主设计合理的数据结构,具备抽象思维能力,并能对所设计实现方案进行可行性验证和评估。
“学习产出”目标为学生设计了学习成果蓝图之后,教师需设计符合完成所制定的学习目标的教学内容。数据结构课程包含的知识点较多,课程需要讲解线性和非线性等十几个数据结构以及具体的运算实现,包括数据结构的创建,数据的增、删、改、查找和排序等,这些运算中有许多算法(如图型关系中的算法)比较抽象难懂。此外,由于课程知识点较多,传统以教师讲授为主的教学模式,师生互动较少,学生兴趣不足,即使是那些编程能力较好的学生,在实现和调试这些算法时也有一定难度,久而久之,学生习惯于接受,不善于思考。因此,在教学内容上,借助案例教学法,在重难点部分增加相应算法案例,由教师选择典型且难度适宜的项目,以恰当的形式把学生带入一种特定的真实项目或模拟项目情境中,在教师的引导下,学生利用已有的知识背景,发现问题、分析问题和解决问题,达到培养学生解决实际问题的能力。数据结构课程内容与教学目标的关系,如表1所示。
表1 课程内容与教学目标的关系
目标A,针对所涉及的数据结构,通过多项式操作、迷宫问题、银行业务操作流程、家谱系统、导航系统、排行榜系统等案例引入,导出其定义、存储结构和实现方法,让学生了解其应用场景,激发学生学习兴趣。
目标B,经过学习基本知识点后,运用所学内容完成目标A中的实际案例,让学生学会分析所要解决的问题的定义,根据问题目标使用恰当的数据结构和算法实现,并分析实现方法的优缺点。通过完成这些案例,让学生掌握数据结构的基本理论和实现方法。
目标C,在讲授完基本知识点后,引入一定的综合案例的实现,例如,医院叫号系统、文件系统、畅通工程等,让学生会综合运用数据结构的理论和实现方法解决计算机领域较复杂的问题,帮助学生获得最大程度的成果感。
数据结构教学过程主要包括课内教学和课外教学两个环节,其中课内教学包括课堂教学和课内实验;课外教学包括课后练习和实战、在线课程资源学习等。由于数据结构基本运算较多且经典数据结构算法较难理解,经过多年教学,学生普遍反映难以在课堂中快速消化所讲的算法。即使学习成绩较好的同学,在课堂学习时间内仅能掌握课堂所讲算法,很难达到举一反三,导致课后做练习和实验时无从下手。为解决该问题,在课堂理论授课时使用线上和线下混合的教学模式,利用“知识回放”方法,解决学生有针对性地强化知识难点的理解和掌握的问题,帮助学生在有限的时间内较好完成繁重的学习任务。线上,教师事先录制好重难点知识的微课视频,如经典算法及应用实例讲解过程,然后将微课视频和课程所需PPT上传至线上平台,例如钉钉群,让学生能在课前预习、课后练习和复习时通过“知识回放”巩固强化难点,以保证学生有针对性地巩固知识难点。线上阶段,教师可以通过钉钉群签到进行考勤,还可以通过视频回放时间记录学生学习情况。线下课堂教学,教师讲解所学知识的应用场景以及实现方法,并让学生参与讨论实现方法的优缺点。
此外,为加深学生对所学知识的理解,教师需建设一套练习题集和实验训练题库。习题集可以每次课后通过线上平台实施在线练习,以检测学生的掌握情况,根据学生完成情况调整教学进度和教学方法。实验训练题库提供相应编程题目,可供学生实验课使用,帮助学生锻炼算法运用。通过完成习题集和实验训练题库,学生掌握了数据组织方法和常用数据结构的设计与实现方法,从而培养了学生高级程序设计技能。
教学评价主要是检验学生学习状况是否达到了所制定的“学习产出”目标,而OBE教学理念注重课程学习过程中和结束后的所取得的学习成果,因此在教学评价时应以过程性评价形式进行考核。以本课程实施教学考核为例,课程总成绩由平时成绩、实验成绩和期末成绩组成(如表2所示),其中平时成绩占30%,包括课堂考勤、课堂讨论参与情况和作业完成情况;实验成绩占20%,主要考核实际应用能力和独立思考能力;期末成绩占总成绩的50%,该成绩通过期末考试给出。
表2 课程考核评价表
本文以成果导向教育理念为指导,结合数据结构存在的问题,实施了课程教学改革。首先制定了“学习产出”式教学目标。然后,依据教学目标制定了相应的教学内容,应用经典的项目案例引导学生开展课程内容的学习,促使学生积极主动地参与到课程学习活动,并体验到课程学习的乐趣。其次,因数据结构知识点繁多、经典算法难懂等问题,教师建设在线课程视频资源和习题库,通过知识回放形式,帮助学生掌握在课堂讲授时未消化的知识点,从而培养学生的计算思维和解决复杂工程问题的实践能力。最后,打破传统课程评价方式,在课程考核中加入了过程性考核,调动了学生积极性,以达到毕业要求的各个标准。基于OBE的数据结构课程改革在加强学生应用能力的基础上,改善了教学效果,提升了教学质量,达到了优化教学的目的。