培养复杂工程能力的综合课程教学模式设计
来源:用户上传
作者:
摘 要:工程教育认证标准中对“复杂工程问题解决能力”提出了明确要求。以培养复杂工程问题解决能力为目的,分析了昆明理工大学计算机类专业综合课程设计面临的挑战。依据工程教育认证标准,开展计算机类专业综合课程设计的教学模式与考核评价工作。教学实践表明,学生学习的主动性和积极性有所提高,动手和实践能力得到加强,解决复杂工程问题的能力得到提升。分析了存在的问题,提出了相关改进措施。
关键词:计算机类专业;综合课程设计;复杂工程能力;教学模式;工程教育
DOI:10. 11907/rjdk. 191980 开放科学(资源服务)标识码(OSID):
中图分类号:G434 文献标识码:A 文章编号:1672-7800(2020)002-0244-05
英标:Teaching Mode Research of Comprehensive Course Design Oriented to the Ability Training to Solve Complex Engineering Problems
英作:JIANG Ying, DING Jia-man, JIA Lian-yin, JIANG Hong
英单:(Faculty of Information Engineering and Automation, Kunming University of Science and Technology, Kunming 650500, China)
Abstract: In the standard of engineering education certification, the requirements are proposed for the ability to solve complex engineering problems. Aiming at training the ability to solve complex engineering problems, this paper analyses the challenges faced by the comprehensive course design of computer specialties in Kunming University of Science and Technology. Based on the standard of engineering education certification, the teaching mode and assessment of the comprehensive course design for computer specialties are discussed. The teaching practice shows that students’ learning initiative and enthusiasm have been improved, their practical skills have been honed, and their ability to solve complex engineering problems has also been improved. Finally, the existing problems are analyzed and the relevant improvements are presented.
Key Words: computer specialties; comprehensive course design; complex engineering ability; teaching mode; engineering education
0 引言
工程教育認证的实施,极大推动了本科生教育质量的提高。工程教育认证是一项复杂的系统工程,涵盖内容非常广,核心是提高学生“复杂工程问题解决能力”。学生要能够灵活、综合、创造性地运用所学,培养其创新意识与创新能力 [1]。
针对复杂工程能力培养问题,学者进行了相应的教学方法研究:文献[2]提出在复杂工程问题能力培养课程目标基础上,采用半开放式项目驱动教学方法设计软件与编程实践课程,重点解决复杂问题分析、设计/开发方案评价、现代工具使用、工程与社会、个人与团队、沟通与表达、创新意识和能力欠缺等问题;文献[3]面向复杂工程和系统编译原理课程改革,探讨教学方法、教学内容、考核模式等的适用条件和有效性,提出提高人才培养质量的思路和建议,对具体实施情况和效果进行了讨论和分析;文献[4]从系统设计类课程层面培养学生解决复杂工程问题能力,并在数据库系统设计课程中进行了教学实践,在借鉴开源数据库管理系统软件功能基础上,以小组和团队协作方式,分析、设计与实现一个原型软件;文献[5]将工程教育专业认证中的毕业要求、关注点与“计算机科学导论”课程的基础概念和案例绑定在一起,从控制复杂问题的角度探讨学生应掌握的课程内容,针对不同计算思维能力采用“低地板,高天花板”原则进行教学;文献[6]针对当前计算机实验室普遍存在的资源共享和开放性不足问题,提出通过“云+端”方式及多层递进思想构建计算机实践教学平台,提供开放式实践教学环境,更好地培养具有解决复杂工程问题能力的创新型计算机人才。
为满足“解决复杂工程问题的能力”要求,应该以工程技术为主线,持续提高学生的实践能力,要求学生从学习书本知识转变为解决实际问题[7]。作为计算机类专业实践教学环节的重要组成部分,综合课程设计是提升本科生综合能力的重要环节。因此,提高综合课程设计质量,将综合课程设计题目瞄准复杂工程问题,实施全过程监控,能在一定程度上提高学生解决复杂工程问题的能力。本文基于现有研究,针对昆明理工大学计算机类专业综合课程设计面临的挑战,依据工程教育认证标准,重新修订了综合课程设计的教学大纲,建立了明确系统目标、设计系统方案、论证及优化系统方案、选用工具及搭建环境、依据设计方案实现系统、系统测试及结果分析、系统优化与改进在内的完整实践环节,并在过程管理基础上构建多维度的考核评价。 1 综合课程设计能力培养要求
昆明理工大学信息工程与自动化学院计算机系自1985年开始招收四年制本科生,有计算机科学与技术、物联网工程、软件工程、数据科学与大数据技术等计算机类专业。计算机类专业均有综合课程设计,共60学时,属于应用实践训练课程,是对学生专业素养和技能进行培养与训练的必要實践环节。目的是将相关课程知识应用、技能掌握、系统体验、经验积累等方面有机结合,获得系统化、科学化、工程化的开发体验,培养和提高学生团队协作能力、工程实践能力。
在计算机科学与技术专业综合课程设计教学过程中发现,大部分学生虽然掌握了相关基本理论知识,但未能很好地进行综合课程实践,表现出来的问题主要包括:①在实践环节动手能力差,面对实践要求不知道该如何入手;②无法较好地将理论联系实际。针对以上问题,提出基于软件复用的计算机类专业综合课程设计教学方式,并进行了相关实践[8]。
2017年昆明理工大学计算机科学与技术专业通过工程教育专业认证。按照工程教育认证要求重新修订了综合课程设计的教学大纲,将课程设计主要目标设定为:通过解决具有复杂程度的实际问题,巩固和加深软件工程、数据库系统原理、面向对象建模技术等课程的理论知识和实际应用能力;通过课程设计训练,基本掌握系统定义、技术路线与工具选择、需求分析建模、软件体系结构设计、界面设计、数据库设计、编码实现、系统测试、运行维护等基本技能和技巧;熟悉系统开发规范,培养团队协作精神,为以后从事生产和科研工作打下基础。
综合课程设计对专业培养目标和毕业要求的支撑如表1所示。
2 教学模式
根据计算机类专业课程设计教学实践及工程教育认证相关要求,笔者学校对综合课程设计的教学方式进行了完善,逐步构建起面向复杂工程能力培养的计算机类专业综合课程设计教学模式,从理论、实践等方面加强对学生的指导。形成包含明确系统目标、设计系统方案、论证及优化系统方案、选用工具及搭建环境、依据设计方案实现系统、系统测试及结果分析、系统优化与改进在内的实践环节,对所有环节的内容、目标及教学方式均给出了具体说明。
面向复杂工程能力培养的计算机类专业综合课程设计教学模式如图1所示。
2.1 培养内容
在计算机类专业综合课程设计中,为避免学生的畏难情绪,以及考虑部分学生协作能力差等问题,建议学生自由分组,大于2人的项目组在选题后对每个成员的工作量进行考核。此外,在系统实现方式上未作限制,鼓励学生根据自己的特长选择熟练的开发平台和感兴趣的内容,但对系统难度有要求,不建议开发简单系统。学生可任意选择一种适宜的开发模型,例如快速原型模型、敏捷模型等,完成项目开发。
在面向复杂工程能力培养的计算机类专业综合课程设计教学模式中,针对复杂工程问题的主要特征,除完成系统开发外,还需重点关注以下内容:
(1)查阅文献,综合运用各类知识。基于学生在软件工程课程的理论学习中学过软件复用、软件协同开发、增量开发的思想及途径,在综合课程设计的第1节课上说明课程设计要达到的目标,介绍系统需求分析、设计、实现及测试各阶段可能产生的成果,引导学生查阅文献,综合运用各类知识开展课程设计。
(2)对各方利益不完全一致问题进行协商。在设计系统方案时,可能涉及多方面的技术、工程和其它因素,并可能相互间有冲突。组织学生讨论方案中的相关因素,让学生学会选择、折中、借鉴和综合,学习从全局考虑问题。
(3)深入运用工程原理,经过分析找到问题解决方案。在系统分析和设计中,引导学生积极思考,在实践中加强对相关知识的理解,更好地掌握相关思想和方法。通过深入运用工程原理,分析找到复杂问题的解决方案,将理论较好地应用于实践。
(4)建立模型,体现创造性和创新意识。启发学生应用数学和自然科学、专业基础学科、专业课程学到的基础知识、核心思想、相关技术和方法,在系统开发中灵活、综合、创造性地运用所学知识,通过抽象选择或建立相应模型,培养其创新意识和创造能力。
(5)与同行进行有效的沟通交流。为提高沟通和交流能力,要求学生能够分析并处理教师、项目组成员、组外同学对系统的建议,在阶段检查中汇报课程设计工作并撰写规范报告。
2.2 培养环节
(1)文档撰写。文档是系统工程实践的重要内容。通过在综合课程设计中的示例讲解,让学生理解需求分析、设计、实现、测试各阶段文档撰写的规范和要求,并将文档质量作为综合课程设计成绩评价的内容之一。
(2)过程管理。在分析、设计、实现、测试等阶段结束时进行项目检查和汇报,项目组需要说明系统开发情况,实现“班级项目管理”,即任课教师作为班级中各项目组的负责人,参与到项目管理过程中,确保项目组成员各司其职、项目顺利进行。针对阶段检查中发现的问题,通过问题跟踪及解决环节,训练学生解决问题及协作交流能力。课程设计结束时由各项目组演示系统,总结、交流开发中存在的问题及相关收获。通过以上措施,带动项目组内及组间讨论与交流,通过交流强化学生的团队精神和协作能力。
(3)多维度评价。为有针对性地教学,避免学习效果出现两极分化,使每个学生都能投入到综合课程设计中并有所收获,同时培养学生的创新意识,激发学生的积极性和创造性,使用多维度评价方法对综合课程设计进行评价。
3 多维度评价方法
计算机类专业综合课程设计的实践过程以学生为主、教师为辅。作为检验学习效果的重要环节,综合课程设计考核与评价体现了学生对相关专业知识的理解、掌握与运用程度。通过对综合课程设计进行评价,了解学生实践进度,有助于调整综合课程设计内容和过程,提高实践效果。
为了让综合课程设计评价能够有效支撑教学,提出有针对性的分级评价、过程评价与结果评价相结合的多维度评价方法。 (1)分级评价。针对系统选题的复杂程度,按照正常、复杂、较复杂、相当复杂4个层次对学生的项目完成情况进行评价,对应及格、中、良、优4类成绩,如表2所示。
表2中“正常”指学生可以直接运用现有方法或模型完成一个工作量适中的系统。
分级评价可以区分不同能力的学生在综合课程设计中的成绩等级。要求能力弱的学生必须运用所学知识完成系统实践,鼓励有能力的学生选择有难度、工作量大的系统实践,并尽可能创新,以便达到让所有学生都能提高实践能力的目的。
(2)综合过程评价与结果评价。面向复杂工程能力培养的计算机类专业综合课程设计教学模式针对课程设计过程中的关键阶段和环节制定过程评价与结果评价内容,包括出勤、阶段检查、系统选题复杂程度、其他人员评价、课程设计报告等,并根据教学实践定义相关评价指标和子指标比例。计算机类专业综合课程设计评价指标体系如表3所示。
通过将分级评价、过程评价与结果评价相结合,可以了解学生的学习实践情况和知识掌握程度,按需调整综合课程设计的进度和形式。
4 教学实践及效果
采用面向复杂工程能力培养的计算机类专业综合课程设计教学模式,在2012级物聯网工程专业、2013级计算机科学与技术专业、2015级软件工程专业进行实践和应用。针对78名学生、75个项目组的实践结果,从系统选题、开发方式、开发结果等方面进行总结。
(1)系统选题。各项目组选题来源主要是自行选题和从教师提供的题目列表中选题。其中,系统选题复杂程度统计如表4所示。
从表4可以看出,大多数项目组选择复杂问题进行课程设计,少数能力较弱的项目组选择正常难度题目完成系统实践。每次综合课程设计的选题会出现一定共性,例如APP游戏、信息管理类项目等。在汇报需求后,教师根据系统选题复杂程度要求各组明确区分系统范围。
(2)开发方式。60学时的综合课程设计要求在3周内完成,各项目组采用的开发方式如表5所示。
从表5可以看出,项目组愿意采用能够快速迭代的软件开发模型,遵循从简单到复杂、从小规模到大规模的循序递进原则,不断完善系统功能。
(3)开发结果。系统开发结果统计如表6所示。
统计开发结果显示,5%左右的项目组没有完全实现系统,不能正常运行,但项目组成员能解释核心代码的含义及作用,未实现的主要原因是学生前期基础较差,对程序调试中遇到的问题需要花费大量时间去解决,导致完整系统无法正常运行,只实现了核心功能。
在应用面向复杂工程能力培养的计算机类专业综合课程设计教学模式后,学生学习的主动性和积极性有所提高,动手和实践能力得到一定加强,解决复杂工程问题的能力也得到提升。通过多维度评价方法对学生进行跟踪分析发现,学生的学习能力在完成综合课程设计后都有一定提升,大部分学生可以应用已学的相关理论和知识开发有一定难度的系统,部分学生在知识综合运用和解决复杂工程问题方面表现出色。
5 结语
面向复杂工程能力培养的计算机类专业综合课程设计教学模式虽在一定程度上改进了教学效果,但仍然存在一些问题,如课程前期基础较差的学生,在综合课程设计选题时仍偏向简单的题目,在实践过程中较容易遇到难以解决的问题。后续将从培养体系入手,将综合课程设计中解决复杂工程问题能力的培养与其它环节关联起来,结合理论教学和工程实际,借助慕课等教学方式,进一步提升学生各方面的能力。
参考文献:
[1] 蒋宗礼. 本科工程教育:聚焦学生解决复杂工程问题能力的培养[J]. 中国大学教学, 2016(11):27-30,84.
[2] 许智宏, 李妍, 董永峰,等. 半开放式项目驱动复杂工程问题能力培养实践[J]. 计算机教育, 2019, 290(2):37-40.
[3] 林奕, 曾雷杰, 张小芳. 面向复杂工程和系统能力的编译原理课程改革探索[J]. 计算机教育, 2017,266(2):111-116.
[4] 戴牡红. 面向复杂工程问题的系统设计类课程体系[J]. 计算机教育, 2018, 284(8):82-85,89.
[5] 董荣胜, 李凤英, 汪华登. “新工科”背景下“计算机科学导论”课程建设初探[J]. 工业和信息化教育, 2018, 64(4):10-15.
[6] 刘莉平, 陈志刚,周诚. 构建基于“云+端”的多层递进、开放式计算机实践教学平台[J]. 软件导刊:教育技术, 2017(12):89-91.
[7] YU L, GAO H, FANG H, et al. Discussion on training students' ability to solve complex engineering problems from the perspective of professional certification[C]. International Conference on E-learning, 2018:1-7.
[8] 姜瑛,丁家满. 基于软件复用的计算机类专业综合课程设计实践与分析[J]. 计算机教育,2017, 266(2):54-57.
(责任编辑:杜能钢)
转载注明来源:https://www.xzbu.com/8/view-15224485.htm