基于SPOC的“Java语言程序设计”混合教学模式的探索与实践
2019-11-16张华
文/张华
1 引言
自2012年以来,MOOC(Massive Open Online Course,大规模开放式网络课程)在我国发展迅速,成为高等教育教学改革的热点。为进一步推动我国在线开放课程建设与应用共享,促进信息技术与教育教学深度融合,推动高等学校教育教学改革,教育部于2018年正式发布首批490门国家精品在线开放课程,MOOC在中国的发展达到新的高度。然而迅速发展的MOOC也逐渐暴露出缺点:
(1)没有门槛的加入课程,学生群体数量多,不利于课程管理。
(2)学生水平参差不齐,课程无法兼顾不同水平的学生。
(3)MOOC是基于互联网的,学生的学习过程缺乏有效监督导致不少学生未能取得好成绩。
(4)老师无法实时了解学生的学习状况,没办法做到互动教学。
(5)虽然学生可以通过MOOC平台的学习,并通过课程考核获得证书,但是这个证书却不被各高校认可。鉴于这些缺点,我们需要重新审视一下MOOC教学模式。
MOOC在线学习为学习者提供了一个很好的学习平台,但是光是靠学生的兴趣爱好,缺乏相应的教学管理,难以保证教学效果。将MOOC在线学习与线下教学管理做一个有机的整合,能更好的发挥MOOC的长处,取得更好的教学效果。针对MOOC的不足,SPOC(Small Private Online Course,小规模限制性课程)教学应运而生,其中的“小规模”和“限制性”是相对于MOOC的“大规模”和“开放式”。小规模指学生规模一般在几十人到几百人之间,限制性指学生需要达到一定条件才能参与课程学习。国内的各所高校积极开展SPOC教学模式的探索,继清华大学推出“智学苑”SPOC教学平台,其他高校紧随其后,相继推出自己学校特点的SPOC教学平台。
2 Java语言程序设计课程教学现状
《Java语言程序设计》课程是我校信息安全专业的专业选修课,这门课的学习效果直接关系到学生的毕业设计能否顺利完成,甚至影响学生就业,因此学好这门课程是非常重要的。
该课程在教学计划中所占学时为32学时,授课学期为学生大二的第一学期。在教学过程中,主要有如下的一些问题:
2.1 学生对程序设计犯怵
学生虽然在大一的第二学期学了一个学期的《C语言程序设计》,但大多数学生当时是第一次接触到程序设计,没掌握学习方法,学习效果不好,由此对程序有畏惧心理。他们也知道程序设计很重要,因此在大二选修了《Java语言程序设计》,但是大一的时候学习程序设计的心理创伤容易带入到大二的学习,普遍一看到代码就犯怵。
2.2 学时少,教学内容多
该课程的学时只有32学时,在规定的学时内,不仅要完成基础程序设计的学习,还要进一步学习面向对象、异常处理、集合类等知识点,因此教学任务还是比较紧张的。
2.3 实践太少,未能掌握程序设计的要领
之前程序设计类的课程授课模式大部分都是采用传统教学模式,以教师讲授,学生听课为主,而程序设计课程的实践性是很强的。学生课堂上可能听懂了,但是一开始动手写程序就开始处于茫然的状态。一部分学生采用背书的方式记住代码,而更大一部分学生不知道调试Debug为何物,一旦程序出错,只会阅读代码,而不懂得通过调试的方式跟踪代码运行。
本文基于上述的背景环境,以《Java语言程序设计》为例,探索MOOC+SPOC+课堂教学的混合式教学改革,以学生为中心,兼顾教师的主导作用,充分利用网络资源,以学校的网络教学平台为主,结合中国大学MOOC网站和洛谷OJ(Online Judge,在线判题)系统,让学生在课外时间学习课程基础知识,课堂则演变为师生之间互动的场所,克服课堂教学时空上的限制,强调师生互动,从而提高教学效果。
3 SPOC混合式教学模式的构建
SPOC混合式教学模式基于网络教学平台,利用多元化的教学资源,通过“课前-课中-课后”三个阶段进行在线和离线混合学习,SPOC混合式教学模式的主要教学环节如图1所示。SPOC教学模式不是对MOOC教学的推翻,而是MOOC教学的延伸拓展,是MOOC教学与课堂教学的有机融合,既充分利用“互联网+”时代丰富的网络资源,又克服MOOC学习教学管理不足的缺点。
上课前进行视频教学,学生观看视频自主进行在线学习,把握重点和难点,提出学习过程中遇到的问题,还可与同学线上交流。学生以异步的方式观看教学视频,不理解的知识点可以反复看。而且不仅可以通过电脑网页来看,也可以利用手机观看,充分利用碎片化的时间。在课堂上,教师可以将时间和精力投入到更有价值的教学活动中,例如讨论,重难点知识讲解以及面对面的交流和互动,这不仅节省了课堂时间,而且有效地提高了教学广度和深度,增强师生之间的互动,提高课堂效率。课后,翻转课堂教学通过以下基本过程实施:给学生布置在线测试,从而了解学生的学习情况,回答学生的问题,讲评作业。
图1:基于SPOC的主要教学环节
SPOC教学模式,学生从以往的被动听课,转为课外主动学习,课内积极参与讨论,回答教师提问。这不仅更有效的掌握了知识点,还提高了个人自学能力,锻炼自我约束,让学生学会独立思考。而教师则在学生学习过程中扮演者领航员的角色,在学生学习基础知识的过程中参与度减少,而把更多精力花在与学生互动,解答疑问,指导实践的环节中。
SPOC平台为整个教学过程的顺利开展提供辅助,记录学生学习路径,推送教学视频,提供在线测评,分析学生学习效果,为翻转课堂的顺利进行提供有力支撑,促进教学改革的发展。
4 混合式教学模式的实践
以我校信息安全专业的《Java语言程序设计》为例,运用上述模式进行混合式教学的实践。首先,选用中国大学MOOC网站上东北大学李金双老师讲授的《Java程序设计》作为视频学习资料。该视频的教学内容、教材、学时等均与我们学校的情况基本一致。课程学习地址为:https://www.icourse163.org/learn/NEU1205915818?tid=1206960225#/learn/announce。
其次,针对程序设计以实践练习为主的特点,结合学生学习水平,为学生物色OJ系统,最终选择了洛谷OJ系统,具体网址为https://www.luogu.org/。洛谷是OJ上的后起新秀,它可以让选手按阶段做题提高水平,题目按难度分为“新手村”、“普及练习场”、“提高历练地”、“省选斗兽场”等。该平台上还不定期有举办各种比赛,为学生竞技提供了一个很好的平台。巩固教学效果、锻炼学生实践能力的关键环节就是让学生在OJ系统上完成课后作业和课外练习。OJ系统可以自动接收源程序,并判断程序是否正确。这很好的解决了学生写完程序后不知道程序是否正确的问题,而且激发了年轻学生争强好胜的斗志,辛苦写的程序被系统判定为不通过,学生们会想方设法找出问题所在,通过调试程序、查阅资料、讨论、与教师讨论等方式最终解决问题。以往的课余时间他们会在宿舍玩电脑游戏,而现在则更多的是讨论程序题目。
学生在进行课前在线学习后,教师将组织课堂教学活动,课堂教学活动以讨论、实验、总结点评为主,主要任务是聚焦并解决问题。以“第9章 对象和类”的教学内容为例,首先教师引导学生进行如下问题的讨论:类与对象的区别,构造函数如何定义,访问修饰符有哪些?接着指导学生完成书本示例程序Circle类的UML图绘制,以及上机实践完成书本示例程序。在授课中,学生普遍对重载构造函数、this关键字、静态成员、实例成员、访问修饰符等知识点存有较多疑点,可对这些疑点逐一加以讲解。最后抛出“如果我们要定义圆柱类,该如何定义?”讨论题,帮助学生进行知识的构建。在课堂教学过程中,教师要对学生在线学习阶段的疑问集中进行答疑。
课堂教学活动结束后,教师布置任务,让学生在网络教学平台上完成相应的题目,在线提交代码,系统自动批改并提供反馈。借助网络教学平台数据分析功能,教师可以看到每道题目学生答题的统计数据,从而得知学生知识掌握情况,为下次的课堂教学答疑环节做好准备。课后环节的主要任务是巩固知识,深化问题。另外教师还要根据学生在线学习情况和课堂表现,对学生进行综合评价。对学生的评价更关注学习的过程,从学生的在线学习时长、在线答题量、查阅资料量、讨论互动等方面对其评定平时成绩。
实施本教学模式后,学生学习的积极性明显提高,对知识点的掌握情况优于以往传统教学的学生,课堂中的师生互动更加活跃。学生还组成一个程序设计兴趣小组,在指导教师的安排下进行自主学习,课余时间经常在一起讨论算法,钻研题目。在2019年第十届蓝桥杯全国软件和信息技术专业人才大赛个人赛福建省赛区中,我校学生首次参赛,一位同学取得二等奖,两位同学获得三等奖。从学生的教学反馈和期末考试情况来看,学生的程序设计水平相较以往传统教学模式有了明显提升。
5 总结
SPOC混合教学模式重定向了高校教育模式的创新和改革,在这种教学模式下,鼓励学生自主学习,并充分利用计算机,网络和移动通信设备随时随地地学习。课程团队中的老师负责其监督和管理,对学生的学习成果进行全面评估,并建立相应的质量反馈机制和奖惩制度,不断提升学习成果。教师可以根据学科的培养目标,人才的社会需求,学习状况的变化来设置和调整课程的教学内容,深度和广度,以合理分配教学资源,缩短学习时间,提高教学水平和教学质量,实现更好的教学效果。对于学时较少,知识点较难的课程,SPOC混合教学模式尤为适合,真正体现学生为主体、教师为主导的教育理念。