基于OBE理念的课程教学改革探索

2022-06-03 00:06吴静章瑾王邯刘军熊凡
教育教学论坛 2022年16期
关键词:工程认证Java程序设计教学改革

吴静 章瑾 王邯 刘军 熊凡

[摘 要] 在工程教育认证背景下针对目前高校程序设计课程在教学中出现的不足,尤其是受2020年初爆发的新冠肺炎疫情影响,在线教学全面开展,对所有教师的教学方法、教学模式提出更高的要求,进而进行了以OBE为导向的、立足于工程认证、培养具有解决复杂工程能力的人才为目标的课程教学改革。以“Java程序设计”课程教学为案例,构建“四位一体”的教学体系,进行新的教学改革探索,对优化教学内容、更新教学方法、合理设置评价体系三个方面进行分析和实践。

[关键词] Java程序设计;OBE;工程认证;教学改革

[基金项目] 2017年度武汉工程大学教育教学改革研究项目“基于OBE教育模式下的‘Java程序设计课程教学改革的探讨”(X2017023);2020年度武汉工程大学智能机器人湖北省重点实验室引导基金资助项目“多轴复合机器人的复杂曲线运动轨迹研究”(HBIRL202004)

[作者简介] 吴 静(1979—),女,湖北武汉人,硕士,武汉工程大学计算机科学与工程学院讲师,主要从事大数据研究;章 瑾(1974—),女,湖北黄梅人,硕士,武汉工程大学计算机科学与工程学院副教授(通信作者),主要从事数据分析研究。

[中图分类号] G642.0 [文献标识码] A [文章编号] 1674-9324(2022)16-0072-06 [收稿日期] 2021-09-07

引言

基于学习产出的成果导向教育(Outcomes-based Education,OBE)是目前十分盛行的教育模式。在该教育模式中,要求教学设计和教学实施的目标是学生在教育后取得的学习成果;认为学生学到了什么、是否成功远比怎样学习和什么时候学习更为重要[1]。

与传统的教学模式相比,OBE主要关注四个问题。

是什么——想让学生获得的学习成果是什么样。

为什么——为什么要让学生取得这样的学习成果。

如何帮助——如何有效帮助学生取得这些成果。

如何知道——如何知道学生已经取得这些学习成果。

尤其是随着2013年6月我国成为国际互认的工程教育专业认证“华盛顿协议”签约成员后,国内高校纷纷开展了OBE工程教育专业建设和教学改革,并参加了中国工程教育专业认证协会主导的专业认证工作[2]。OBE工程教育不但适用于工程型人才的培养,也是目前工程教育专业认证推崇的工程教育模式。

一、程序設计类课程目前的状况

程序设计类课程,是所有计算机专业学生的必修专业基础课程,可以称得上初窥计算机世界的第一步。在多年的教学中,笔者发现在本科二年级结束后,依然有部分学生代码编写能力低下,甚至在传统的C语言与面向对象类型语言中产生混淆,无法将程序设计语言与专业课程相结合。例如数据结构、操作系统、数据库原理等这些专业必修课程,更有甚者严重制约后期专业方向课程以及相关实训课程的学习。

(一)课程结构:简单固定

在传统的程序设计类课程教学中,更关注于课程的结构本身,其教学的安排、日程都是固定的。大多数理论教材中针对每个知识点仅仅给出简单的例程,告诉学生怎么用,并没有讲解什么时候用。大多数的实例教材中,程序都是大段出现的,与每个知识点脱钩,学生很难从整体上把握。

(二)教学方法:易滋生惰性

课堂教学方法虽有改进,但主体上依旧是以教师为中心,以语法、理论教学内容为主,在创新思维上还是略有欠缺。虽然近几年倡导线上线下教学、翻转课堂等教学模式,因缺乏有效的评价机制,实施效果其实并不理想。学生的学习方法单一,过分依赖教师的课堂教学,容易产生“惰性”:我可以不会,但是教师不能不讲。

(三)实践教学:缺乏分析能力、工程意识

虽然一直致力通过实践环节提高与培养学生的编程和理论联系实际的能力,但是在真正的实验教学中,部分学生表现出调试代码过程碰到最低级的拼写错误都能花费半天时间,不能根据错误提示跟踪和调试程序等。

此外,工程意识不强。具体表现在编写代码过程中没有注重程序的可读性,命名不够规范,缺乏对整个程序的模块化进行规划。整个实验内容因考虑到学生教学效果的参差不齐,多以验证性实验为主,综合性实验完成得不理想,尤其是专对码量大时,抄袭现象屡有发生。

(四)能力评估方法:单一片面

旧的考核方式往往是70%卷面、30%平时(作业+实验),这样的考核方式过于单一和形式化,导致学生在学习过程中过于关注结论,没有把握教学重点,教学效果不明显,也导致教师不能全面了解学生知识的掌握情况。

通过实践,既让任课教师积累实实在在的线上教学经验,又迫使学生改变了学习方法,让线上线下教学能够落到实处。

二、Java程序设计课程建设

以学生的学习成果来驱动教学活动,尊重学生个性化发展以及能力差异,是OBE的教育理念[3]。因此,基于数字媒体技术专业培养方案和课程群,以专业能力要求和专业方向课程为起点,反向设计课程体系与教育模式。

(一)课程学习目标设定

在数字媒体技术专业培养方案中,始终贯穿“编程能力培养四年不断线”的思想。根据学生毕业要求,个体对各类程序语言的兴趣、需求以及期望达到的目标不同。将“Java程序设计”课程安排在第三学期,授课学时24个,实验学时16个。其先导课程为程序设计基础(C)、面向对象程序设计(C++);后续课程为移动互联网开发、移动应用开发训练、数据库原理、操作系统等。

因此,在制定教学大纲的时候,要根据该课程支撑的培养目标和毕业要求来确定课程教学目标,从而确定教学内容,按照知识点分为3大模块,各模块对应不同的学习单元,并分配不同的学时数,如表1所示。课程支持的培养目标、毕业要求及其指标以及课程模块之间的关系[4],如表2所示。CCBA9201-A6B0-4571-932C-502B33326B61

(二)优化教学内容

工程教育专业认证强调的是学生通过学习具备解决复杂工程问题的能力。按照数字媒体技术专业课程体系安排,本门课程学时虽不多,但是所涉及的知识点并没有减少,理论与实践并重。在此前的教学中,教学内容多在语法和基础知识上,虽然在授课中下了功夫,但是效果并不理想。

目前需要优化现有的教学内容,使得逻辑上相关的内容能够紧密联系在一起,进行教学内容组织时将前导课程、后继课程考虑进去,重要的是加强对学生主动学习意愿的引导;强调教师的作用是知识点的总结,向学生介绍学习以及解决问题的方法,帮助学生从整体上把握课程,进而灵活运用所学知识进行工程应用,提高解决复杂工程问题的能力。

对于计算机专业的学生来说,编程能力培养一直是重点,它贯穿了大学四年的学习过程;数字媒体技术专业与数字媒体艺术专业最大的区别就在于此。前导课程程序设计基础以C语言为工具,是学生进入计算机编程世界的第一个语言,以便更好地掌握结构化、模块化的程序设计技能;面向对象程序设计课程以C++语言为工具,让学生掌握面向对象程序设计的基本思想,但是因C++语言本身的复杂性和局限性,学生在理解和使用面向对象方法进行实现时,效果并不理想。由于Java语言的句法更清晰、规模更小、更易学、编程环境更为简单,因此,在第三学期开设本门课程既能更进一步巩固、提高学生面向对象的程序设计思维的理解和应用,又能为后续的嵌入式开发、网络应用开发等课程打下良好的基础,以促进课程的持续改进。

为了更好地支撑毕业指标要求,对于教学模块1“Java程序设计面向对象基础”的教學内容,更多地是利用作业、实例,指导学生课前掌握基础知识,减少学生的“懒惰”;对于教学模块2“Java的高级特性”的教学内容,利用C++语言,启发学生思考以下几个问题:C++具有而Java没有的特性、Java具有而C++没有的特性以及C++和Java都具有的特性。将零散的知识点按照一定的逻辑关联在一起,既能锻炼学生查阅文献能力,又能促进他们思考,并将所有的区分与关联在实验教学环节中加以佐证,提高学生使用面向对象思维方式解决问题的能力;对于教学模块3“Java程序设计应用技术”,引入一个小型的图书管理系统开发实例,从图形界面的设计常规类、数据库连接的尝试、线程概念的初步理解等方面进行阐述,既让学生对基于面向对象程序设计方法在系统设计中的使用有初步了解,又能以Java语言为工具,为之后的数据库原理、操作系统、算法设计、嵌入式开发等课程打下良好的基础,激发学生的学习兴趣。

三、Java程序设计课程实施

在基于OBE的教学过程探索中,理论联系实际,以学生需求、社会对专业人才的需求为中心,以疫情期间全体师生开展的网上教学实践经验为背景,本文提出“线上教学+线下教学+综合考评+学科竞赛”四位一体的教学体系,如图1所示。即线上、线下教学相结合,利用教学平台完成的教学过程考核与笔试考核相结合,学科竞赛入课堂,四位一体,充分培养学生的创新能力和工程实践能力,以提高教学质量。

(一)利用网络平台,丰富教学资源

进行教学活动前,利用“超星学习通”平台构建网络学习资源,为学生提供多元化、自主性强以及更为灵活的学习途径。教师利用平台敦促学生课前预习、课后复习;指导学生通过帮助文档、互联网查找问题,完成相关作业,以调动学生的学习积极性;使其带着问题进入教学过程,提高课堂听课效率,杜绝“懒惰”思想。以变学生被动学习为主动学习,充分实现“我可以不讲,但是你不能不会”。

(二)通过课堂教学,查漏补缺

课堂上采用“以学生为中心”的教学模式。整个教学环节分为三个阶段。

第一阶段,根据前次课程、作业或实验环节中出现的问题进行交流。问题既可来自学生,又可来自教师根据作业和实验中出现的问题进行说明、解答。

第二阶段,完成本次课堂教学任务。在教学内容上,强调在前导课程、后继课程与本门课程之间建立逻辑关系;教学方法上让学生以问题为主导,进行讨论和思考。

例如,介绍面向对象特性之一的继承性使用时,通过抛出问题的方式让学生回顾前导课程C++中对继承的使用方法,引出在解决同样的问题下也可以利用Java实现继承,启发学生去比较、思考两种方法的优劣,以及各自能解决的相关领域上的工程性问题。

再如,介绍Java语言实现多线程问题。学生还没有学习操作系统课程,对进程、线程的概念不清晰,也不理解,授课时不需要讲解得很烦琐,只需要利用简单的两个并发执行的循环结构来生动演示、解释线程的概念,激发学生的学习兴趣,明白知识并不是独立的,是前后关联的,以达到持续学习的目的。

第三阶段,课程内容的总结。即教师将课程中讨论的问题、重要知识点进行归纳总结,提出让学生思考的新问题。值得称赞的是,本门课程所采用的是耿祥义老师主编的《Java2实用教程》(第五版),内含70小时的微课视频教学,利用教程中的微课教学视频指导学生巩固知识是非常有效的。这样整堂课上将课前预习、课中讨论、课后作业与实验有机结合在一起,充分调动学生学习的主动性和积极性,也增强了他们分析问题、解决问题的能力,体现了以学生为中心的教育理念。

(三)优化实验项目,强化实践能力训练

以学生为中心,依据课程目标优化实验项目。实验类型包含验证型、设计型和综合型三种,既满足课程目标要求,又具有先导性,为后继专业课程学习奠定基础。

验证类型的实验是对基础性理论知识进行深化的环节。这部分实验内容以Java语言基础语法、程序结构以及基本的面向对象特性进行的验证性操作,主要考核学生自我学习能力。例如,Java语言的基本语法部分是交由学生利用线上资源独立完成的。对于学习过程中出现的问题,鼓励他们课下和同学讨论,使用网络进行查证;课上课下都可向教师提问。重要的一点就是:引导学生学会提问!在提问前是否利用网络查阅了相关文献?是否在提问前查看了帮助文档?是否在代码出现错误后进行了断点调试?让学生了解当“我”(教师)碰到一个问题或调试中出现错误时去如何分析、解决问题的。CCBA9201-A6B0-4571-932C-502B33326B61

設计性实验突出理论联系实际,需要学生具备一定的抽象思维和工程能力。同一个实验,满足不同学习目标学生的需求。例如,设计一个仿Windows系统的“科学”计算器。20%的学生会“依葫芦画瓢”完成一个界面简单、基本能实现“科学”计算功能的作品;75%的学生可以设计出一个界面良好、功能更丰富的作品;还有5%的学生会在原有实验要求基础上添加新功能,界面更为美观。这充分体现了以成果为导向的教学过程,有效提高了学生分析、解决问题的能力。

综合性实验允许分小组完成一个B/S模式下的小系统,旨在锻炼学生的团队协作、沟通能力,利用课堂教学中的图书管理信息系统案例将需求分析到概要设计、详细设计、编码及测试,按照软件开发流程,让学生通过实验去实践,融入工程思维。因为知识的局限性,学生完成得并不完美,这很正常。实验的目的是让学生开始意识到什么是工程性思维,所学的知识什么时候用。这只是开端,意识形态培养更为重要,“完美”的设计会在后继课程中进一步完善和提高,保证学习的持续性。

(四)优化教学评价方式,实现综合考评

在OBE教学模式下,一个持续改进的质量保障体系是教学成功的有力保证。利用两个线上平台对学生的学习过程、学习成果进行实时和有效观测,可以及时对教学方式、内容做出相应的调整。结合工程认证人才培养、毕业生标准的要求,依据课程目标,加强过程性考核,加大平时作业和实验环节的考核比例。总评成绩=平时成绩50%+卷面成绩50%,其中平时成绩由平时作业和实验组成。

课程目标与考核计算方法如表3所示。课程目标评价内容及符号意义如下:字母A、B、C分别表示学生平时作业、平时实验、期末考试的实际平均得分;其中,A=∑Ai,Ai(i=1,2,3)分别为平时作业成绩中对应课程目标i的内容得分;B=∑Bi,Bi(i=1,2,3)分别为平时实验成绩中对应课程目标i的内容得分;C=∑Ci,Ci(i=1,2,3)分别为期末考试中对应课程目标i的内容得分。其中,平时作业A与平时实验B之和应为100。

为了保障实验成绩的客观性、公平公正性,鉴于程序设计课程实验环节的特殊性,我们使用“希冀计算机专业课程一体化支撑平台”完成实验部分的教学。利用平台的评阅与分析功能对作业进行检查、查重,既能有效地杜绝代码的“抄袭”现象,又促使学生加强代码规范性。程序代码查重结果如图2所示。

布置教学任务让学生利用线上教学平台——超星学习通,完成课前预习、课后知识的巩固。学生访问情况如图3所示。

(五)鼓励学生参加学科竞赛,培养创新实践能力

以成果为导向,以学生为中心,培养学生的学习兴趣,激发学生程序设计的能力,提高学生的创新实践能力。除“中国大学生计算机设计大赛”“全国高校艺术设计大赛”“蓝桥杯全国软件专业人才设计与创业大赛”“团体程序设计天梯赛”外,“互联网+”、创新创业大赛等都激励学生积极参加。各项比赛中,学生获得了较好的成绩。

四、教学效果

通过对比近两年同专业两个年级学生的Java程序设计课程成绩(见表4),可以发现学生的学习主动性、问题的分析和解决能力都有所提高。

尤其是在近2年的“蓝桥杯全国软件专业人才设计与创业大赛”Java软件开发B组竞赛中,本专业学生分别获全国二、三等奖。

立足于工程认证,以OBE教育理念为导向的Java程序设计课程不断改革探索。本文以学生发展和社会对专业人才需求为中心,明确课程目标,优化教学内容,改进教学方法,优化教学评价方式,实施线上教学、线下教学、综合考评以及学科竞赛四位一体的教学模式。

参考文献

[1]李志义.适应认证要求推进工程教育教学改革[J].中国大学教学,2014(6):9-16.

[2]陆鑫.OBE工程教育模式下课程教学设计研究[J].计算机教育,2017(10):135-139.

[3]谢静,蒋秀林.以能力培养为目标的Java程序设计课程教学研究[J].西昌学院学报(自然科学版),2020(1):111-114+119.

[4]吴劲,周帆,王瑞锦,等.OBE模式下的程序设计与算法基础课程改革探索[J].计算机教育,2019(11):86-90.

Abstract: In the context of engineering education certification, and in view of the current deficiencies in the teaching of program design courses in colleges and universities, especially the impact of the COVID-19 pandemic, the full development of online teaching has put forward higher requirements for all teachers teaching methods and teaching models. We have carried out curriculum teaching reform based on the concept of OBE orientation, engineering certification, and the goal of cultivating talents with the ability to solve complex engineering problems. Taking the Java Programming course as a example, we explore the ways of teaching reforms by constructing a “four-in-one” teaching system, and practicing in three aspects: optimizing the teaching content, updating the teaching method, and setting up a reasonable evaluation system.

Key words: Java Programming; OBE; engineering education certification; teaching reformCCBA9201-A6B0-4571-932C-502B33326B61

猜你喜欢
工程认证Java程序设计教学改革
面向工程认证的软件项目管理课堂教学探究
基于工程认证及成果导向教育的环境工程专业体系构建
《Java程序设计》课程网站的设计与实现
Java程序设计基础课实践教学中的分层教学模式研究
基于实训项目的Java程序设计实验教学模式改革与实践
基于工程思维的Java程序设计课程教学研究
基于人才培养的技工学校德育实效性研究
现代信息技术在高职数学教学改革中的应用研究
以职业技能竞赛为导向的高职单片机实践教学改革研究
微课时代高等数学教学改革的实践与探索