0 引 言
随着科学技术的发展,计算机技术已经渗透各行各业,改造与重塑了很多传统行业。计算机通识课程作为大学生学习计算机编程、掌握算法设计和计算机科学技术的基础课程,无疑承担着启蒙和型塑学生计算思维、专业理念和职业伦理的重要作用。作为非计算机专业学生学习的入门级程序设计语言,Python语言具有优雅、清晰、简洁的语法特点,能将开发者从语法细节中摆脱出来,而专注于解决问题的方法、分析程序本身的逻辑和算法的特点[1]。产出导向教育(Outcomes-based Education,OBE)是以最终成果为导向的一种工程教育模式,对与之相关的教学活动进行针对性地设计[2-3]。教学过程由教师为中心转变为以学生为中心,被广泛地应用于程序设计课程教学的改革实践中[4-6]。将注重学生能力产出的OBE理念与专注解决问题的Python语言程序设计课程建设相结合,形成以学科交叉融合实践教学案例为线索,线上答疑、考核、预习复习,线下系统精讲、细讲、实践验证的穿针引线式教学模式,建立过程性考核评价体系检验教学成果,注重学生计算思维、分析解决问题及创新能力的培养,已成为一种趋势[7-9]。
基于OBE的Python程序设计实践案例教学本着“以学生为中心,以产出为导向”的理念,“以应用为主线,以技能为核心”的原则,合理规划课程教学内容,设计教学活动环节,进一步促进学生的能力产出,对实现复合型技能人才培养的目标具有深远意义。
1 基于OBE的案例教学模式
1.1 学情分析
计算机通识类的Python语言程序设计课程面向非计算机专业学生开设,培养学生计算思维能力、分析问题和解决问题能力,通过上机实践锻炼学生动手能力,并为今后结合专业需求,利用计算机处理专业问题打下坚实基础[10]。在实际教学过程中,教师往往忽略了Python语言语法简单易学、程序设计难度极大简化、第三方库的丰富应用、版本更新迅速、部分函数语法使用因版本更新随之变化的特点,在教学过程中沿用面向计算机专业教授程序设计语言的教学模式,注重语法细节的讲解,按照数据类型、程序结构、函数等顺序开展教学,弱化了Python语言的特点。对于基础薄弱的非计算机专业学生来说,传统的教学模式、枯燥的例题解释、晦涩的计算机理论知识,均导致讲授与应用、理论与实践脱节,无法引起学生的学习兴趣和积极探索的好奇心。教学设计沿用“常规理论+抽象数学问题解决”的方式,缺乏与实际应用结合的沉浸式体验过程,无法体现Python程序设计的趣味性与实用性,体现其赋能专业学习的价值,也无法适应多专业、不同基础学生的学习需求;传统的选择、填空、判断、改错、程序设计的考核方式单一,使得部分学生甚至产生了考前刷题、60分万岁的想法,学生综合运用Python语言解决实际问题能力、创新意识提高和实践操作能力都无法进行有效的考核。
根据2020版应用型本科人才培养方案指导性意见,对本校43个工科、文科、医科专业的毕业生应达到要求中对Python程序设计基础的支撑作用进行统计,结果如图1所示。工、文、医3类专业普遍希望通过Python程序设计课程达到培养学生使用现代信息工具的能力,工科类专业更加关注锻炼和培养学生分析解决问题的能力,文科类专业注重锻炼学生的分析解决问题、团队合作能力和人文素养、社会责任的培养,医科类专业则更为注重培养学生的创新思维、国际视野以及团队合作精神。
1.2 学习目的与成果确定
基于成果导向的教育理念,结合非计算机专业的毕业要求定位与学情特点,将课程目标[11](表1)与课程具体支持的毕业要求及教学内容建立对应关系,逆向确定教学目标(表2)。
1.3 教学内容体系及实施过程
(1)教学内容体系构建。根据表2对应关系,逆向构造与课程目标、毕业要求相匹配的实践案例教学内容体系。将课程实践案例教学内容体系分为Python基础应用、生态圈专业应用及创新应用3个层次,如图2所示。基础应用部分指以了解当前Python与其他行业融合的技术热点,获取全国计算机等级证书,具备未来求职需求的加分技能,为后续专业学习储备相关的计算机技术知识为目的,形成对基本的Python程序设计语法记忆理解,掌握至少2个标准库及至少2个第三方库的基本使用方法,能够阅读和分析程序,一定程度了解Python的计算生态圈的学习成果。生态圈专业应用指以赋能本专业学习,促进学科交叉融合,辅助科学研究为目的,了解使用Python进行机器学习、Web开发的方法,掌握使用Python进行简单数据预测分析、网络爬虫、图像识别方法。创新应用指在“大众创新,万众创业”背景下以申报创新创业项目、专利成果,参与学科竞赛为目的,形成数据动态可视化产品、办公自动化小程序、游戏开发、艺术作品等成果。
(2)实践教学案例设计。实践教学案例内容侧重Python应用,重点开展对于第三库的使用方法介绍,构建真实的情景问题,通过对问题的分析解构,锻炼学生分析问题、利用现代信息工具解决问题的能力。以有趣的案例为驱动,在明确的学习目的与学习成果的引领下,以“沉浸式有趣案例—讲解知识点及库使用—动手验证”的教学思路,将课堂教学与实际应用紧密结合,强调利用计算机求解问题、分析问题、解决问题的思路,注重训练和培养学生使用现代信息技术的能力(图3)。基础应用部分涵盖Python基本语法、基础数据类型、运算符使用、程序设计结构、列表、字典、函数、文件操作及常用的标准库与第三方库的使用。生态圈专业应用部分侧重学科交叉融合,注重常用第三方库的应用,充分结合线上教学资源,起到赋能本专业未来学习的作用,如针对医学影像专业学生的授课中引入医学图像识别、材料专业学生授课中引入X射线衍射图谱绘制[12]、翻译专业学生授课中引入词频统计等案例。创新应用部分则起到开阔视野、拓宽思路的作用,注重Python生态圈的介绍,以其特有的开源特点和丰富的第三方库应用为主要案例,根据所教授专业不同介绍不同领域专有的第三方库应用。
(3)教学过程实施。作为通识类课程,面向非计算机专业开设,需有别于计算机专业的程序类课程。结合Python语言本身的特点,以教师为引导,学生为中心,小组为单位的个性化教学模式开展教学实施。课前开展小测检验上节课学习成果,布置预习任务和学习资料,增强学生对本讲知识单元的认知;课上以案例为线、知识点为珠,引导学生分析解决案例问题需使用的知识点,形成对本节知识点的系统认识与应用理解,锻炼学生分析问题能力;课后通过线上答疑、线下3人1组为单位完成本单元实践验证,完成发现中学、合作中学、探究中学的成果任务。
改变传统教学模式,即改变按照教材目录讲授知识点—例题—课后习题的传统模式。通过有趣案例的展示,先激发学生了解、学习Python的兴趣,进而分析实现案例功能所涉及的知识单元,使学生明确本节的学习目标,进行实践验证,拓展探究理论与实际结合应用,如图4所示。案例引领知识单元的教学模式,有效地引导学生一步一步实现最终产出的实践验证作业,在此过程中学生对知识点的记忆与理解是通过自己的实践验证得出,而非单向灌输。提升学生实践操作能力的同时,培养学生形成既“想”又“能”的终身学习意识和能力,使兴趣驱动学习,而非机械的记忆概念,仅停留在解决简单数学问题、经典算法程序实现。
2 过程性考核评价体系
为解决考前刷题、课程设计题目和内容重复率过高、抄袭严重等问题,引入过程性考核,如图5所示。使用考核与学习效果相融合的方式,形成以教师引导、学生学习、小组完成的评价主体,通过平时学习记录、考评测试及课上实践验证考核的评价手段,对学生的课堂表现、平时学习效果、拓展探索及团队合作完成情况进行考核评价。考核分为3个环节:①基础理论知识的考核,包括课前预习复习测试、课上针对本节知识点的实践验证效果及课后章节测试成绩;②对于知识体系的终结性考核,以选择、填空、程序改错、程序填空、程序设计等形式构成;③综合应用考核,通过设置四级课程设计任务(图6),由学生小组选择课程设计题目,锁定成绩级别。
基础理论知识与终结性考核作为标准型评价:课前单元检测,体现科学性,检验学生上节课学习效果;课上验证,体现自主性,检验对基础性知识的掌握与应用效果;终结性考核,体现整体性,检验对知识系统结构的认识程度。
综合应用考核作为非标准型评价:通过沉浸式情景体验、小组讨论,实现科研反哺,知识内化,提升课程挑战度;以问题为导向激发学生思考,进而进行理论与实践的验证,过程中教师与学生通过线上答疑、线下课堂教授形式进行反馈指导,引导学生积极进行总结归纳、探究拓展,实现知识深化,提升课程高阶性。综合应用考核体现了过程性考核的特色性、学习的探究性,体现课程的高阶性和创新性。通过小组讨论决定级别,形成课程设计实施方案,从项目初期开始进行全程评价,成绩由组间评价、组内成员评价、教师评价组成,体现非标准型评价的公平性和过程化。
3 教学效果分析
基于OBE的Python案例教学改革在2021口腔医学1—2班、2021无机非金属材料1—2班和2021翻译1—2班进行,对应医科、工科、文科3类专业,人数分别是32人、33人、30人、30人、32人、30人。2班为实验班,开展对比实践教学。根据计算得到各班级课程目标达成度,如图7所示。
由图7分析可知,普通班与实验班的课程目标1、2的达成度都在0.8左右,总体达成度情况差别不大,基础应用部分学生的掌握情况整体较好,差别不大。口腔医学专业对比实验班的课程目标4的达成度情况相差不大,但课程目标3的达成度有所提高,这说明通过有趣且结合本专业特色的实践案例与拓展活动,能够提高学生科学创新意识,激发学生的创新思维和创新实践能力,在未来的教学中,教师应当充分挖掘医学与Python相关的应用案例,与相关医学专业教师开展合作研究,将理论与实践深度结合;无机非金属材料专业课程目标达成度总体情况最好,且整体课程目标达成度均高于其他专业,与工科专业学生在动手能力、逻辑思维能力等方面基础较好有一定关系,从教学过程中可看出在开展小组探究活动、完成课程设计的过程中实验班的学生展现出极高的探索精神,对结合利用Python解决本专业问题产生了极高的兴趣,通过实验班的课程目标3达成度结果反映了这一点,在后续的教学过程中可适当提高对于工科专业学生的考核要求,注重算法能力的培养,加强学科交叉融合案例的挖掘;翻译专业的目标达成度情况良好,且普通班与实验班差别不大,在教学过程中学生能够按基本要求完成课程实验案例,但在综合运用和拓展探究上与其他两个专业班级有些许差距,这一点通过课程目标3的达成度结果可以看出,如何提高文科学生对现代信息技术与本专业融合的探究意识和学习兴趣,构建适合文科生的计算机程序设计通识课教学模式与资源成为日后教学改革实践的重点。
4 结 语
作为非计算机专业的通识类课程,Python程序设计课程的培养目标是使学生在熟练掌握现代信息技术的基础上,通过理解、使用Python语言,提高发现、分析、解决问题的实践应用能力,激发探索、研究、创新的热情。为了达成课程目标,开展适合Python语言特点,设计具有学科交叉融合特色、学生感兴趣的沉浸式实践案例;形成基础、专业、创新应用的多层教学案例资源;设置适合不同层次学习基础、学习需求的期末考核任务,并以此形成过程性教学评价体系。在成果与兴趣的引导下,学生提升了全过程学习的参与感、提高了学习成果的获得感,体会到了从学习到产出的幸福感。经过教学实践验证,大部分学生可以自主实现医学图像诊断、相关数据预测分析、绘制复杂图形等任务;能力较强的工科专业学生能够积极主动地参与“大创”“互联网+”项目申报、学科竞赛活动并获得一定成绩;引导学生建立了将成果转化为服务国家战略需求的意识,具备了一项助力我国“工业4.0”建设、参与新业态发展的现代信息技术能力,为“大众创新,万众就业”不断培养和输送复合型人才。在未来的教学中,还应更加重视文科及部分医科学生的学习兴趣培养,构建更为丰富的教学资源,设计更具吸引力和参与感的教学环节,提高这部分学生的现代信息技术应用能力,深化计算机类通识课程的教学实践改革,提升高校毕业生服务社会发展的计算机技术实践应用能力和学科交叉融合的创新能力,实现培养应用型复合人才的目标。
参考文献:
[1] 刘卫国, 奎晓燕. Python语言程序设计教学体系建设[J]. 计算机教育, 2017(8): 13-17.
[2] 胡夏芸, 严筱永, 张海涛, 等. 基于OBE的计算机网络组网实验案例教学[J]. 计算机教育, 2022(3): 116-120.
[3] 聂轰. “新工科”背景下构建OBE理念的Python程序设计教学研究与实践[J]. 电脑知识与技术, 2021, 17(24): 208-209.
[4] 于延, 李英梅. 基于PBL和OBE融合的程序设计实验金课建设研究: 以高级语言程序设计实验课程为例[J]. 计算机教育, 2020(3): 43-47.
[5] 刘满兰, 李建辉, 关成斌. 基于OBE理念的“Python程序设计语言”课程混合式教学方法探索[J]. 计算机工程与科学, 2019, 41(增刊1): 203-206.
[6] 路龙宾, 王小银, 金小敏, 等. 工程思维引导的Python语言程序设计教学模式探索[J]. 计算机教育, 2022(3): 43-48.
[7] 赵广辉. 面向新工科的Python程序设计交叉融合案例教学[J]. 计算机教育, 2017(8): 23-27.
[8] 苗玥. 医学院校Python程序设计课程混合教学模式实验研究[J]. 高教学刊, 2021, 7(16): 100-103.
[9] 赵霞, 张珣, 韩忠明, 等. Python语言教学中问题解决能力和创新能力的培养实践[J]. 计算机教育, 2017(9): 6-10.
[10] 施培蓓, 汪中, 江慧. 基于智慧教学的计算机基础课程群建设研究[J]. 计算机教育, 2020(9): 163-167.
[11] 山艳, 李爽, 樊秋红, 等. 计算机通识课课程思政建设: 以“Python语言程序设计”为例[J]. 卷宗, 2021, 11(14): 239.
[12] 赵广辉. 面向新工科的Python程序设计交叉融合案例教学[J]. 计算机教育, 2017(8): 23-27.
基金项目:华北理工大学校级重点教改项目“‘三新’背景下基于 OBE理念的Python语言程序设计课程资源建设与提升”(ZJ2140Q);2021年教育部产学合作协同与人项目 “‘四新融合’背景下计算机通识课程建设研究”(202101311003);2021年教育部产学合作协同与人项目“OBE模式下Python程序设计金课建设”(202101107009)。
第一作者简介:刘盈,女,华北理工大学讲师,研究方向为数据挖掘,109744367@qq.com。
引文格式:刘 盈,谷建涛,闫海波,等. 基于OBE理念的Python程序设计课程实践案例教学 [J].计算机教育,2023(1):21-27.
转自:“计算机教育”微信公众号
如有侵权,请联系本站删除!