基于OBE-CDIO模式的C++程序设计课程教学改革研究

2022-11-08 10:49白茹意郭小英贾春花
中国轻工教育 2022年4期
关键词:工科思政教学内容

白茹意 郭小英 贾春花

(山西大学自动化与软件学院,太原 030006)

在我国信息化建设突飞猛进的今天,大数据、5G技术、“互联网+”、城市大脑等都显示着未来是人工智能时代,同时也让软件工程专业越来越显示出其重要性。软件产业的发展程度决定了一个国家信息产业的发展水平及其在国际市场上的综合竞争力。在教育部2017年新的工程建设规划中,具有较强工程实践能力和创新思维能力、能够满足产业发展需要被确定为培养高校工程人才的基本条件[1]。与此同时,新工科建设赋予了软件工程专业鲜明的目标和定位,即深化教学改革、产学合作、实现人才本位办学体系[2],培养精英型软件工程人才。软件工程在信息时代中处于核心技术地位,在各个工科专业中都起着推动作用。“新工科”环境下软件工程应重视与其他工科专业之间的交叉和整合,以实现传统工科的智能化和信息化。可见,在这种形势下,软件工程专业更需要培养基础知识扎实、工程能力强的软件工程复合型人才。然而,我国高水平软件人才的稀缺已经逐渐制约着软件产业的发展速度。高校是培养软件工程人才的主要阵地,培养高素质软件工程人才,适应新工科发展要求,满足软件产业发展需要,已经成为高校以及我国信息化产业发展的核心工作。具有高素质创新能力的软件工程人才的培养,离不开高校软件工程专业的改革发展。可见,对软件工程专业课程进行教学改革势在必行[3]。

一、OBE-CDIO模式及课程改革的必要性

我国教育部于2018年颁布了《普通高等学校本科专业类教学质量国家标准》(以下简称《标准》)[4],《标准》所秉承的教育理念是“以生为本”“成果导向”“持续改进”等。其中,OBE-CDIO工程教育模式在培养应用型人才方面符合我国应用型人才培养理念。OBE教育理念[5]的全称是Outcome-based Education,可以翻译为“成果导向教育”“能力导向教育”“目标导向教育”或者“需求导向教育”。这种理念的核心是专注学生的学习能力,学生的学习成果是通过教学过程中的教学设计与实施获得的。CDIO工程模式是实施OBE的最好方式。CDIO[6]包含构思(conceive),设计(design),实现(implement)和运作(operate)四个部分。CDIO使学生积极参与到项目流程(构思→设计→实现→运作)中,在掌握理论知识的同时还能提高学生的分析、理解和动手能力,培养创新意识。总之,OBE-CDIO教育理念[7]倡导以学生为本,以培养目标与毕业要求为指导,逆向改革课程的教学目标、内容、方法与评价模式。这种教学模式更加凸显学生的学习主体地位,更加注重学生学习后获得的各种能力,有助于培养创新型、应用型和复合型人才的目标的实现。

山西大学是“双一流”建设高校,而且学院软件工程专业是国家级一流本科专业建设点,这对专业课程改革提出了更高的要求。C++程序设计[8-9]作为学院软件工程专业大学一年级的专业核心课之一,它具有面向过程和面向对象的双重编程思想,操作性要求比较高,整个课程体系与专业基础教学及专业核心能力培养相衔接,是后续一些专业核心课程(数据结构与算法、操作系统等)的重要选修课程。该课程的目标在于培养学生阅读、重写、设计、编写、调试程序等基本技能,发展学生的计算思维,培养程序设计思想,提高其实际动手编程的能力及完成复杂项目的能力、团队合作以及创新能力。

为了适应新工科背景下高素质软件工程人才培养目标,立足于本课程实践性较强、学生数量众多以及思政建设不足的现实,采取“OBE-CDIO工程教育模式”作为改革方案,在人才培养目标、教学内容、教学实施、教学设计以及考核方式等方面进行了教学改革与实践,增强了软件工程专业学生对知识的理解和运用能力以及对复杂工程的处理能力,使其能够适应未来新科技产业以及新软件发展对人才培养的要求。

二、课程目前存在的问题分析

近些年,学院对C++程序设计课程的教学模式与方法已经进行了一些改革,但仍存在如下问题。

1.教学内容不适应“新工科建设背景下高水平软件人才”的培养目标

C++程序设计是软件工程专业一门融理论和实践于一体的课程,是训练学生计算思维的专业基础课。目前,对教学内容的重构依赖于教材的章节设置,按照知识点的关联性进行组合与调整,强调程序设计语言知识,根据不同单元和阶段的目标对教学内容进行重新构建。这些改革措施实现了知识点的纵向聚类,使学生能很好地把握教学重点和难点,但却没有从学生需要提升的不同能力出发,考虑不同能力对应的不同知识点。这就使学生在运用相关知识解决实际问题的过程中,无法明确自己的素质目标和思政目标。

2.教学资源不适应“新工科建设背景下创新型软件人才”的培养目标

当前,教学资源建设的重点是理论课程的教学大纲和教学设计两个基础环节。但对本课程的实践部分,多以纠错性、验证性及少数设计性实验为主,缺乏大型综合性实验案例。实验案例的更新速度比较慢,没有及时关注现实社会生产与时事要点。设计性实验虽然可以提高学生解决实际问题的能力和独立思考能力,但是缺乏对学生团队合作能力和创新能力的培养。

3.教学模式不适应“工程教育”理念

本课程作为一门软件工程专业的基础课,在近些年的改革中,始终采用以学生为中心,教师为辅助,线上线下混合的教学模式。此模式在一定程度上能够激发学生的学习兴趣和自主学习能力。但是,在课堂实施过程中并没有完全贴合新工科建设要求的“工程教育”理念。要培养高素质应用型软件工程人才,就要按照“工程教育”的思想构建教学模式,以项目开发为驱动,提高学生使用“工程”思想解决复杂问题的能力,增强学生对新问题的探究意识。

4.考核方式不适应“新工科建设背景下高素质软件人才”的培养目标

目前,本课程的考核是根据期末理论考试、实验成绩、平时表现等指标按一定的比例计算综合成绩。虽然这种考核方式中包含了学生的平时表现,能一定程度上体现学生平时的学习状况,但是在整个考核过程中的占比不高。因此,教师不能动态地把握学生在学习过程中出现的各种问题,容易忽视学生应用新知识新技术的能力、沟通能力、协作能力以及创新能力等方面的培养。

5.思政融入不全面[10]

在思政教育理念不断引入的背景下,思政元素逐渐被纳入本课程的教学之中。但是,目前思政元素挖掘尚不深入,案例设计不够全面,时效性不够强,思政内容并未更加深入和全面地融入教学过程中的每一个环节。

三、基于OBE-CDIO的课程教学改革方法

1.调整培养目标

OBE理念强调在课程结束之后的输出,它要求学生在掌握软件开发技术等理论知识的同时,提升实际动手编程能力,从而培养出具有实践技术创新能力并能满足企业岗位技能需要的优秀人才[11]。本课程作为软件工程专业核心课程,综合考虑人才培养方案设置及课程特点,将其教学目标划分为知识目标、能力目标、素质目标和思政目标。

(1)知识目标

培养学生面向对象的编程思想,锻炼逻辑思维,应用计算机编程处理实际问题,初步掌握科学与工程思维方法。

(2)能力目标

培养学生具有一定的工程实践能力、创新能力及团队协作能力。使学生能够应用工程化思想、技术与手段进行软件的分析、设计、开发与维护。

(3)素质目标

培养学生查阅和运用资料的能力和严格、标准的专业素质。

(4)思政目标

把“立德树人”作为思政主线来培育学生的道德素养、工匠精神和创新意识,使他们树立正确的人生观、职业观、道德观、价值观。

表1 课程培养目标

2.重构教学内容

OBE理念强调学生为主、教师为辅,突出专业知识的应用性与创新性,用实际工程案例活跃课堂,实现任务驱动,检验学习成果[12]。依据人才培养方案对要求实现的知识、能力、素质以及思政目标等,研究组对课程教学内容进行了重新组织,对教学内容的改革主要分为理论教学内容与实验教学内容两大部分。

(1)理论教学内容部分

我们把教学内容按照相关性归纳为5个部分,分别是基础概念(与C语言类似部分)、面向对象编程、软件开发方法、算法设计和数据结构基础,如图1所示。针对不同部分,要求学生掌握的程度和内容也不同。比如,学生已经学过C语言程序设计,对基础概念部分则以回顾为主;面向对象编程部分是这门课的重难点部分,要求学生重点学习掌握;软件开发方法和算法设计部分,要求学生在能够熟练编程的基础上进一步提升编程规范性;数据结构基础部分是为后续课程奠定基础,只要求学生理解。

图1 理论教学内容重构

(2)实验教学内容部分

我们从当下的热门事件中挖掘思政要素,创建思政案例库,采用理论与实验教学同时进行的方式,交叉讲解,巧妙融入课程思政,不仅使学生更加深刻地理解了理论知识,提升了编程能力,而且培养了学生优秀的品格。表2所示为我们设计的思政案例,包括疫情打卡系统、垃圾分类、2022年冬奥会、扶贫、文化遗产保护、载人航天飞船等。

表2 思政案例库

3.改革教学设计

本课程是基于成果导向的教育思想,是在学生学习成果引领下进行的教学改革,让学生在富有挑战性的工作中培养项目建议,完成项目策划,进行案例研究。改革后的教学设计流程如图2所示。课前,通过共享课件和案例资料的方式开展预习;课上,利用线上教学平台、案例讲解、分组讨论等形式指导学生分析、解决问题,提高计算思维能力和软件开发能力;课后,进行编程拓展训练,引导学生探索前沿技术。采用“CDIO工程教育”模式,CDIO一体化设计(“构思—实现—设计—运作”)包含从数据采集、数据处理、数据分析到数据可视化的全过程综合项目,将实践项目与思政元素有机结合,达到工程教育、思政教育与专业教育的互融互通。具体每部分的实现要求如表3所示。在此过程中,我们采用多种辅助教学工具(雨课堂、山西大学大数据实验平台等)提升教学效果,更好地实现了线上线下混合式教学。

图2 基于OBE-CDIO的教学设计流程

表3 基于CDIO模式的课程设计

4.设置考核方式

结合OBE教育理念,按照CDIO四大环节,结合学生学习情况,进行模块化线上线下混合式教学。这就要求设计一种多元化、多层次的考核方式。图3为我们设计的考核方式,包括期末考核与过程考核(项目考核、课堂互动、小组协作),比重分别是40%和60%。通过增加过程性评价的比例,提升学生在学习过程中的主观能动性,以此提高学生的编程能力、项目开发能力、解决实际问题的能力、提升专业素养。

图3 考核方式

四、基于OBE-CDIO教育模式的案例设计实践

以“2022年冬奥会奖牌榜”项目为例,讲解CDIO模式在《类与对象》章节的教学环节中的应用。项目示例如图4所示,具体的教学环节设计如图5所示。

图4 2022年冬奥会奖牌榜

构思阶段:教师在雨课堂平台上布置课前思考作业“回顾2022年冬奥会精彩内容和奖牌榜情况”。学生可通过观看照片(如图4所示)认识了解这节课的任务。

设计阶段:教师引导学生设计系统开发流程,即“复合数据类型设计→类的概念及实现→对象的概念及实现→对象的内存存储方式”;学生通过教师的指导,理解“类与对象”的概念及C++实现原理,并对系统进行模块划分及伪代码实现。

图5 CDIO模式在项目中的应用

实现阶段:教师进行软件功能模块化整合,提供项目指导手册;学生实施硬件平台搭建,在codeblock、VS或山西大学实验平台等编译环境下进行软件开发设计,并对代码进行调试运行。

运作阶段:教师对项目进行答疑总结,布置课外拓展性任务,如建立疫情打卡系统等。学生进行小组讨论,明确分工,并通过查阅资料实现拓展功能,形成PPT进行项目汇报。

五、结束语

本文以OBE教育理念为依托,针对C++程序设计课程进行了多方面的改革与实践,让学生学会需求分析、查阅资料、学习探究、方案设计、软件综合调试、系统测试,并进行课外拓展训练和汇报。相对于传统的独立知识传授而言,该教学措施具有实际工程项目化的特征,能有效提高学生的专业技能,从而适应未来新科技产业以及新软件发展对人才的要求。

猜你喜欢
工科思政教学内容
中粮工科机械技术(无锡)有限公司
综合利用单元教学内容进行整体单元复习
“新工科”和OBE模式下的车辆工程实践课改革
思政课只不过是一门“副课”?
新工科下创新型人才培养的探索
关于国企党建与思政宣传有效结合的探讨
新工科背景下项目推动式教学模式的探索
思政课“需求侧”
思政课“进化”——西安交大:思政课是门艺术
等差数列教学内容的深化探究