“三教”改革背景下的项目式课业改革探索

作者: 朱俊杰 程楚佳

“三教”改革背景下的项目式课业改革探索0

[摘           要]  深入探讨了襄阳职业技术学院在“三教”改革背景下,针对Java面向对象程序设计课程实施的项目式课业改革。改革旨在解决现有课业设计方案中存在的碎片化、机械化和形式化问题,通过四要素教学设计模型(4C/ID)优化课业设计方案。改革后的课业设计方案包括自顶向下的项目子任务分解、必备知识的提炼、引导工作的设计与专项操练的安排,以实现教学目标的满足与学生解决实际问题能力的提升。通过将教学目标划分为项目子任务、必备知识和引导工作、专项操练,有效解决了现有项目式课业设计方案中的问题,为“三教”改革工作的推进贡献了智慧。

[关    键   词]  项目式课业改革;四要素教学设计模型;教学设计;职业教育;Java面向对象程序设计

[中图分类号]  G712                   [文献标志码]  A                   [文章编号]  2096-0603(2025)02-0113-04

一、引言

2019年1月,《国家职业教育改革实施方案》首次提出对教师、教材及教学方法改革(简称“三教”改革)的任务。2021年10月,中共中央办公厅、国务院办公厅印发的《关于推动现代职业教育高质量发展的意见》中,再次强调了“三教”改革的重要性。目前,“三教”改革已成为新时代职业教育发展的重点建设任务,也是职业教育实现高质量发展的必然要求[1,2]。

2023年,襄阳职业技术学院在“三教”改革的基础上,结合实际情况,提出了“课程、课堂、课业”改革方案(简称“三课”改革),旨在全面推进“三教”改革,提升教育教学质量与学生发展水平。其中,课业改革作为对教学方法改革的响应,通过任务式、工单式及项目式等方式,设计由简单到复杂的阶梯式课业内容与环节,以实现“课业变作品、作品变产品”的目标,有效提升学生的职业能力。本文以“三课”改革中的课业改革为切入点,以java面向对象程序设计课程(以下简称java课程)为例,探讨项目式课业改革的实施。

二、项目式课业现状与改革思路

(一)项目式课业现状

在“三课”改革启动之前,信息技术学院已对Java课程的课业设计进行了初步探索,并明确以项目式方法作为课业设计的基本原则。具体而言,在每次课程开始之前,教师会梳理本次课程涉及的知识重难点,并明确学生需自行编写程序所需达到的预期效果,即下达课业。最终,通过分析课程的课业完成情况,有效跟踪学习进度,并对后续教学进行及时调整。

然而,当前的项目式课业设计方法存在碎片化、机械化和形式化三个主要不足[3]。碎片化表现为每份课业仅从对应课程的知识点出发进行设计,各课业之间缺乏内在联系,难以帮助学生建立完整的知识脉络[4]。机械化则是由于项目式课业仅规定了学生需完成的任务,而对具体的教学方法未作进一步要求,导致教学过程中仍以教师为主导的传统教学方法为主,未能有效促进教学方法的改革[5,6]。形式化则是指当前设计的项目式课业以理论知识为基础,构造理想化项目,而非从现实问题中提炼,导致项目的实际意义大打折扣[7,8]。

(二)改革思路

基于四要素教学设计模型(Four Component Instru-ctional Design Model,4C/ID),本文提出的项目式课业设计方案旨在有效改善当前项目式课业的碎片化、机械化及形式化问题[9,10]。

首先,从课程的总体教学目标出发,自顶向下划分项目子任务,使项目服务于教学,增强课业之间的联系,避免课业碎片化问题。其次,在项目任务中列出学生完成项目所需的必备知识及教师需提供的引导信息,帮助教师更好地开展以学生自我调节学习为主的教学方法改革,从而避免课业机械化问题。最后,从实际问题出发,设计难度适中的专项操练,以避免课业形式化问题。

三、Java课程项目式课业设计改革方案

本文提出的项目式课业设计方案基于四要素教学设计模型,如表1所示,该方案由项目子任务、必备知识、引导工作及专项操练四个要素构成,每个要素又对应若干步骤,经过共计八个步骤后完成项目式课业设计。

(一)项目子任务

为每一章节设置独立的课业是导致课业碎片化的原因之一。在本文提出的课业设计方案中,从课程总体的培养目标出发,自顶向下分解为多个章节构成的项目子任务,并以项目子任务为基础设置对应的课业,从而有效避免课业碎片化问题。

1.分解子任务

Java课程的总体教学目标是“熟练掌握Java基础语法,能够利用Java面向对象基本特征设计类,能通过JDBC操作数据库”。在此基础上,设计三个项目子任务:利用Java基础语法实现图书借阅系统、利用Java面向对象特征重写借阅系统、利用JDBC实现借阅系统持久存储。

在划分子任务时需遵循两个原则:一是基于课程的教学目标进行划分;二是任务应贴近实际,具体且完整。本文对Java课程项目子任务的划分,涵盖了教学目标中的基础语法、面向对象及JDBC三个关键部分,并以学生日常接触的图书借阅系统为蓝本,设计真实的具体任务,以帮助学生更好地理解任务目标。

2.子任务排序

为了进一步加强子任务间的联系,并培养学生的知识迁移能力,需按照由浅入深的原则对划分的子任务进行排序。Java课程项目式课业的子任务顺序为:从Java基础语法实现图书借阅系统开始,接着利用Java面向对象特征重写借阅系统,最后利用JDBC实现借阅系统的持久存储。

这种排序方式有三个原因:首先,每个前序子任务所涉及的知识和技能,都是完成后续子任务所必需的。其次,子任务间存在前后关系,学生曾经完成的课业将为下一次课业的完成提供支持,从而进一步加强课业间的联系。最后,随着子任务的推进,提供给学生的提示信息和指导帮助逐渐减少,进而培养学生的独立操作和迁移学习能力。

3.确定任务目标

任务目标是对知识、技能和态度三个方面的综合评估标准。一方面,任务目标能够清晰展示学生完成任务后应达到的知识技能水平;另一方面,任务目标可用于评估教师的教学效果,并帮助教师进行教学反思。

基于Java课程标准中对总体教学目标的规定,结合信息技术学院学生的实际情况,本方案对三个项目子任务分别设计了对应的任务目标:掌握Java基本语法知识及编写面向过程代码的方法,具备使用基础语法解决问题的能力;掌握面向对象的基本思想,具备使用面向对象技术解决实际问题的能力;掌握JDBC的相关知识,具备通过JDBC实现数据库增删改查操作的能力。

(二)必备知识和引导工作

在现有的项目式课业设计方法中,通常只关注每一课程章节提供至少一个练习项目,忽视了对教学方法的指导,导致大部分教师仍采用传统的教师讲解与学生模仿操作的教法,使得课业存在形式化问题。

在本文设计的项目式课业改革方案中,不仅提供了具体的练习项目,同时在每个项目子任务中,还提供了完成项目所需的必备知识及教师应做出的引导工作,供教师在实施教学改革过程中参考。

1.提炼程序性信息

程序性信息提供操作规则和方式等信息,旨在帮助学生掌握如何执行特定任务的步骤和过程。这种信息对于学生在执行任务时能够迅速、准确地应用技能至关重要。

在Java课程中,学生完成各项目子任务所需的程序性信息如下。

利用Java基础语法实现图书借阅系统:Java程序基本结构、数据类型、选择结构、循环结构、输入输出。

利用Java面向对象特征重写借阅系统:面向对象的基本概念、类和对象、继承、封装、多态。

利用JDBC实现借阅系统持久存储:JDBC的概念、导入JDBC驱动、数据库访问路径、数据库基本操作相关语法。

2.设计必备知识

在设计必备知识时,需要从两个方面考虑:一是根据任务需要和学生知识储备,选择合适的程序性信息作为项目子任务的必备知识。二是随着项目的推进,学生应逐步习得解决复杂问题的能力,此时必备知识的量应随之减少。

Java课程三个项目子任务对应的必备知识如表2所示。以利用Java基础语法实现图书借阅系统项目子任务为例,在初始章节中提供了足够多的必备知识,以帮助学生更快地进行认知图示构建,达到自动化的程度。随着任务的进行,提供给学生的必备知识量将逐渐减少,直至归零。因为前序知识已转化为学生内在的理解和技能,无需在后续中作为必要知识出现。Java课程其余两个项目子任务的必备知识设计类似,教师可以将各项目子任务中的必备知识以纸质材料或电子文档形式提供给学生,便于学生开展项目任务。

3.提炼支持性信息

支持性信息主要针对非重复性技能,涉及理论知识和认知策略,帮助学习者理解和解决问题。这些信息包括心理模式和认知策略,用于辅助学习者面对不同学习任务时有效解决问题和创新思考。简而言之,支持性信息旨在帮助学习者创造性地解决问题。

在Java课程中,支持性信息主要指认知策略,即解决项目子任务的思路和方法。随着项目子任务的推进,学生掌握的程序性信息越来越多,但初次接触大量知识时,学生很难直接灵活运用于解决实际问题。因此,有必要根据学生心智模式和认知策略发展的客观规律,提供一定的支持性信息,帮助学生完成项目子任务。

4.设计引导工作

与必备知识不同,引导工作不会随着项目子任务的进行而逐渐消失,相反,随着任务难度的上升,引导工作将显得愈发重要。因此,在设计引导工作时,需从两方面考虑:第一,根据任务难度和学生认知水平发展情况,选定合适的支持性信息作为引导工作。第二,安排引导工作出现的时机,主要指在任务开始前还是在任务进行中出现。

Java课程三个项目子任务对应的引导工作如表2所示。以利用Java基础语法实现图书借阅系统项目子任务为例,对于其下的所有章节,教师需在任务开始前对相关概念知识进行讲解。其中,对于分支结构和循环结构,教师应在任务开始前和进行中分别对学生进行不同的引导。具体来说,在介绍完两种结构的基本概念和语法并指定任务后,先让学生自行编写程序,待部分学生完成,且大部分学生有基本思路后,再提供示例代码,并对学生的完成情况进行点评。类似地,对于另外两个项目子任务,在任务开始前和任务进行中,都根据实际情况给出了具体的引导工作,在此帮助下,教师将更容易实施以学生自我调节学习为主的教学模式,促进教学方法改革。

(三)专项操练

Java课程的专项操练如表2所示。专项操练针对具体任务进行专门练习,目的是使学生专注于特定技能或知识点,通过重复和专门化训练,达到熟练甚至自动化的程度。专项操练是课业的具体呈现形式,是在完成前面所有设计步骤后自然产生的。设计专项操练时,需注意两个问题:第一,平衡专项操练与任务目标间的关系,确保学生能将操练中的收获用于解决实际任务。第二,专项操练不应过度简化,以免失去与实际任务的相关性。

以利用Java基础语法实现图书借阅系统项目子任务为例,本文通过以任务目标为基础,进一步分解得到专项操练的策略,实现了专项操练与任务目标之间关系的平衡。具体来说,基础语法的任务目标是“掌握Java基本语法知识和编写面向过程代码的方法,具备使用基础语法解决问题的能力”。因此,在该项目子任务中,有一大三小共计四个专项操练。大的专项操练是利用输入输出和循环及分支结构编写图书借阅模拟系统,这既呼应了项目子任务的主题,也满足了任务目标的要求,避免了专项操练因过度简化而失去与实际任务的相关性。为完成大的专项操练,设计了三个小专项操练且逐步深入:基础语法部分的数据输入和输出操练,专门训练系统交互功能编写;分支结构部分的借阅行为输出操练,专门训练系统选择功能编写;循环结构部分的连续借阅行为输出操练,专门训练系统持久服务功能编写。在这三个小的专项操练帮助下,学生将更容易完成大的专项操练。在这一设计下,专项操练既符合任务目标要求,也源自现实的具体问题,从而有效避免了课业形式化问题。