摘要: 为有效达成线上线下混合式教学目标,达到一流课程的建设标准,根据地方民族院校生源特点,算法分析与设计课程以“立德树人”和“两性一度”为基本原则,采取“价值引导、学生发展为中心、持续改进、以产出为导向、综合能力提升为本”的教育理念,构建“网络开放共享课与面对面授课相结合,在线平台作业实践,线下学习线上强化的跨时空相结合”一体化以及“竞赛引领 + 五步法”混合教学模式,结合“形式多样化、内容多面化和主体多元化”的考核方式,全面提升了学生的独立自主学习和实践创新能力。
Abstract: In order to effectively achieve the goal of blended online and offline teaching, and meet the construction standards of first-class courses, based on the characteristics of local ethnic colleges and universities, algorithmic analysis and design courses are based on the basic principles of “moral education” and “gender equality”, adopting the educational philosophy of “value guidance, student development as the center, continuous improvement, output oriented, and comprehensive ability enhancement”, constructing an integrated “cross time and space combination of online open and shared courses, online platform homework practice, and online reinforcement of offline learning”, as well as a “competition leading + five step method” blended teaching model, combined with the assessment methods of “diversified forms, diverse content, and diversified subjects”, comprehensively enhancing students’ independent and independent learning and practical innovation ability.
1. 引言
为贯彻加快建设高水平本科教育,全面提高人才培养能力,实现双一流的建设,2019年《教育部关于一流本科课程建设的实施意见》中指出要建设适应新时代要求的一流本科课程,形成中国特色、世界水平的一流本科课程体系。一流本科课程建设的标准是“提升高阶性、突破创新性、增加挑战度”,其要义是教学内容、教学方法、教学手段、教学评价等要素的改革创新,其目标是培养具备知识能力素质的创新型、复合型、应用型人才[1]。在这一背景下,以传统教学为主的课堂教学模式不能满足学生多样化学习和工作的需求,必须加快一流课程建设的进程。线上线下混合式一流课程是一流课程建设的重要着力点[2]。
算法分析与设计课程是一门计算机科学专业的核心课程,主要研究算法的设计、分析和应用。这门课程的目的是帮助学生掌握算法的基本概念、原理和方法,培养学生解决实际问题的能力。该课程理论与实践相结合,比较适合开展线上线下混合教学。因此,针对传统课程教学中普遍存在的理论与实践分离、侧重于传授知识,而缺乏能力的培养、课程的考核方式比较单一等“痛点”,陈英等在课程中运用OBE教学模式,改革教学目标和任务,与竞赛相结合,推进“师导生学”和线上线下混合教学方式,制定长效激励机制,构建面向学生综合产出的考核方式[3]。针对课程“痛点”,文献[4]提出“思政先行、竞赛引领、产教整合、质性评价”的课程改革方案,给出了相应的改革实施措施。此外,也有某些高校针对本校实际教学中遇到的问题和痛点,从在线开放型课程及资源的建设、混合模式教学设计、翻转教学实施、多元化的形成性考核评价管理等方面提出了教学改革措施[5]。另外,针对实践环节盲目验证算法,而对算法的运行效率、测试数据规模以及实际的应用场景的考虑不足以及学生代码抄袭严重等现象,文献[6]分析了程序设计竞赛的特点及课程教学中存在的问题,提出了基于程序设计竞赛的教学模式,并在教学中进行了实践。针对实践内容入门难、基础知识储备差距大和综合能力的考察不变等问题,文献[7]提出了引入精炼概念模块,设置附加题和大作业等方式的算法竞赛训练体系融入方案。为提升实践环节的教学效果,也有学者从在线测试(OJ)系统建设、实践团队组织、教学活动开展和竞赛组织参与等方面,阐述了在教学过程中结合OJ以及竞赛开展课程教学的实践模式[8]。这些文献所提出的改革措施,充分体现了一流本科课程建设的“两性一度”原则,实现了“以学生为中心”,激发学生学习主动性,引导培养学生分析问题,解决问题能力及团队合作能力,提高了教学效果。
然而,竞赛结合的教学模式能够有效提升学生实践能力,尤其适合培养竞赛型人才,但因其针对性和特殊性,难以惠及每一位同学,在普及方面存在一定难度。因此,依据学生生源特点将竞赛元素合理融入教学环节,是当前教学模式改革中一个亟待解决的问题。虽然线上线下混合式教学能够解决传统课程教学中的“痛点”,但这种教学模式与学生的整体生源情况、知识储备以及基础能力密切相关,且对这些因素的依赖性较高。据文献分析所知,结合地方民族院校生源特点研究《算法分析与设计》课程混合式教学实施策略方面的文献较少。为此,本文针对地方院校学生绝大部分来自当地少数民族学生,知识储备能力和基础薄弱等现象,探讨一种“竞赛引领 + 五步法”混合教学模式及其实施路径。该教学模式同等重视理论教学与实践教学,尤其强化了实践环节的指导与答疑,注重合理的引导方式激发学生的学习积极性和主动性。另外,竞赛元素被合理地融入课后环节,以尊重个体差异,促进学生的多元化发展。
2. 理念与目标
理念决定方向,思想决定出路。为有效达成线上线下混合式教学目标,达到一流课程的建设标准,课程组在算法分析与设计教学中以“立德树人”和“两性一度”为基本原则,确立了“价值引导、学生发展为中心、持续改进、以产出为导向、综合能力提升为本”的教育理念。目标决定行动。本课程以学生发展为中心,制定了如表1的三层目标。
Table 1. Course objective
表1. 课程目标
价值目标 |
养成精益求精的工匠精神、科技报国的使命担当,坚定“四个自信”的爱国主义精神;养成自主学习和团队合作意识,能够科学求真、不断挑战自我、战胜困难。 |
能力目标 |
理解算法的本质,设计和分析算法;具有应对各种实际问题,设计出高效的算法;评估算法的效率和正确性,优化算法以提高效率。 |
知识目标 |
能用基本算法的概念、原理解释问题,熟练运用基础算法;能说明算法分析与设计的前沿动态及其作用;能构建算法分析与设计基础知识体系,清楚知识发展脉络及演变过程。 |
针对课程性质和地方民族高等院校学生高考成绩普遍不高、习惯于被动学习、实践能力和编程功底还相对比较薄弱的生源特点,课程组结合一流课程建设要求围绕教学资源、教学内容、教学模式和考核方式等提出了改革措施。
3. 线上线下混合式教学的一流课程建设策略
3.1. 重构教学内容
依据地方民族高等院校生源和该课程的特点,为满足零基础学生在内的绝大多数学生学习的同时,还要兼顾学习能力强、知识需求量大的学生的个性化培养,真正实现层次化、差异化培养,课程组采取“引进 + 自建”的方式和兼容并济的原则,在教学内容中引进已有C语言和算法相关国家一流课程资源和编程类竞赛题构建阶梯式教学内容[9] [10],包含从基础知识掌握到基础知识的应用,再到知识的综合应用,经过训练到进阶和高阶应用,完全符合一流本科课程建设的高阶性原则,具体设计如表2所示。
对于数字化资源,课程组在SPOC平台精选建设符合本校学生层次的在线视频教程,便于学生课后自习理论知识。PTA平台建设的各档次的题库,有助于学生进行编程训练。学生在线上自主学习和练习编程时间占比是整个教学时间的40%左右,个别对编程程序特别感兴趣的同学自己学习的时间会更长。
Table 2. Ladder-step teaching content
表2. 阶梯式教学内容
阶梯式模块 |
教学内容 |
基础知识 |
输入输出,格式控制,变量定义等 |
基础应用 |
顺序结构、分支结构、循环结构 |
综合应用 |
数组、字符串、数值计算及应用 |
进阶应用 |
排序、大整数处理、递归 |
高阶应用 |
实际综合案例、ACM和蓝桥杯等比赛题、借助文献改进算 |
此外,根据课程特色和思政教育理念,精心设计思政融入点,将时事政策、经典人物案例、中华传统文化和工程文化等思政元素深度融入到教学内容,潜移默化中实现对学生的价值引领和教育赋能。
3.2. 构建“竞赛引领 + 五步法”混合教学模式
依据地方民族高等院校生源和该课程的特点,为了培养学生的实践创新能力,课程组构建了线上线下一体化的“竞赛引领 + 五步法”混合教学模式,进阶式培养学生的计算思维、创新思维和工程思维。
借助文献[3]和[5]的思想,结合生源特点,采用“网络开放共享课与面对面授课相结合,学生线下学习线上巩固的跨时空相结合,在线平台作业实践”一体化的线上线下相结合的混合式教学手段,具体设计如表3所示。经过课前、课中、课后,跨时空、跨平台、多结点有机结合,有效组织资源,使学生从掌握基本知识点到学会运用知识编写程序,从机械编写程序到能强化设计逻辑,合理设计程序,使学生逐步形成程序设计思想,培养学生的逻辑思维能力,养成严谨的学习习惯和自我学习能力,产生编程的兴趣。
Table 3. Hierarchical online and offline blended teaching method
表3. 阶体化的线上线下混合式教学手段
课前 |
课中 |
课后 |
教师在在线平台发布预习任务,学生根据预习任务观看视频,学习知识要点,线上完成课前自测。教师根据在线平台学生观看时长、自测结果掌握学生预习效果,以此为依据动态设计课中讲解重点。 |
以学生为主体、教师为主导的方式传授知识点,查漏补缺。算法实践阶段,学生在PTA平台进行以个人或小组为单位分析、讨论、编写程序、调试程序完成任务,以小组为单位演示、互评、改进、优化程序。教师针对共性问题进行点评和讲解。 |
学生借助网络开放共享课强化知识点和预习,借助PTA平台完成课中讲解的案例,对经典问题进行编程训练,不断迭代,提升编程能力。 |
课程组将学科竞赛有机融入于教学内容和教学环节。教师对“蓝桥杯”全国软件信息专业人才大赛和ACM竞赛等学科类主要比赛的历届主题或题目进行梳理,将其融入日常教学中,结合教材内容进行有重点有针对地讲解、实践,最大化提高教学效率。同时,任课教师鼓励学生参与校级和省级学科竞赛,实现学习、教学、比赛三者相互促进[11]。
竞赛引领教学的模式有助于学生和教师更好地洞悉学科最新动态和要求,从而教师及时调整教学内容,优化课程体系,学生还能开阔眼界和思维。教师对参加竞赛的学生给予个性化指导和针对性提升策略,从而激发学习内驱力,让学生忙起来。这种教学模式通过学科竞赛打通了第一课堂和第二课堂之间的壁垒,将能力的提升从课内延展到了课外,有助于培养学生竞争意识。更重要的是,竞赛作为“跳一跳才能够得着”的挑战,其挑战性和难度性促使学生在过程中全力以赴,主动增加学习投入;达到目标后的成功也能让学生充分体验学习获得感,从而进一步主动学习,自我加压,形成学习良性循环[11]。
Table 4. Recursive algorithm teaching design
表4. 递推算法的教学设计
课前 |
教师活动 |
学生活动 |
设计意图 |
有没有看到校园贷的宣传?如何计算贷款的还款额和根据贷款、还款方式和贷款额计算利率? |
讨论和收集校园贷的案例;上网查阅或AI辅助查阅贷款利率如何计算;跟金融专业的同学交流。 |
学生通过收集资料完成各项预习任务,培养主动地探索知识、发现问题、解决问题,从而构建自己的知识体系和价值观。 |
课中 |
第一步:新课导入 |
教师活动 |
学生活动 |
设计意图 |
以同学收集的案例给出一款月息0.99%的校园贷产品,学生小张借款1万元,分期12月偿还,每月偿还本息932.33元。提问:利率是否是按宣传的一样?引导学生利用课前查阅的资料按0.99%月利率还款,每月还款额为887.93真实利率是多少? |
根据查阅的资料指出根据借款额、利率和还款方式的月还款;发现校园贷的不诚信,利用同学们对金融知识的不了解欺骗同学们。 |
吸引学生的注意力,激发学生的学习兴趣和好奇心,为后续的教学活动做好心理准备;引出教学主题,让学生明确本节课的学习内容和目标。 |
第二步:新知探索 |
教师活动 |
学生活动 |
设计意图 |
通过金融知识科普小视频讲解“净现值公式”根据净现值公式
手算利率比较复杂,引出递推算法。确定递推项、递推起点、分析地推过滤、判断终止条件。根据算法思想,编写伪代码。 |
结合课前查阅资料进一步了解金融知识;对递推算法有一定的了解;根据教师的引导共同编写伪代码。 |
向学生传授新的知识内容,这是教学的核心环节;培养思维能力,递推算法的讲解培养同学们运用知识解决问题的能力,提高算法思维的敏捷性和准确性。 |
第三步:算法实践 |
教师活动 |
学生活动 |
设计意图 |
引导学生根据算法思想和伪代码编写完整的代码,计算最终利率;巡视指导。 |
以小组为单位编写代码;相互讨论和查看代码,更好的提高代码的准确性和完整性;最终代码提交到PTA系统上。 |
学生通过实际编写代码,加深对递推算法的理解,培养学生运用知识解决问题的能力;学生在小组中相互交流、相互帮助、共同进步,不仅提高了学习效率,还培养了学生的团队协作能力和沟通能力。 |
第四步:知识进阶 |
教师活动 |
学生活动 |
设计意图 |
最终得到利率(月利率为1.76%,年利率为21.12%)和金融科普视频(关于不同贷款的利率)引出本节课的思政内容——校园贷其实是高利贷;通过反诈视频(无法偿还校园贷发生的悲剧)宣传校园贷不仅对学生个人,对家庭对社会造成的危害;根据任何的借款额、还款方式和还款额都可以计算真实利率 |
了解校园贷带来的危害,不仅自己远离校园贷,还要劝阻身边的人远离校园贷;修改代码,使代码变成通用代码,根据不同的借款额、还款方式和还款额计算真实利率 |
课程思政引入提高学生的防范意思,培养正确的价值观;知识进阶体现了内容的高阶性和挑战度,提升知识综合运用能力。 |
第五步:知识总结 |
教师活动 |
学生活动 |
设计意图 |
总结新课知识,递推算法;布置作业:(1)完成PTA上的客观题;(2)编程题完整代码的提交。 |
回忆课堂学习过程,提高对递推算法的认识,并将所学知识应用于实际问题 |
帮助学生梳理所学的知识,形成知识体系,加深记忆。同时,引导学生将所学知识应用到新的情境中,培养知识迁移能力。 |
课后 |
教师活动 |
学生活动 |
设计意图 |
指导学有余力的同学把课堂内容修改为小程序,放到公众号里,以便学生们随时可以计算利率,时刻提醒自己理性消费,远离校园贷;递推算法的经典例题和往年比赛题目放到PTA,以供同学们练习。 |
大学生如何合理规划生活费,远离校园贷也可以作为同学们社会调查报告的主题之一;结合自身能力,加强练习,准备参加程序类的相关比赛。 |
尊重个体差异,培养同学们的多元化发展;满足不同学生的学习需求,促进共同发展。 |
此外,课程组为提高学生的编程能力和创新意识,体现以学生为主体的教学理念,课中采用问题导入、情景教学、讲授法、演示法、任务驱动法等多元教学方法,构建了“新课导入、新知探索、算法实践、知识进阶、知识总结”的五步教学模式,例如表4所示。
3.3. 优化课程考核评价
课程强化突出以能力和素质评价为导向的形成性评价,采用评价形式多样化、评价内容多面化和评价主体多元化的考核方式,具体举措如下。
(1) 课程评价注重平时、期中和期末的全过程考核,课程综合成绩 = 平时成绩 × 30% + 期中考试成绩 × 20% + 期末考试成绩 × 50%。平时成绩包括作业占50%、出勤占20%、课堂表现占20%和学生互评占10%。期中、期末的考试形式为机考,重点考查学生的独立解决问题的能力和编程实践能力。课程还推行学科竞赛成绩置换考核,若学生在“蓝桥杯”全国软件和信息专业人才大赛获省赛一、二、三等奖,则毕业前的课程综合成绩可分别认定为95、90、85,认定采取正常考核和各届“蓝桥杯”大赛成绩就高原则[4]。
Figure 1. 2024 PTA platform data
图1. 2024年PTA平台数据
(2) 教师根据PTA平台的数据,对学生的平时训练,预习,各个等级练习题的完成度对学生的知识掌握程度和编程能力进行分析,结合期中期末考试成绩,形成达成度报告。
3.4. 实施成效
通过问卷调查和学生课后反馈,这种教学模式能够调动学生自主学习的积极性,增强了学生独立思考解决问题的能力。图1表示最近一学期学生在PTA平台在线练习的数据。这些数据表明学生对编程实践的热情明显提升。通过理论与实践双线培养,学生获得自身能力提升,敢于参加各类竞赛和科研活动。从图2的数据表明学生参赛人数和获奖人数逐年增加,并且学生对所学知识的应用能力和竞赛水平显著提高。
课程团队教师结合该教学模式参加课程思政比赛、青教赛和教学创新比赛,荣获省级和校级奖项,主持教改项目,发表教学论文,出版教材,形成“教、学、研”三维体系,教学科研、教书育人两手抓,形成校内示范效应。2022~2024年三年的竞赛数据如图2所示。
Figure 2. Competition data statistics
图2. 竞赛数据统计
4. 结论
针对地方民族高等院校生源特点,充分整合线上线下优质教学资源,课程组设定培养目标,重构教学内容,创新教学方法和评价机制,使用PTA实验教学辅助平台加强实践操作及编程训练,将学科竞赛与课堂教学结合,充分体现一流本科课程建设的“两性一度”原则,真正发挥线上线下混合式一流课程的作用,培养学生解决实际问题的能力和编程能力,切实提高教育教学质量。经过一段时间的教学改革,目前已初见成效。今后,课程组将进一步强化课程思政落实立德树人、优化课程内容突出实践教学、细化平台建设助推团队成长,力争将该课程建成高水平一流课程。
基金项目
呼和浩特民族学院2023年校级一流本科课程《算法分析与设计》课程建设项目。