程序设计类课程学生课堂行为数据采集系统的研究
2021-09-12虞菊花常兴治陶亚辉
虞菊花 常兴治 陶亚辉
[摘 要] 课堂中学生的行为,直接反映了教学的精确性和有效性,而程序设计类课程教师最关注的学生课堂行为,则是学生代码的编写。从学生程序撰写的行为数据出发,搭建数据采集系统,将学生有效的输入代码的行为数据采集后进行处理存储到数据库中,并实时呈现到教师的前端编程开发环境,辅助教师开展教学活动,提高教学效果。
[关 键 词] 程序设计类课程;学生课堂行为;数据采集;教学改革
[中图分类号] G434 [文献标志码] A [文章编号] 2096-0603(2021)32-0067-03
在以学生操作为主的课程中,如程序设计类课程,学生普遍存在动手能力不强、主动性不够等问题。而在教学过程中,教师往往只能在教室中来回穿行,尽可能督促学生跟随教师的教学思路,一步步完成实践技能的训练。一旦教师的监督力度不够,则无法保障教学的质量和效率。在高职院校中,课堂教学的师生比几乎都在1 ∶ 40以上,加上学生的自觉性更低、实践能力基础更薄弱的现状,在上课过程中实施全面、有力、有效且能够刺激学生的教学监控,显得尤为重要。
如何有效地刺激学生持续性地学习,一直是教学的一大难题。本文根据这一难题,研究了程序设计类课程学生课堂行为数据采集系统。以Python程序设计基础课程为例,教师建立统一的操作系统环境,学生通过浏览器登录操作系统,进行代码的输入、测试和运行等操作,学生的所有操作数据将被行为数据采集系统收集汇总后,实时显示在操作系统环境中供教师查看,以便及时了解学生的学习状态,并根据学生的学习状态数据,及时调整自己的教学节奏和方法。
一、学生课堂行为数据信息
学生在上课过程中会产生各种随机的行为数据,但是大部分数据并不能代表学生的学习状态,也无法表征学生的学习行为。学生课堂行为数据并非指学生观看屏幕的时间、抬头低头率等参数指标,而是能够直接反映学生学习的行为数据信息。
同时,在传统教学模式下,被认为能够客观衡量学生行为的数据,主要集中在教学平台。现在广泛使用的教学平台,如智慧职教、大学生慕课、超星学习通等,或通过学生是否完整学习课程视频的数据来判断是否完成学习任务,或通过平台中课程的客观测试题对学生进行成绩评分,这些方法根本无法真正反映学生的学习行为和学习效果。
现在的教学活动,教学平台无法对学生的学习行为进行客观判断和采集,更没有其他较好的工具或者平台来采集学生过程性实践操作的行为数据,进而对学生的学习活动进行过程性的客观评价。对于程序设计类课程来说,重在代码的设计和实践操作,编写代码的有效行为才是采集行为数据信息的目标。
本文主要针对程序设计类课程,采集教学过程中学生产生的课堂行为数据信息。不同班级不同的学生,他们的课堂行为数据在整个课堂教学过程中不断发生变化,在不同的教学活动中产生不一样的代码输入行为数据。学生课堂行为数据采集的信息主要包括以下几个部分。
(一)学生相关信息
教师一般会对不同的班级采用不同的授课方式,且会在一门课程的持续教学过程中,根据学生的学习状态和学习水平做出动态的调整。
学生的课堂行为数据采集,基础信息便是学生的学号和姓名,以表征学生个体。而学生又是处于不同班级的,除了学生个体本身,不同班级的横向对比数据也非常重要,因此,另一個学生相关的信息便是其班级信息。
(二)代码数据
程序设计类课程,最重要的评判学生行为的指标,显然就是学生在上课过程中能够积极主动地输入程序代码,而将学生代码输入的行为进行量化分析,其前提就是定义代码输入的行为数据。
以Python程序设计基础为例,一个知识点的教学活动不管教学方式如何变化,教学过程主要分为理论的讲解、实践任务的下发、学生的操作、教师的讲解以及学生的修改。作为编程类课程,学生针对实践任务输入的代码以及对代码的修改是最关键的课堂行为数据。
首先,学生会根据教师下发的任务,输入相应的原始代码,每过一定时间数据采集系统会定时自动保存学生输入的代码,也可由学生手动强制保存,所有的代码都会被存入学生本地的日志文件中。其次,随着教师的讲解,学生可能会迭代修改代码,也有可能会因为原始代码是正确的,而无需修改。因此,学生如果修改代码,所有的最新代码也会被定时或强制保存,而原本如果学生输入的代码就是正确的,不用根据教师的讲解修改,则可通过代码运行部分的数据体现。
根据课堂教学实践任务的逐步开展,上述行为会被不断重复。学生登录开发环境后所有输入的代码都被保存下来,以便进行学生操作数据的横向和纵向对比。
当然,除了输入的代码数据,运行结果也是非常重要的。不管是原始输入的还是修改的代码,都会被学生运行,以测试自己输入的代码是否正确。一般的,教师下发的任务答案是唯一的,所以,不管学生的代码如何书写,运行结果是否正确,都可以将其与正确答案进行对比。因此,代码运行后的结果数据,也将会被保存在本地日志文件中,以便后续发送至数据库,被用于分析学生的实践操作行为。
同时,大部分学生学习Python程序设计基础时,并没有编程基础,在写程序代码的过程中,会出现各种各样的错误,有的是语法错误,有的是拼写错误,有的是程序逻辑错误,不管哪种错误,都需要学生学会定位自己发生错误的代码。学生课堂行为数据采集系统的开发环境平台,提供学生进行代码调试的工具,可以帮学生快速找到自己程序异常的原因。因此,代码调试的异常提示数据也会被保存到本地日志文件中。