党源源 王红梅 刘冰
摘 要:数据结构是一门应用实践性强的课程,为加强数据结构实践课程建设,分析了数据结构实践课程教学中存在的问题,提出了以问题驱动为基础、立体化进阶式教学与考核为手段、时空拓展实践教学为特色(QAE)的教学模式。从实际问题出发重新组织教学素材,完成教学内容“阶”的划分,并制定进阶规则;将实践教学拓展为四个阶段,逐步培养学生的实践能力。总结教学模式实施效果,分析改进思路。
关键词:数据结构;QAE;进阶;实践教学
中图分类号:TP31 文献标识码:A
Abstract:Data Structure is a practice-oriented application course.To strengthen the construction of this practice course,this paper analyzes the current problems in the teaching of the practice course and provides a teaching model which takes the question-driven as the basis,stereoscopic advanced teaching and evaluation as the method,space-time expansion of practical teaching as the characteristic (QAE).Starting from actual problems,it reorganizes the teaching materials,completes the division of Steps in teaching content,and establishes the advanced rules.Moreover,it has expanded the practical teaching into four stages,cultivating the practice ability of students gradually,summarizing the teaching model and practicing effects,and analyzing the improvement ideas.
Keywords:Data Structure;QAE;advanced;practical teaching
1 引言(Introduction)
數据结构是计算机专业教学计划中的核心课程,也是计算机及相关专业考研和水平等级考试的必考科目。要从事和计算机科学与技术相关的工作,尤其是计算机应用领域的开发和研制工作,必须具备坚实的数据结构基础[1]。数据结构课程既有很强的理论性,又有较高的实践要求[2]。本文针对数据结构课内实践教学,采用以问题驱动为基础、立体化进阶式教学与考核为手段、时空拓展实践教学为特色(QAE)的教学模式,以培养学生抽象思维、计算思维能力,提高学生运用理论知识解决实际问题的能力,达到学以致用的实践教学目的。
课内实践(验)是指与理论课相捆绑的实践教学,即嵌入到专业基础课或专业课内的实践教学[3]。数据结构课程具有理论抽象程度高和应用实践性强的特点[4]。因此如何提高课内实践教学水平,在实践中不断地夯实理论知识,并将理论知识运用到实际问题的解决中显得尤为重要。但传统数据结构实践教学存在以下问题[5-8]:(1)课程要求理论实践并重,学习跨度大。(2)学生学习起点、学习规律不同,统一、同一的教学设置无法满足教学需求。(3)原有实践题目与实际问题契合不紧密。(4)课程学时分散、学时不足、难与课程其他实践设置相关联。(5)考核机制平面化、考核形式单一化,难以形成激励效果。
2 数据结构课程QAE实践教学模式框架(The framework for data structure course QAE practice teaching model)
针对上述问题,将培养学生抽象思维、计算思维能力;提高学生运用理论知识解决实际问题的能力;因材施教拓展个人学习发展空间设定为实践教学目标。借鉴巴特勒与抛锚式教学模式[9],制定以问题驱动为基础、立体化进阶式教学与考核为手段、时空拓展实践教学为特色(QAE)的教学模式,如图1所示。
数据结构课程组通过总结多年的实践教学经验,结合课程组编著的《数据结构(C++)》立体化教材(“十一五”国家规划教材),基于长春工业大学“计算机软件基础课程群实验平台”,应用QAE实践教学模式对原有数据结构实践课程进行了改革。将问题驱动式教学方法贯穿于整个实践教学过程;重新组织设置实验题目,使其层次分级、推进分阶;为学生架设时空可扩展的立体化实践学习平台;结合进阶实践学习建立多层次立体化课程考核机制。
3 QAE中基于问题驱动的立体化进阶式教学设置 (Stereoscopic advanced teaching settings based on problem-driven in QAE model)
数据结构课程涉及计算机求解问题过程的两大基石:数据结构与算法[10]。QAE教学模式,在回归课程主旨的同时紧扣课程内容,将实践课程内容进行了横向分阶与纵向分层的立体化组织,并结合理论知识设置了一系列具有现实背景的实践题目。以此为基础开展问题驱动式实践教学。
3.1 问题驱动式教学设置
为解决学生遇问题无想法的问题,设置具有实际背景的问题(表1),并通过“解决问题”推进教学进程。
实践题目设置原则:(1)理论知识覆盖范围明确。(2)问题求解目标明确。(3)难度分级明确。(4)背景生动简洁。
教学设置:(1)针对训练内容由实际问题出发,将学生带入问题情境。(2)引导学生应用所学理论知识构建问题模型。(3)引导学生针对问题模型设计数据存储结构。(4)指导学生基于存储结构完成设计算法。(5)指导学生进行算法分析。(6)引导学生进行算法实现。
问题驱动式实践教学以应用计算机解决实际问题为主旨,通过“问题”的解决对学生进行问题模型抽象、算法设计分析的训练。来源于生活的问题具有亲和力,通过由易到难的问题导入可使学生的学习进行平滑过渡。通过“问题”的不断解决,使学生自然形成计算思维,最终到达遇“问题”有“想法”的教学目的。
3.2 立体化进阶式课程组织
将实践课程内容进行横向分阶与纵向分层的立体化组织(限于篇幅截取部分章节),如表1所示。并在此基础上进行立体化进阶式实践教学。
(1)课程内容层次化设置:分层教学即根据不同专业和不同水平层次的受教育对象,制定不同的教学体系及与之相适应的教学方法[11]。QAE教学模式将教学内容进行了四个层次的划分,分别为:章节基础进阶层、章节探索进阶层、章节应用进阶层、课程综合进阶层。四个层次由单知识点基础训练到课程知识综合训练由浅及深逐层递进。层次化教学设置可提供多样化的学习方式,在完成基本学习的前提下学生可选择单点深入学习也可选择分层迭代学习,以应对学生学习起点、学习能力、学习目标的差异,满足个性化教与学的需求。QAE教学模式层次设置:①章节基础进阶层,紧扣章节教学内容,设置章节基础训练题目,题目类型分为基础验证实验和基础设计实验两部分。其中基础验证试验在理论课教学中详细讲解,设置为预习实验在课前完成。②章节探索进阶层,基于章节内容设置与实际问题相结合的实践题目,并设定课程考核基线和层次拓展基线。章节考核基线(*号标识)为本章节学习的基础要求,层次拓展基线(+号标识)为通往下一层次的解锁控制(两条基线可根据学生的学习情况动态调整)。③章节应用进阶层,设置以本章节内容为主并结合其他章节知识的具有实际背景的综合性应用题,并设定层次拓展基线。④课程综合进阶层,设置具有一定难度和规模的课程综合性题目。
(2)课程内容进阶设置。为降低实践课程学习门槛,解决学生学习跨度大的问题,对课程内容进行进阶设置。“进阶”机制可平滑推进教学进程、激发学生的学习积极性。进阶也将阶与阶之间进行了有效联通,使其独立而不孤立。
定义1:阶。将知识模块与知识考核相结合,内聚而独立的学习单元称之为“阶”。
定义2:进阶。课程学习中“阶”的推进、迭代过程为“进阶”。
QAE教学模式中阶的建设,以章节“图”为例。(1)将內容划分为知识模块:图的存储结构、图的遍历、最小生成树、最短路径、拓扑排序、关键路径、图的其他应用。(2)针对知识模块设置不同难度等级的实践题目,形成“阶”(如表1:图、阶)。1阶,知识模块:图的存储结构。难度:基础。2阶,知识模块:图的遍历、图的其他应用。难度:基础。3阶,知识模块:图的遍历。难度:中等。4阶,知识模块:图的遍历。难度:较难。5阶,知识模块:拓扑排序、图的其他应用。难度:较难。6阶,知识模块:最小生成树。难度:难。7阶,知识模块:最短路径。难度:难。8阶,知识模块:拓扑排序。难度:难。9阶,知识模块:关键路径、图的其他应用。难度:难。
QAE教学模式中进阶设置。结合层次划分,进阶设置分为两部分:(1)课程学习进阶。随课程学习的推进而推进,在“章节基础进阶”和“章节探索进阶”中完成。达到章节考核基线视为章节学习通过。当前章节学习通过方可进行下一章节的学习。(2)章节层次进阶。层次进阶考察学习的深度,通过四个拓展层次来体现。除“章节基础进阶”(必修)外,达到进阶基线可进入下一层次的学习。
3.3 QAE教学模式中时空拓展式实践教学设置
当前实践课程存在学时分散、学时不足等问题。为解决上述问题课程组进行了数据结构课程教学改革,应用实验平台,打破教学硬件资源的限制,对原有的10学时课上实践教学进行时空拓展。结合“立体化进阶式课程组织”将原有单一的实践课程分为四个阶段:课前实践、课上实践、课后实践、课程延伸实践。教学设置如表2所示。
4 多层次立体化实践课程考核(Multi-level and stereoscopic practice course evaluation)
借鉴智猪博弈理论[12],结合进阶学习过程,采用减量加移位与分层考核相结合的立体化考核方式。对应课程实施的四个阶段,课程考核也分为课前实践考核、课上实践考核、课后实践考核、课程延伸实践考核四个层次。再将四个层次应用在不同的章节实践中,形成立体化考核体系。考核设定为百分制延伸考核,所有考核在实验平台中完成,考核成绩由实验平台自动生成并进行累加。课前实践考核为实践课的门槛考核,只设置通过标识不记入分数统计,通过者方可进行课上实践。课上实践考核,要求通过章节考核基线,应用实验平台自动评判实践分数,并累计平台中实验报告评判分数(教师给出),得出课上实验分数,满分为70分。课后实践考核,依据进阶规则实验平台自动累计分数,满分为30分。课程延伸实践考核,依据进阶规则实验平台自动累计分数,成绩累计入数据结构课程设计,成绩突出者计入创新学分。
各层考核标准(考核基线、进阶基线)可根据学生的学习情况在实验平台中动态调整。分层进阶、逐层递进、多次考核、成果延伸的考核形式将原有分散的实践课程有机的结合起来,并有效的延伸到相关的实践教学中,充分激发了学生的学习积极性。同时实验平台的自动化评价考核管控机制大大节省了教师的工作时间,使教师有更多的时间用于学生的学习指导。
5 结论(Conclusion)
从2015年开始针对“计算机科学与技术”专业学生进行实践课程教学改革,并不断完善QAE教学模式。应用课题组编著教材,基于实验平台重新组织教学内容、教学形式和考核形式。经过三年多的积累,通过学生横纵向考核比较,QAE实践教学模式在培养学生实践能力上有明显效果。在实验完成的数量、深度均有较大幅度提高,据实验平台数据跟踪,学生知识继承转化(创新实践、竞赛)也取得了较好的效果。
参考文献(References)
[1] 王红梅,胡明,王涛.数据结构(C++版)第2版[M].北京:清华大学出版,2016.
[2] 郭瑞波,王梦菊.基于CDIO理念的数据结构课程体系研究与实践[J].实验技术与管理,2016,33(10):213-216.
[3] 杨晓波,陈邦泽.“数据结构”演示实验类交互式微课设计与实践[J].实验技术与管理,2017,34(08):153-157.
[4] 王翔.用MOOC来实现《数据结构》课程CDIO教改的探讨[J].软件工程,2018,21(03):54-56.
[5] 刘晓静,王晓英,张玉安,等.以创新人才培养为目标的数据结构实验教学改革[J].实验技术与管理,2014,31(11):184-187.
[6] 张安勤,叶文珺,田秀霞,等.数据结构课程教学改革方案和应用效果[J].软件工程,2017,20(12):57-59.
[7] 吳长伟,郑晓霞,邓红,等.应用型本科数据结构课程多维度实践教学体系改革[J].中国冶金教,2015,(4):63-66.
[8] 王卓,黄安,陈爱.一种基于阶段式的数据结构课程教学探索与实践[J].计算机教育,2016(5):48-51.
[9] 郭琳.技能大赛与常规教学相结合的网络技术专业实践教学模式改革[J].实验技术与管理,2016,33(12):233-236.
[10] 贾海洋,杨博,虞强源,等.教学与科研关系的思考及其在数据结构课程建设中的实践[J].计算机教育,2017(02):38-40.
[11] 王精明,李君燕.基于PDCA理论的《数据结构》实践教学的探索和实践[J].滁州学院学报,2016,18(05):114-116.
[12] 李登,陈志刚.基于智猪博弈的数据结构课程理论与实践教学研究[J].湖南师范大学教育科学学报,2012,11(4):96-98.
作者简介:
党源源(1980-),女,硕士,副教授.研究领域:数据挖掘,计算机教育.
王红梅(1968-),女,硕士,教授.研究领域:数据挖掘,计算机教育.
刘 冰(1978-),男,硕士,副教授.研究领域:软件开发,计算机教育.