APP下载

基于目标管理的Java 面向对象程序设计在线教学

2020-08-25

计算机教育 2020年8期
关键词:面向对象里程碑教学活动

董 东

(河北师范大学 计算机与网络空间安全学院,河北 石家庄 050024)

0 引 言

以问题求解为导向教学[1]一直受到计算机教育界重视。针对具体的知识点设定一个明确的目标(问题),然后引导学生去求解。这种教学设计理念有益于培养学生自己学习的能力,因此是目前在线教学广泛采用的教学设计模式,但是网络教学环境与课堂教学环境相比,由于时空差距的存在,教师对学生在线学习的监督效力和课堂实时反馈功能被削弱,学生在长达数月“问题求解为导向”的在线学习中,如果没有有效的教学目标管理与反馈环节,很容易随着学习内容问题难度的提升和学生掌握程度差异度的增加,出现学习动机下降和学习倦怠的现象,进而影响在线教学效果和自学能力培养目标的达成。如何整合现有技术、方法和资源,探索提升问题求解为导向在线教学效果是目前亟待解决的问题。

1 课程概况

Java 面向对象程序设计在计算机类专业应用型本科第2 学年第4 学期进行教学,学生已经学过C 语言程序设计和数据结构。线下每周讲授2课时,实验2 课时,使用清华大学出版社出版的自编教材。课堂教学以“板书知识点+编程演示”方式为主,没有使用PPT。实验教学以验证型实验为主,主要通过重做教师课堂演示的例子,强化对知识点的理解。

疫情发生前,笔者由于工作需要,使用1 个月的时间学习了中国大学MOOC 平台上的某门受欢迎的课程,体验了在线教学的特点。疫情发生后,根据自己的体验,使用2 周时间规划线上课程方案,采用了“中国大学MOOC 平台异步SPOC(小规模限制性在线课程)+腾讯课堂”的方式。异步SPOC 选用了北京大学的国家精品课MOOC 资源并加以定制,让学生异步自主学习;腾讯课堂主要解决师生同步沟通问题。

2 线上教学与线下教学差异性分析

由于师生在教学活动中进行交流的媒介以及所处时空不同,线上和线下教学有3 点显著差异。

(1)沟通异步性。线上教学的师生沟通是异步的,而线下教学的师生沟通是同步的。线上教学以居家为教学环境,以互联网为课堂教学信息交流载体;而线下教学以校园教室为教学环境,师生在同一空间、同一时间交互。教室是一种学习者时空受限环境,上课铃和下课铃就是一种同步信号,在教室里,教师边讲课边通过观察抬头率就能收到反馈信号,很容易进行同步沟通,但是在线上,无论直播还是录播,教师同步获得的学生反馈信息十分有限,而作业、测验、QQ 聊天等异步通信形式成为教师获得教学反馈的主要手段。

(2)教学内容粒度不同。线上教学内容是以知识点为最小粒度组织;而线下教学是以教学周为最小粒度组织。教学进度表清晰地表述了每周几个课时,以及应该讲授哪些内容。在线上,一段视频就是讲授一个知识点,而且一般在15 分钟左右。

(3)教学双方自由度不同。线上教学活动中学生的自由度较大;而线下教学活动中教师的自由度较大。在线教学活动中,学生保持了学习活动的主体地位,而教师从台前转移到幕后,对教学活动操控的自由度降低,但任课教师还要承担教学活动的主导作用。

针对以上3 点差异,结合在疫情期间在线教学实践经验,基于目标管理的Java 面向对象程序设计在线教学设计如下。

3 基于目标管理的教学

Java 面向对象程序设计课程的特点是实践性以及可模仿性强。学习者按照学习路线,通过编辑运行体现某知识点的源代码例子就能理解知识点,再通过问题求解就能强化理解并达到“简单应用”的层次。由于学生已经学过C 语言,具备一定的程序设计基础,因此目标管理的方法具有技术可行性。

目标管理是组织参与者根据实现总目标的需要,自己制订或者主动承担各自的工作目标,并在实现目标的过程中实行自我控制[2]。目标管理通过激励来调动参与者的积极性,保证实现总目标,其核心就是明确和重视成果的评定,提倡个人能力的自我提高。管理过程由规划(Plan)、分解(Divide)、执行(Action)、检查(Check)及优化(Optimize)5 类活动组成[3],其中执行和检查活动反复执行,被优化的对象是规划和分解,也是迭代的过程,形成整体迭代的过程模型。

目标管理体现了学生个体需求(学到知识,获得学分)与课程目标(让学生能够针对具体问题设计面向对象程序实现求解)的结合,挖掘和鼓励教学活动中各个参与者的自觉性、自主性和自治性,体现了线上教学异步沟通的特征;不同于企业中基于空间目标分解,在线教学活动的目标按照时间进行分解,教学进度表就是目标分解的依据,而15 分钟左右的知识点就是目标分解的最小粒度;让学生做一次实验,完成一次作业就得到相应的成绩,成绩的累积就是最终成绩,学习活动的累积就是个体需求目标的完成;教师安排好学习路线和里程碑后,在教学中的主要活动就是发现学生思想火花、点燃学生学习热情和评价学习成果。

3.1 规 划

规划就是定义课程目标、按照课程进度定义里程碑和定义检查方法。Java 面向对象程序设计课程目标是理解类和对象的概念,掌握面向对象程序设计的一般过程,能够应用常用的JDK API,掌握Java 语言常用的保留字,能够针对具体问题设计面向对象程序实现求解。

把这个总目标分解成7 个子目标:简单的Java 程序、类和对象、继承、异常、群集框架、输入输出和多线程,再把这7 个子目标分配到本学期15 周(第16 周是考试周,结课),形成课程进度。

定义检查方法即定义考核办法。线下教学的考核一直是“平时成绩30%+期末考试70%”的方案。线上教学情况下,学生个体的成绩主要由学习过程累积而成,只要实现了子目标就获得一部分成绩,学生就得到一定的成就感。线上考核方案定义如下:完成学习视频、单元测验、实验与作业、参与讨论以及参加期末考试。各部分的分值比例是单元测验(5%)、实验(30%)、作业(40%)、参与讨论(5%)和期末考试(20%)。积极参与讨论者可以获得额外的加分。这样,期末考试仅仅占20%,能够实现累积成绩的效果。

在课程开始之前,不仅在MOOC 平台上公布,还要通过腾讯课堂给学生讲一遍,确保所有学生明确目标、进度和成绩的构成。

3.2 分 解

除了把课程总目标分解为子目标,还要把子目标继续分解成知识点。例如,把子目标“类与对象”分解成如下知识点:类的声明、对象的创建访问及其字符串表示、当前对象this、方法的参数传递、方法的返回、方法的重载、类变量和实例变量、类方法和实例方法、变量的作用域和字符串对象上的正规表达式应用,并为每个知识点录制或引用视频教程。

子目标的完成就是里程碑。在Java 面向对象程序设计课程的在线教学中规划7 个里程碑和100 个知识点。每个里程碑定义需要提交的作业和实验报告以及提交期限,每份作业和实验报告平均涉及14 个知识点。MOOC 平台定义作业的3 个状态:作业提交、作业批改和成绩公布,状态间的转换是由日期时间控制的,此时需要精心按照教学进度设置作业提交时间。

每份作业按照完成题目数量评分,每份实验报告按照完成实验项目情况评分。虽然MOOC 平台上有学生观看视频时长的记录,但是不作为学生成绩的构成因素,这是因为学生完全可以通过其他学习资源达到目标。

3.3 行 动

规划和分解完成之后,相当于剧本写好了,此后教学活动的主角就是学生了。学生的主要活动是观看视频完成相关测验和作业,教师则根据测验和作业情况掌握学情。这个环节关键要考虑学生个体差异,允许学生进度上略有不同:有的稍快些,有的稍慢些。这也是线上教学的优势。另外还要考虑培养学生的时间管理意识,首先是作业的“截止时间”,总有一部分学生忽视“截止时间”,等到发现无法提交作业又和老师联系要求单独提交。让学生因为超过“截止时间”而被扣分,会使学生增强时间观念,学会时间管理。

从选课学生中选择的助教(或者称为课代表)是师生沟通的重要桥梁。教师可向助教了解视频是否能看懂,作业量是否太大等问题。

按知识点组织实验项目和作业题目,每个知识点至少对应一个实验项目和一个作业题目,并且按照里程碑发布。要求在Eclipse 中完成实验项目,提交源代码。作业题目有程序设计、源代码改错、阅读代码给出运行结果3 种类型。题目以Word 文件形式提供下载,要求把答案写在题目下面,仍然以Word 文件形式提交。学生作业如图1 所示,这是某次作业中的第9 题,题目要求写出代码的输出。学生以蓝色文本在题目下方给出答案,并且还给出了通过该题目学会了什么。对于这样的作答,不仅给满分,还会给出Excellent 的评价。

图1 学生作业

在执行期间,任课教师通过腾讯课堂给学生讲解课程目标、里程碑和学习的重难点,提醒学生截止日期,讲解作业和实验报告中的共性问题。个性的问题通过QQ 发起私聊解决。特别需要注意的是,任课教师要让学生感觉到被“关注”,只要发现学生动脑子了,发现学生查资料了,发现学生学会引用文献了,就在腾讯课堂里公开表扬;对于同样得满分的作业,视情况给出不同的评语:有的学生用Good,有的学生用Excellent。教师从作业中用心感受学生的思考,学生从评语中感受到教师的关注与鼓励,形成心与心的沟通。

3.4 检 查

检查工作主要通过任课教师对作业的全批全改完成。建立学生的“作业评价档案”,在档案中记载学生作业中值得肯定的做法或者反映出的问题。例如,乔同学“给出了参考代码的网址”,李同学“解题源代码可作为示范”,朱同学“不仅答案正确,而且给出了答案解析”,王同学“上转型和下转型不清楚”,冯同学“重载和覆盖混淆”等。及时在腾讯课堂公开表扬具有示范价值的作业,特别强调这些学生的名字,对本人是鼓励;对其他学生则是带动。全部里程碑完成后,按照学生汇总评价信息,就形成了个体的学习画像,把画像反馈给学生,使学生体验进步的喜悦;对于作业中个性的问题直接批改通过QQ私聊反馈给学生。本门课程选课学生115 名,一次作业批改下来需要两天时间。

检查作业则是整个检查活动的核心活动,因为作业占总成绩的40%,同时,作业也是师生沟通的手段。全批全改虽然工作量大些,但是每一份作业承载了学生的思考,对每个学生的努力做出评价是值得的付出。“发现、点燃、鼓励和评价”是检查活动中所要遵循的原则。

教师还可在MOOC 平台上查看和参与学生的讨论,并对学生的讨论进行评价。通过平台的统计功能了解学生学习状态,及时发现问题。例如,有一位学生第1 周看了0 个视频,通过QQ了解到,学生还不知道在哪儿看教学视频。教师应留心QQ 群学生的讨论,及时肯定一些学生提出的解决方案。

坚决果断地抑制抄袭行为,发现苗头,立即掐断。例如,笔者在第2 个里程碑的作业提交中发现了一模一样的作业,当即在课程的QQ 群里公布处理结果:两位学生的本次作业成绩零分。在后面的作业提交中,未发现一模一样的作业。

对抱怨作业量太大的学生,则让其降低期望,尽力做,能做多少就做多少。

3.5 优 化

通过以上教学活动,就会发现一些值得优化的地方,如学生反映很难理解“对象克隆”,那么就得重新考虑换成什么样的例子讲解这个知识点更容易理解些。教学目标、知识点的粒度和先后关系、作业题目难度和数量、测验题对知识点的覆盖、教学视频、每个教学资料都会在学期末课程结束后进行重新调整,以达到更好的教学效果。

4 基于目标管理的实验

实验主要由验证型的项目组成,目的是复习巩固教学视频的知识点。每个里程碑安排一组实验,一般每个知识点对应一项实验。例如,“变量的作用域”知识点的实验项目如下。

(1)右击动手实验项目,选择 New | Package。在Name 文本框输入包名objects.code_3_18,单击 Finish 按钮。

(2)在新建包上右击,新建类:

(3)运行程序。理解变量的作用域。

每个实验项目都为学生明确指明了实验步骤和实验目标,按照进度发布实验指导书,并设定提交日期,一般提交时间为下一章内容开始之前,要求提交实验产生的源代码。要注意的地方是MOOC平台没有“实验”栏目,只有“测验与作业”栏目,因此实验只能放在这个栏目中,以作业形式提交。要求学生以压缩文件形式提交实验结果(源代码)。实验手册是经过加密的,学生不能进行复制粘贴,但可以打印。以知识点为单位配合教学进度安排整个学期的实验,按照里程碑设置实验手册的发布和实验结果的提交日期。每项实验5分。学生异步完成实验,教师在QQ 群进行答疑。

5 结 语

以知识点为粒度,而不是以教学周为粒度组织教学,按照里程碑发布作业以照顾个体学习进度差异和强化时间管理意识,基于作业数量和实验项目数量兼顾质量的课程成绩累积,作业全批全改结合QQ 群公开表扬和私聊解决个性问题,根据学生对难点的反馈优化教学设计的规划、分解、执行、检查和优化活动,构成了Java 面向对象程序设计在线教学的目标管理。基于目标管理的在线教学使得学生学习任务明确,学习路线清晰,学习行为自主可控。里程碑内完成师生异步沟通,体现在线教学特点,照顾学习者个性差异;里程碑间教与学进度上同步,保障教学目标完成。学生腾讯课堂出勤率100%,作业平均优良率93.8%,教学秩序井然有序。通过作业完成的截止日期等要求,学生增强了时间管理意识;基于目标的管理,学生充分利用了在线学习的自由度,增强了自学能力。例如,学生对于一些问题学会了通过查看API文档和网络搜索自己解决而不是直接问老师。问题在于:①如何引导学生识别参考文献的质量;②如何判别代码克隆;③如何鼓励展示自己的成果。随着在线教学的开展,未来计划采用在线实验,更有效地应用大数据方法收集和分析学生编程行为,更好地掌握学情,有针对性地进行教学设计。

猜你喜欢

面向对象里程碑教学活动
GEE平台下利用物候特征进行面向对象的水稻种植分布提取
基于深度学习与融合地形特征的黄土陷穴面向对象提取方法
幼儿园教学活动中信息技术的应用思考
幼儿园数学教学活动有效性探究
关于幼儿园语言教学活动游戏化的思考
小学数学实践教学活动初探
面向对象方法在水蓄冷PLC编程中应用分析
反腐败工作法治化的重要里程碑
里程碑时刻
从面向过程到面向对象思维方式的教学引导