杨桂芝,潘家辉
(华南师范大学 软件学院,广东 广州 510631)
数据结构与算法课程是软件工程专业的核心基础课程,该课程的特点为理论抽象、逻辑性强、知识点较多,学生理解起来比较困难。传统的填鸭式教学模式以教为中心[1],以理论讲授为主,越来越不能适应“互联网+”新时代环境及后疫情时代教学。
随着计算机与网络技术的不断发展,教育方法、教育技术不断变革,慕课(Massive Open Online Courses,MOOC)教学逐渐兴起。然而,MOOC 要求学生具有较强的自制力和毅力,能够合理规划时间,自觉主动地完成系统化学习。很多学生自我管理能力不强,导致学习效果不佳。因此,积极寻找一种较好的教学模式,提高学生的学习兴趣与积极性,提升课堂教学的互动性及教学质量是当务之急。小规模限制性课程(Small Private Online Course,SPOC)是基于MOOC 发展起来的一种更加强调知识准确性和专业性的教学模式,基于SPOC 的混合式教学是将网络平台教学与传统课堂教学优势结合起来的一种线上+线下教学方法[2]。本文采用SPOC 教学模式,并融入思政教学,探讨数据结构与算法课程的混合教学实践方法,以期发挥良好的育人成效与示范作用。
数据结构与算法课程主要介绍如何合理组织数据以及有效存储和处理数据,如何设计算法并对其进行分析和评价[3]。该课程的特点是理论性强、抽象难懂,因此学生学习兴趣度低。学生除需掌握各种数据的逻辑结构、存储结构及运算方法外,还需能将算法转化为可执行的程序。目前,该课程的传统教学模式主要存在以下问题:①课程知识点多且理论枯燥,要求学生具有一定的逻辑分析能力和计算分析能力,造成部分学生学习兴趣不高;②课时少、授课内容多,填鸭式教学导致学生学习效果欠佳;③课程实践学时较少,难以培养学生的动手能力、分析和解决实际问题的能力[4];④部分学生自主性学习意愿不强,遇到问题便寻求老师、同学帮助;⑤没有较好地融入思政育人元素[5]。
基于SPOC 的混合课程建设使用学者网[6]作为课件发布平台,学生通过其中的教学资源,如微视频、多媒体课件等进行在线学习,课后作业及实验题目上交学者网教学平台。课程建设方案遵循以下原则,将线上线下、课内课外、教师学生几个层面有效融合:①课程采用短、小、精的微课模式,帮助学生进行碎片化学习。具体来说,教师讲授的每个知识点时间一般为10~15min,要求讲解完一个具有代表性的知识点后,学生能举一反三;②在平台上进行混合课程的课件和作业发布,学生在上课前观看相关知识点视频及教学公告中的思政教学资源,对将要讲授的重点知识进行预习;③制作的视频资源尽可能联系现实生活中的实例,提高学生学习兴趣,例如讲到图的遍历算法时,如果只是单纯讲解图的深度优先搜索遍历和广度优先搜索遍历算法,学生会感觉比较枯燥,但如果根据图的遍历算法讲解如何拯救007,避免007 被鳄鱼吃掉,就显得生动很多;④联系现实生活中与数据结构与算法课程中相关的前沿问题,培养学生创新能力;⑤教师运用数据结构理论、抽象和设计3 个形态强调抽象数据类型的有效表达,配备扎实的实践训练,分层次培养具有国际竞争力的软件工程创新人才;⑥通过知识讲授传递思政思想,提高学生综合素质,培养大国工匠精神。
利用多媒体技术构建多种资源优势互补的、支撑网络教学的立体化教学资源,如多媒体课件、微视频、企业面试题等。该课程教学实现了以学生为中心、以教师为主导的教育理念,教师在教学过程中构建“以学定教,学生在做中学”的课程体系。采用学生课前线上预习、课中教师根据学生预习情况授课、课后巩固补习的模式,提高学生的学习兴趣和热情,完成学生在学习过程中的角色转变,由观众变为学习的主人。基于SPOC 的混合教学模式具体设计如图1所示。
混合教学环节设计如图2 所示,学生通过线上观看视频、PPT 课件了解所学内容,教师通过提问、讨论对学生不懂的内容进行详细介绍,并采用翻转课堂、小组分析与讨论等形式完成学生能力提升。
该课程充分利用多媒体课件、课内外拓展学习平台、网络技术及各种现代化教学方法(翻转课堂教学法、分层次教学法、分数激励法、案例讨论法、总结归纳法、思政教育等),采用分层次教学、基础理论与前沿课题相结合等方式实施教学,培养新一代“高、精、尖”的特色化软件工程人才。
3.2.1 案例—理论—实践—提高的教学模式
案例—理论—实践—提高的教学模式即教师在授课中首先引入生活中与学生息息相关的案例,激发其学习兴趣;教师对基本理论知识、操作实践进行分析讲解;上机实验课要求学生掌握算法转化为程序的基本方法及调试过程。课后学生利用所学知识完成综合开发设计实验,培养高级程序设计能力。
该课程案例应注重与现实生活接轨,如教师在讲解数据概念时,如果只是枯燥地说数据是指所有能够输入到计算机并能被计算机程序识别和处理的符号[7-8],学生会感到枯燥乏味,不容易理解和记忆。但如果先提及一句俗语:“巧妇难为无米之炊”,再对数据概念进行讲解:“其实数据就是计算机程序设计中的米”,便可以提高学生兴趣并使其记忆深刻。
3.2.2 个性化分层次教学
促进学生个性化发展并根据学生特点制定个性化学习方案,在教学中实现分层次教学。例如,成绩好的学生可以选择ACM 竞赛题、考研题等进行提升学习,成绩一般的学生可在教学平台通过微视频学习基本知识。
3.2.3 基础与前沿相结合的多层次任务驱动实践教学
Fig.1 Design of hybrid teaching mode based on SPOC图1 基于SPOC的混合教学模式设计
实践教学是数据结构与算法课程的重要一环,不仅要强化基础知识训练,还要鼓励学生跳出课本,解决生活中、实践中遇到的现实问题。教师根据自身科研特点和九赛三考项目实践,选择难度适中、具有代表性的研究内容(如讲到查找内容时结合大数据分析引导学生研究搜索引擎机制)作为实验题目,鼓励学生积极参加相关学科竞赛。
该课程遵循两性一度(高阶性、创新性、挑战度)的金课标准,秉承国际工程教育认证以成果为导向、以学生为中心、可持续发展的核心思想,深刻挖掘思政要素,将教学内容划分为数据结构基础、线性结构、非线性结构、常用数据处理技术和算法及编程5个部分,并将思政教学融合于教学的各个模块,培养学生的爱岗敬业、科技报国、大国工匠精神。
3.3.1 课程特色
针对以往教学模式存在的问题,研究可行的翻转课堂教学模式,从以教为中心转变为以学为中心,研究、探索与实践具有软件工程专业特色的教学模式。在教学过程的各个环节应用信息技术、多媒体技术,实现课程教学的根本性改革。
针对软件工程专业的特点开展丰富多彩的学习活动,如答疑、提问、交流、讨论、软件开发、项目实践、参加学科竞赛等,激发学生的创造欲和创新精神,实现了翻转教学的深度互动机制。采用多手段、多角度对比教学,沿用取得教学成果一等奖的学、教、做、考、赛进阶式教学模式,有效培养学生的实践操作能力和创新意识。数据结构与算法课程特色如图3所示。
Fig.3 Features of data structure and algorithm course图3 数据结构与算法课程特色
为培养特色化软件工程人才,在课前、课中、课后引入与课程相关的前沿课题与思政教学案例。教师课前在学者网发布教学公告,引入与该课程相关的前沿课题,例如在学者网师说栏目发布与图知识点相关的《如何识别规划路径》课题,鼓励学生多样化探索。教师在授课中注重导入相关前沿案例,例如在讲解二叉排序树的查找算法时导入百度搜索引擎的查找算法及蜘蛛抓取机制,激发学生的学习兴趣及科技报国的责任感。教师课后鼓励学生在大创项目、团委项目及学科竞赛中应用所学知识,如学生作品《生存创造》和《重回蓝天》(见图4)成功应用了第6 章的最短路径算法,并在中国高校计算机大赛——微信小程序应用开发赛中获得三等奖。
Fig.4 Achievement display of frontier application part of students' works图4 学生作品前沿应用部分成果展示
3.3.2 课程影响力分析
数据结构与算法是华南师范大学第一批互联网+在线资源建设项目的引进课程,在软件学院、职业教育学院中进行了翻转教学的教学实践。目前,该课程在学者网的访问量已达14.6 万人次。课程授课教师积极参加教学模式创新经验交流会,通过网络教学平台及主题报告分享等模式,使得受益学生人数越来越多。
该课程坚持立德树人,以学生为中心,将价值塑造、知识传授和能力培养三者融为一体[9-10]。课程采用多视角、全过程、前沿应用等方式融入思政教育,将思政教育渗透到工科专业教育中,从而实现专业教育+思政教育两贯通的深度融合。课程思政建设思路如图5所示。
具体来说,该课程教学从以下几个方面融入思政教学:
4.1.1 课堂教学有效融入思政教学
例如,教师在第3 章教学中吟诵与队列相关的小诗,不仅活跃了课堂气氛,潜移默化地将人生价值观传递给学生,还能提醒学生珍惜眼前,激发其奋斗精神。队列小诗中蕴含的思政教育示例如图6所示。
Fig.5 Thoughts on curriculum ideological and political construction图5 课程思政建设思路
Fig.6 Ideological and political education contained in queue poems图6 队列小诗中蕴含的思政教育
4.1.2 设计融合大国工匠精神的教学案例
近年来,该课程开发积累了大量积木式、任务式的教学任务案例,课程在团队合作、大国工匠精神等方面融入思政教育,如教师在讲到有向图后布置任务时要求学生完成校园导航系统或广州地铁乘车线路规划系统设计;讲完单链表后要求学生完成学生管理系统设计等。融合大国工匠精神的教学案例示例如图7所示。
4.1.3 辅助教学模式下的思政教育
Fig.7 Teaching cases integrating the craftsman spirit of great powers图7 融合大国工匠精神的教学案例
在“互联网 +”环境下,该课程在网络教学平台(学者网、砺儒云)、在线课程教学、在线教学活动、蓝墨云班课、手机移动教学(微信群、QQ 群)等方面展开思政教育。
该课程依托国家一流本科软件工程专业,将思政元素融入到课前预习、课堂教学、实验教学、课后巩固等多个教学环节,实现全方位过程化的思政教育。课程思政具体实施方式如图 8所示。
Fig.8 Detailed implementation mode of curriculum ideological and political education图8 课程思政具体实施方式
4.2.1 多环节多元化课程思政教学
教师在教学中利用课程精品资源平台开设师说栏目,使学生聆听老师的心灵细语。例如在讲解哈夫曼编码时,教师可在学者网发布体现人文精神、职业操守的师说栏目,具体示例如图9所示。
Fig.9 Teacher talk column of course website图9 课程网站的师说栏目
4.2.2 知名教授、专家参与教学活动
在课程资源开发与应用中充分利用社交网络和“互联网+”资源,鼓励知名教授、专家参与教学活动。在教学过程中引进一批优秀企业,如达内、中软、砺锋等的企业工程师、专家来软件工程专业授课;引进国际化青年英才,加强师资队伍“双师双能”建设,实现与时俱进的课程思政,提升引领性、时代性和开放性。
4.2.3 课程考核评价融入思政教育
在课程考核评价中有效融入思政教学。课程总成绩为期末成绩60%+平时成绩40%,其中平时成绩中占比20%的课后作业包含3 个综合实践题目,分别为计算器的实现、压缩软件的实现、校园导航系统的实现,学生选择其中一个实践题目组队完成。
教师在平时成绩考核方案中引入CDIO 工程教育理念,鼓励学生主动将所学知识融入到实践当中,提高动手能力,培养作风严谨、敬业守信、推陈出新、团队合作等各种素养。
数据结构与算法课程中引入了工程项目案例教学、研讨教学等多方位、多角度的立体化教学方法,同时鼓励学生参加大学生程序设计、ACM 竞赛、CCF CSP 专业认证等与该课程相关的专业大赛及考试,培养其创新能力和创业意识,目前取得以下成效:①“基于SPOC 的数据结构与算法混合在线教学案例(栈和队列)”获评广东省本科高校在线教学优秀课程案例一等奖;②学生能够掌握考研中数据结构与算法课程的所有知识点,掌握ACM、蓝桥杯、CSP 认证等学科竞赛中与数据结构相关的基础知识;③针对现实世界中的具体问题设计的实验有效训练了学生对综合知识的运用能力,引入的可视化编程提高了学生兴趣,培养了高级程序设计技能,为其今后走向社会打下了良好基础;④移动云教学的引入可以使学生全心全意地投入到学习中去,每个学生都有回答问题的兴趣;⑤实践案例教学模式使学生在学习过程中充分获得成功体验;⑥碎片化教学能够实现分层次教学,每个学生选择适合自己的内容进行学习,剔除已经学会的内容,从而提高了学习效率;⑦有效培养了学生的创新思维和创业意识,更加符合新时代人才需求;⑧成功将中华民族的优良传统、社会主义核心价值观传授给学生。
新的教学模式的出现既是挑战也是机遇,新形势下要求学校、教师和学生共同努力,紧跟时代发展步伐,共同促进线上线下混合教学模式改革和教学质量的稳步提升[11-12]。课程思政视域下的基于SPOC 的混合式教学模式打破了传统教学模式,将多媒体课件、微视频、课程题库、前沿课题等教学资源与各种学习方法、学习模式、学习情境进行整合,将教师的地位由主讲者变为引导者,使更多学生以多种学习方式参与到教学活动中。同时在该课程中无缝融入科技报国、家国情怀、大国工匠精神、中国传统文化、社会主义核心价值观等思政教育元素,引领实现高校教育立德树人的根本使命。在今后的教学中,如何把握线上线下教学设计的平衡与侧重,并在SPOC 教学模式中深度融合思政元素,进一步提高教学效果与学生兴趣,将是重点研究方向。