基于OBE 理念的Java 程序设计课程教学改革探索

2020-04-04 06:36李雷孝邢红梅
计算机教育 2020年2期
关键词:程序设计考核知识点

王 慧,李雷孝,邢红梅

(内蒙古工业大学 数据科学与应用学院,内蒙古 呼和浩特 010080)

1 研究背景

Java 作为一种面向对象程序设计语言,以其简单性、可移植性、安全性、健壮性等特性,广泛地应用于个人PC、互联网、游戏控制平台、云计算、金融系统等领域。据TIOBE 编程语言排行的数据显示,近二十年来,Java 一直处于前三名。由于Java 具有广泛的应用及强劲的发展势头,目前国内高校的计算机科学与技术、软件工程、信息与技术、物联网等专业都开设了Java程序设计相关课程,以适应社会对相关专业人才的需求,为毕业生的就业增加有力砝码。然而实际教学中存在一些问题,如过于偏重语法语义,对实践动手和分析解决问题能力培养较少,毕业生在就业时无法完全满足社会对人才的需求。基于以上实际情况,笔者结合自身实际教学经验,在Java 程序设计课程教学中引入了OBE 教学理念,结合多种教学模式,对该课程实施了教学改革,以提高学生在程序设计过程中分析问题和解决问题的能力,使学生的理论知识和实践技能得到共同发展,从而达到应用型人才的培养目标,满足社会市场对人才不断变化的需求。

2 Java 程序设计课程在教学中存在的问题

(1)各章节内容讲解大多以单一的知识点、语法要点的理解和记忆为出发点,没有考虑对知识的有机结合,从而忽视了对综合问题分析能力的培养。

(2)课程授课模式多采用多媒体教室进行课堂教学,每堂课大多数时间是教师进行单纯的理论知识讲解,忽略了学生的实操,当学生面对实际项目时就会出现无从下手的情况。

(3)课时数不多的实验教学以验证性实验为主,授课教师会在实验课前事先设置实验目的、实验内容、实验步骤,在实验课中详细介绍实验内容,学生只需机械地按照教师所讲内容验证实验结果是否正确。实践环节的设置缺少综合性、设计性的内容,不利于学生将更多的知识如软件工程、数据库系统等课程内容综合起来解决问题。同时,忽略了学生的主体地位,无从发挥积极性和创造性。

(4)课程考核对于学生来说是一个方向标,Java 程序设计课程考核方式设置为单一的纸质闭卷形式,考核的知识点是单一的,一定程度上学生只以“死记硬背”的方式学习这门课程。这样做不符合程序设计灵活应用知识解决实际问题的本质,也会导致学生缺乏分析设计能力,不能综合运用所学知识和技能解决实际问题。

3 基于OBE教学理念的Java程序设计课程改革方案

Outcome-Based Education(OBE)也称为成果导向的教育或基于学习产出的教育,它是一种以预期学习产出为中心来组织、实施和评价教育的模式。自1981 年由美国学者斯派帝(Spady K.D)等人提出后很快引起学界的重视和认可,美国、英国、加拿大等国家将之作为工程教育改革主要方向,逐步打造出各具特色的卓越工程教育体系[1]。OBE 理念在目前高校教学改革中有助于应用型人才综合素质和能力的培养。基于OBE 理念的Java 程序设计课程改革,围绕课程教学目标,重视学生学习成果,从成果入手,反向设计教学过程。

3.1 课程目标与知识点

基于OBE 理念的Java 程序设计课程改革,首先明确IT 产业对Java 人才的需求,根据需求决定教学内容,制订培养目标,培养可以更好地适应社会需要的人才。Java 程序设计课程内容安排以Java 语言中的面向对象机制为主线,以Java 的基本语法、数组、面向对象的概念和高级应用、JavaGUI 可视化编程、Java 异常处理、集合框架泛型、JDBC 技术、多线程和网络编程等内容为知识目标,以培养学生面向对象编程的思维能力,学生发现问题、分析问题及解决问题的能力为能力目标,确保学生的理论知识和实践技能共同发展的同时,培养学生团队协作能力和沟通能力。课程的教学设计围绕上述课程目标进行,有效完成对毕业要求的支撑。

3.2 项目驱动教学模式

项目驱动教学模式是以项目为导向,以学生为主体,以实现项目为目标的一种教学设计方法。项目驱动教学在实施前必须根据教学内容设计难易度适中的项目。项目的设计以能够覆盖课程知识点且贯穿整个教学活动为指导思想,学生通过每一章节的学习将项目代码层层迭代,不断完善,直至形成一个完整的项目。通过项目的完成,学生随之完成了课程相关知识点的学习,这样学生具有强烈的成就感,有利于激发学生的学习兴趣,调动学生的主动性。在Java 程序设计课程改革实施中将“学生信息管理系统”项目作为驱动案例,图1 列出了学生信息管理系统中的Java 知识点分解情况。

图1 学生信息管理系统中的Java 知识点分解情况

3.3 “三阶段”式教学设计

Java 程序设计课程对实践要求较高,课堂教学采用机房授课的方式,可以让学生做到即学即练,不是单纯机械地听教师分析项目和演练项目,而可以随时进入实操。机房授课过程中实施“三阶段”式教学法。

第一阶段,引入项目模块,教师引入每节课涉及的项目功能,简单说明需要用到的主要知识点;然后向学生陈述设计思路,学习程序设计关键在于找到解决问题的思路,也就是算法,因此设计思路的介绍对于程序设计类课程而言是不可或缺的一部分;最后带领学生一起完成项目功能,边写代码边讲解当堂课程涉及的重点知识。

第二阶段,学生实操,该阶段由学生上机实际操作完成第一阶段引入的项目功能,也就是由学生自己验证第一阶段提出的案例。由于在第一阶段已经对案例程序进行分析演示,该阶段要完成的工作对于学生来说难度较低,比较容易实现,这样学生就会得到一定的成就感,会对课程的学习更有信心。在这一阶段教师要进行实时辅导,对于学生们存在的普遍问题,要进行及时讲解。

第三阶段,课后项目实践阶段,在这个阶段学生已完成课堂教学项目,教师可以给学生选择一些扩展项目。但由于学生的学习能力有高有低,加之不同的学生对程序设计语言的兴趣和要达到的目标需求不同,在设计课后的实践项目时遵循OBE 理念,以学生为中心,根据学生的学习目标制订相应的项目内容。课后实践项目设置环节按照学生的学习需求不同将培养目标分为三类,针对每一类培养目标设置相应难度的课后实践项目。具体参考表1 进行扩展项目的布置。

根据表1 中学生的学习目标,在课程教学过程中设计相应的扩展项目。学习能力强的学生要完成扩展项目,扩展项目与课堂完成的项目在功能设计上差异较大,学生需要依赖自己的力量将新的项目和已有知识点对应,将扩展项目需要做的功能分析、设计、实现等问题逐一解决。这一方法能有效提高学生学习的兴趣,全面提高学生的学习素养,激发学生学习的激情,具有其他教学环节不可替代的作用。能力相对差一些的学生如果设置过高的要求,反而会使学生产生畏惧心理,丧失信心,无法达到预期的学习效果。因此,第三阶段的教学设计对学生的学习成果不做统一要求,让每个学生都能有所收获,这正是OBE 理念中强调的以学生为中心。

表1 学习目标与扩展项目布置对应表

3.4 考核方式改革

课程考核方式合理化可以有效促进学生的学习,对学生来说,合理的考核方式就是一种奖赏。基于OBE 理念的课程考核不再只关注卷面考试成绩,而要关注不同培养目标的学生在课程结束后是否真正具备了相应的能力。考核内容围绕课程目标设计,体现学生相关知识能力的达成情况。

课程的考核方式通过评价整个教学活动中的各个环节,学生可以步步紧跟每一个教学环节,更有效地激发学生学习的兴趣。具体来说考核包括以下几个方面,见表2。

表2 Java 程序设计课程考核方式

平时表现,占课程总成绩的10%。主要考核学生的考勤和课堂表现,课堂表现主要考查学生的随堂案例验证及模仿完成情况,考查学生对所学知识点的应用掌握情况。

实验情况,占课程总成绩的20%。实验安排为综合实验,是对一个阶段学习的总结,通过实验项目的考核,考查学生的实际动手能力和综合知识应用能力。在实验前为学生介绍实验目的和实验内容并要求学生按照实验指导书要求进行实验的预习;实验验收时要逐一检验学生完成情况,并提出问题,通过学生的回答了解学生设计思路、解决问题的方法和相关知识点的掌握程度。实验成绩根据学生对实验的预习情况、设计方法和实验完成情况几个部分的综合测评。

扩展项目完成情况,占课程总成绩20%。通过项目答辩的方式考查对学生扩展项目的完成情况、扩展学习知识量的多少、完成工作量的多少,综合个人项目文档进行最后的成绩判定。

期末考试,占课程总成绩50%。虽然Java程序设计课程需要培养学生实践动手能力,学生也确实在实践的过程中通过完成项目获得了很大的成就感。但是如果没有理论考试,学生对面向对象相关知识以及编程相关规范关注度不够,将来就业面试时则无法阐述关键的、重要的理论。因此,在课程的考核方式中仍然设有理论考试,考试采用笔试闭卷的形式,考查基础知识和基本概念的掌握。

这样的考核方式既考查了学生的理论知识的掌握情况,也在平时教学过程中培养了学生的实践动手能力,运用知识解决问题的能力,很好地为学生今后走向工作岗位打下了坚实的基础。

4 结语

将OBE 教学理念应用到Java 程序设计课程改革中,从成果产出入手进行教学设计和教学方法的优化,考核评价环节针对不同培养目标的学生设计不同的方案,充分体现“学生为主,成果为驱”的教育思想,本课程组相关教师在软件工程专业2016 级、2017 级学生中进行了两轮课程改革实践,在改革中学生积极参与整个学习过程,取得了较好的预期成果,部分2016 级学生现已步入实习单位,实践动手能力也得到用人单位的认可。在今后的教学中还须不断地丰富案例项目,继续改进考核方式,增强学生分析和解决复杂工程问题的能力,这是日后研究的长期目标。

猜你喜欢
程序设计考核知识点
第十二页 知识点 静候“18”
基于SolidWorks和VBA的电机阶梯轴建模程序设计
关于口罩 这10大知识点你必须知道
项目化教学在Python程序设计课程中的应用
第九页 知识点 QSZ92式半自动手枪
医学专业“Python程序设计”课程教学改革总结与思考
“表里不一”如何识别——富平增强考核洞察力
考核偏向:错把经过当结果
从细节入手,谈PLC程序设计技巧
创新完善机制 做实做优考核