新工科背景下“数据结构”金课教学模式研究
2020-08-06何施茗李峰陈曦王进
何施茗 李峰 陈曦 王进
摘要:为了提高新工科背景下信息类专业数据结构课程质量,提出基于云教学平台的数据结构金科教学模式改革方法。主要内容包括:采用翻转课堂和研讨式教学模式;梳理课程间衔接内容,建立数据结构课程模块化教学体系;改革教学流程,以知识点为单元,充分安排课前、课堂、课后时间,要求学生预习课程并完成作业,结合理论、实训和研讨教学方式,设计完整闭环六环节的教学流程;采用多样化考核形式,将重心从理论知识考试移向实践和开发能力培养。
关键词:新工科;数据结构;研讨式教学;教学流程
中图分类号:G642 文献标识码:A 文章编号:1006-8228(2020)07-108-04
0引言
随着新一轮科技革命和产业变革的到来,工程教育作为科技进步和创新的后备支撑将迎来新的机遇和挑战。自2017年2月教育部积极推进新工科建设以来,各大高校开启了工科专业教育改革的新征程。同时,教育部发布一流课程“双万”计划,建设一万门国家级一流线上线下的精品课程和打造一万门省部级一流线上线下的精品课程。课程建设标准达到“两性一度”:高阶性、创新性和挑战度。数据结构作为计算机专业的主干课程,为了适应新的发展需要,也将以新工科建设为契机,探索新的教育教学理念,建设高阶性、创新性和挑战度的金课,培养能够适应时代发展的,具有多元化、创新性的卓越工程人才。
计算机专业基础核心课程之一的数据结构,是对学科中问题求解理论的抽象和算法设计的方法,其在学科知识体系中有重要位置。课程一般在大学一年级下学期或二年级上学期开设,不仅对前面学过的计算机语言进行总结,而且培养基本的数据结构分析能力和综合程序设计实现能力,体现着创造性思維的培养过程,是计算机科学与技术人才素质培养的核心。它承上启下,贯通始终,对学生编程能力培养至关重要,受益终身。目前数据结构课程大致存在如下问题。
(1)本科生缺乏相关解决复杂问题的综合能力和高级思维。课程以知识点传授为主,教授和考核环节都未能体现对分析复杂问题、解决复杂问题的能力和思维方式的培养,导致专业人才理论基础欠缺、专业实践动手能力不够。
(2)课程内容未与时代前沿结合,教学形式互动性较弱,教学方式和成果缺乏个性化。课程内容较久未更新,没有加入前沿的问题和应用,基本采用填鸭式、满堂灌式教学,缺乏互动,导致教学效果不明显,学生缺乏学习兴趣,难以融入学习中。
为了解决上述培养问题,在现有计算机科学与技术专业培养模式的基础上,针对计算机专业学生的学习现状和社会对该专业人才的需求情况,依托云教学平台、智慧教室和Online Judge在线评测系统,以培养学生算法研发、实践能力为目标,深入研究基于研讨的混合式教学模式和考核改革,打造具有高阶性、创新性和挑战性的金课。
1相关工作
华伟等Ⅲ基于小组合作的同伴教学模式,在教学实施过程、问卷调查、非标准化答案考核、多信息渠道补充等方面开展工作,以两个实例说明数据结构与算法分析课程全方位立体化教学模式中不同教学模式的相互促进作用,并说明教学效果。龙颖波等为GIS专业的数据结构课程设计实践教学,在教学内容上兼顾数据结构基础知识与GIS专业问题的衔接与融合。刘晓静等培养创新型人才的数据结构课程建设与实践,通过混合教学改革、加大考核力度、学科项目和竞赛培养学生创新实践能力。王德兴等嘲通过微信把教学资源(如课程PPT、视频或动画等)中的数据结构知识点进行讲解和展示,学生在碎片化时间学习小知识单元,让学生可以不受时间、地点的限制。张冰涛等为适应工程认证要求,将原有以理论教学为主的教学方式,转换为以理论教学为基础、实践教学为核心的教学体系,构建6-8个科学可行的实践教学案例,从而锻炼和培养学生的工程实践能力。潘磊等从教材选择、教学内容改革、教学模式改革、考核方法等方面提出并实施了相应的教学改革方案。
2实施方案
2.1整体思路
采用翻转课堂和研讨式教学模式,坚决强化学生的主体地位,着力培养学生自主学习的习惯,让学生先预习课程并完成作业,教师通过评估作业的完成情况,了解学生知识点的掌握情况,在课堂上有的放矢,节约教学时间,提高教学质量。
实践教学是数据结构课程必不可少的环节,是培养学生动手实现能力、综合知识运用能力的必要环节。在总学分不变情况下,调整理论和实验课比例把节省出的理论课时全部加到讨论和实践环节上。
加强程序设计语言与数据结构的衔接内容,同时衔接避免课程之间重复的知识点设置,全面提高学生的计算思维和编程能力。重构课程内容,把课程的每一章每一节的知识点提炼出来,每周设置一节理论课、一节实验课、一节研讨课。
建立数据结构课程模块化教学体系,包括基础知识、关键技术和开发基础知识,作业体系包括预习作业、课堂习题、研讨作业(小程序开发实验和应用软件开发实验)。
改革教学流程,以知识点为单元,充分安排课前课堂课后时间,结合理论、实训和研讨教学方式,设计六环节的教学流程,实现教学过程的完整闭环。
对于关键技术等理论知识,考虑到该课程理论性强、难度大等特点,采取深入浅出的原则,对每个教学内容结合实际应用问题,和类比其他场景的类似问题和方案,以更加生动的方式讲述该课程的内容,引导学生逐步理解概念与原理之间、原理与应用之间的联系。课堂提问常态化,提高学生上课的抬头率。设计程序开发实验内容,通过应用程序开发,提高学生的动手能力。
围绕教学体系和作业体系,将到课率和整个作业体系纳入到考核中,使得考核形式多样化,将重心从理论知识考试移向实践和开发能力培养。
2.2具体方法
采用翻转课堂和研讨式教学模式,建立数据结构课程模块化教学体系和作业体系,体系中通过数据结构经典算法来吸引学生的兴趣,通过引导式教学和图文并茂的讲解方法来帮助学生理解算法的基本思想,然后通过研讨作业中的小程序开发提高学生的动手能力,最后通过考核改革将学生重心从理论知识考试移向开发能力培养,将课程考核理论和实践占比从以前的7:3调整为4:6,达到改革目标。
借助信息化辅助云教学平台“计通云学宝”、“OlineJudge”系统和智慧教室开展教学和考核改革。“计通云学宝”实现了教学内容和过程标准化,同时兼顾学生个性化需求;监控课堂教学全过程,量化教学质量的评估与考核;打造虚拟化的企业级实验环境。不能上网、不能拷贝,学生在“云学宝”中编辑的每一个程序都需要学生自己输入每一个字符。教学考核“OlineJudge”系统提供全天候的在线自动评测,学生提交程序代码,无需人工判定,系统根据测试样例自动给出评判结果和错误提示。与ACM-ICPC国际大学生程序设计竞赛和CCF CSP测试采用一致的评测方式,可直接对接,是学生课后通过刷题练习提升编程能力的有效平台。智慧教室为实践研讨式教学设计,便于学生分组进行学习、讨论和研究。不同于一般教室的横排和大圆桌的位置摆放,智慧教室包括6张小讨论桌,每个讨论桌上都配置42寸显示屏,可随时切换投影组内学生的笔记本电脑;教室前后都安装黑板,6个小组都可同时板书思路或讨论结果并进行讲解,实现了灵活的电子、手写的组内、组间的讨论方式。
重构专业基础课内容,把课程的每一章每一节的知识点提炼出来,每周设置一节理论课、一节实验课、一节研讨课。改革教学流程,以知识点为单元,充分安排课前课堂课后时间,结合理论、实训和研讨教学方式,设计六环节的教学流程,实现教学过程的完整闭环,如图1所示。教与学流程为:教师布置教学任务→学生预习并提交第一预习作业→教师根据学生完成的预习作业进行重点知识讲解→学生学习并修正第一次预习作业→教师组织OJ实训与讨论→学生参与OJ训练与讨论。培养学生自学能力、研讨能力、团队协作能力、交流能力。
2.3建立数据结构课程模块化教学体系
对c++语言的知识进行复习,C++语言程序设计课程学习的好坏将直接影响数据结构课程学习的效果,在数据结构课程开课的第一周的课上,任课老师对c++语言课程中类、封装和继承进行适当的复习,对这部分内容进行梳理和强化,为数据结构课程的讲解奠定基础。具体参见表1。
任课老师在讲解算法时需要采用多种教学手段,如启发式教学,在教学过程中根据教学任务和学习的客观规律,从学生的实际出发,采用多种方式,以启发学生的思维为核心,调动学生的学习主动性和积极性。在数据结构的授课过程中,引导学生掌握解决问题的方法,让学生参与到探索教学的过程中,激励学生自我思考,充分发挥主观能动性,开发创造能力,使学生在学习过程中有成就感,这样有利于培养他们确立科学的态度和掌握科学的方法。
实践和案例教学,案例式教学,是通过模拟和重现真实工程应用中的一些问题或事件的案例,让学生把自己纳入案例场景,通过讨论或者研讨来进行学习的一种教学方法。教学中既可以通过分析、比较,研究各种各样案例的成功和失败。此种方式,有助于培养和发展学生主动参与课堂讨论。
在课堂上,除了用PowerPoint进行演示外,还可以利用Word直接进行案例设计与讲解,另外结合编程环境,直接在课堂进行算法的编写与调试,让学生身临其境,对知识点有更加感性的认识。研讨课上,学生分组实践答题,每组派学生代表,用黑板或教師机解题。学生理论学习之后立即实践,能够多角度的理解所学的知识,并应用到解决实际问题,有利于锻炼学生的综合性的分析与解决问题的能力。
2.4课程考核评价体系
考核形式多样化,围绕课程内容,考核形式包括到课率、课堂提问、预习作业、基础实验作业、综合实验报告、期中考试等等。具体参见表2、表3。本课程考核拟采用平时考核与期终考核结合的方式。平时考核成绩占总成绩的70%,期终考核成绩占总成绩的30%。平时考核成绩合格才能参加期终考核,平时考核和期终考核都达到及格才为有效,两项分数合计为课程最终成绩。
3建设与改革成效
改革从2017级学生开始试行,并且要求2017级之后所有学生必须参加CCF计算机软件能力认证(cCF CSP认证)。2017年第十一次认证参与121人获全国17名,2018年第十三次认证参与100人获全国28名,第十四次认证参与316人获全国7名,第十五次认证参与411人获全国22名,2019年第十七CCF次认证参与306人获全国7名(第十六次CCF未公布排名)。大学生计算机系统与程序设计竞赛(cCF CCSP竞赛)成绩2016年获得第六名,2017年获得第七名,2018年获得第三名,2019年获得第十五名。相关教学改革获得2019年湖南省教学成果三等奖。
4结束语
经过四年课程建设与改革,人才培养质量显著提高,学生实践创新能力大幅度提升,取得了良好的教学成效。在数据结构课程的建设中,依托云教学平台和OnlineJudge、翻转教学和研讨教学,结果单元模块和六环节的教学过程,建立科学的课程体系,实现创新型人才培养目标。引导学生自主学习,参与教学的全部环节之中,实现实践创新能力培养。