新工科背景下计算机软件基础教改探索与实践
2020-12-07卫霞保慧琴李婧李茹
卫霞 保慧琴 李婧 李茹
[摘 要]新工科对高校人才培养提出了新的要求,为了适应新需求,计算机软件基础课程教改工作显得尤为迫切。本文分析了电子信息类非计算机专业计算机软件基础课程教学中存在的问题,从课程结构优化、课程体系调整、实践课程改进、考核方式细化等方面提出建议,以期进一步提升课程教学质量,满足国家和社会大发展需要的应用型人才培养要求。
[关键词]新工科 教改 计算机软件基础
中图分类号:G434 文献标志码:A
基金项目:西安明德理工学院教改项目(项目编号:2019JGYB01)。
引 言
自2017年2月份以来,教育部积极推进新工科建设,以应对新一轮科技革命与产业变革,支撑“中国制造2025”等国家战略。从2017年2月达成关于新工科的“复旦共识”,到2017年4月关于新工科建设的“天大行动”,再到当年6月关于新工科启动部署的“北京指南”,半年时间谱成了新工科建设的“三部曲”,奏响了人才培养主旋律,开拓了工程教育改革新路径,为高校工科教改工作指明了方向。
改革开放40多年来,中国制造业经历了从“中国制造”到“中国智造”的历程,其主要特征之一便是工业化与信息化的融合。新工科建设,一方面要设置和发展一批能够体现“两化融合”的新专业,如人工智能、智能制造、机器人等;另一方面,还要推动现有基础工科专业的改造和创新,使基础专业人才能够适应新需求,既具有某一专业的知识,又具有“学科交叉融合”的特征;既具有用已有知识解决现有问题的能力,又具有学习新知识、新技能,解决新问题的能力。
目前,计算机软件基础课程是电子信息类非计算机专业开设的一门专业基础课程,课程内容涉及数据结构、操作系统、数据库技术、软件工程、软件开发方法及过程管理等,旨在让学生掌握计算机软件技术基础知识,并以此来思考、分析、解决相关问题。随着“两化融合”的推进,各行业对计算机技能的需求逐渐提升,该课程后期的授课范围将进一步扩展,在此背景下,该课程的教学改革就显得十分必要而迫切。
当前课程教学中存在的问题
计算机软件基础是电子信息工程专业通识阶段的必修课,西安明德理工学院将该课程开设于第四学期,共48个学时,其中理论课40个学时,占比高达83.3%,实践课8个学时,占比仅为16.7%,所用教材为清华大学出版社周福才主编的《计算机软件技术基础》。通过该课程的学习,学生可基于C程序设计语言,学会设计算法、理解程序设计模式,掌握软件开发过程中所涉及的各种技术,具有按照实际需求编写实用性软件系统的能力。笔者在教学实践中发现,该课程教学在以下因素中存在问题。
1.学生及教学模式因素
一是教学课时有限。多数高校对该专业的教学模式为大班集中教学,受课时限制,该课程的很多关键知识在讲授时只能点到为止。但是,本课程的知识点多而难,算法、概念比较抽象,学生自行消化、吸收较为困难。二是学生的知识储备影响学习效果。各专业学生的基础知识参差不齐,理解能力也不同,特别是本课程以C或C++等语言为基础,若学生的语言掌握和运用能力不足,就会导致其学习困难,甚至产生畏难情绪,进而失去学习兴趣。三是学生的学习目的不够明确。由于多数学生尚不能对专业架构有明确的认识,不明白计算机软件基础与整个专业的关系,加之教学中很多内容不能深入讲解,致使学生无法体会到该课程内容的重要性。
2.课时设置因素
当前,多数高校计算机软件基础的课时设置以理论授课为主,辅以上机实践,两者的课时比例为5:1,导致学生对课程的系统理解及动手实践能力明显不足,在后继课程培养不能有效弥补的情况下,学生难以达到新工科中所强调的,具有更强实践能力、创新能力、国际竞争力,高素质、复合型、应用型人才的要求。
3.课程内容因素
当前,该课程的教材内容主要为软件开发概述、数据结构、数据库、操作系统、软件工程及软件开发等。在实际教学中,课程内容设置重理论而轻实用。教师在授课时,按教材内容将各部分知识分散讲解,致使学生难以将各知识模块关联起来,从而不能真正掌握每一部分知识在软件开发过程中的应用。
教学改革探索
1.优化课程结构,加强各知识点的关联性
课程中的数据结构、软件工程及软件开发、数据库管理、操作系统等知识模块自成体系又相互关联(如图1所示)。教师可根据实践经验将课程教材结构进行调整:首先,将软件开发概述与软件工程结合在一起,讲解整个软件开发所涉及的流程及技术;然后,再分模块讲解数据结構—数据库—操作系统—软件开发方法。从全局到局部,使学生从整体到局部,更容易掌握每一部分的作用。
笔者结合多年教学经验,以及在业界领先公司软件设计的从业经验,在教学中注重课程的分模块实践教学,将数据结构、软件工程及软件开发、数据库、操作系统等每一个教学模块均与实际应用结合起来,与新工科要求结合起来,得出了“学与用”相结合的教学方案与模式。
笔者在课程教学中进行了如下优化设计:
(1)使用软件工程中的软件开发思路,设计一个解决实际问题的软件系统,每一阶段都按照软件工程中的软件开发模型实施。
(2)加强操作系统技术,如让学生设计一些脚本语言编写程序、熟悉软件编程的操作系统接口等。
(3)提升软件测试技能,让学生尝试设计一些软件测试用例,了解软件测试工程师的工作内容。
(4)按照数据结构和软件开发模型,使用模块化设计程序,将实际企业中的软件开发思路应用到教学中。
(5)将企业中常用的一些数据库类型,如Oracle、DB2、MySQL、SQL Server等介绍给学生,使其掌握SQL语句的使用,能联系实际软件开发中的数据库结构设计,做到有的放矢。
2.调整课程体系,紧跟产业发展趋势,激发学生的学习兴趣
根据新工科的要求,将产业和技术的最新发展、行业对人才培养的最新要求引入教学过程中,更新教学内容和课程体系,建成满足行业发展需要的课程和教材资源。教师在讲授过程中多增加实例,将课程内容与实际企业中的软件开发流程相结合,使学生对软件开发过程有清晰的理解。通过具体实例,引导学生思考与讨论,调动学生的积极性和主动性,同时帮助他们提高分析问题、解决问题的能力。
3.改进实践课程,强化应用培养
把传统的程序练习、数据结构练习,改为设计一个整体的程序,从需求文档、设计文档、开发、测试等分步骤完成;使用软件工程中的软件开发思路及瀑布模型设计完整的实践程序(如图2所示);引入企业软件开发的思路与过程,使理论知识与实践紧密结合,让学生更好地理解“学有所用”的意义。
在实践课程教学中,要求学生自行开发一个软件系统。教师先以任务为驱动,对软件开发瀑布模型中的每一阶段进行分解,输出每一阶段相应的成果,并将每个阶段的完成情况作为考核因素,再鼓励学生创新思考,独立完成任务,最终完成整个软件的开发流程。
4.细化课程考核方式
计算机软件基础课程是一门实践性很强的课程,应将授课时间调整为:理论知识讲解50%,技能演练20%,软件系统设计30%。同时,考核比重也进行相应调整,降低理论考试成绩比重,增加实践课程成绩的比重,将原来的90%理論+10%实践,更改为60%理论+40%实践,从考核上引导学生重视这门课的动手能力培养。
在具体实施时,教师应聚焦课程教学目标,将课程中的实践能力培养占30%,实践课程中的软件任务成果展示成绩占10%,使能力测评和态度评估有机融合,便于综合评价学生的学习成果。
结 语
随着信息技术快速发展,“两化融合”逐渐深入,各专业对人才的计算机技能均提出了新要求,计算机软件基础课在非计算机专业课程中占的比重还会提升,该课程难掌握且实践性强,其教与学的方式方法值得我们继续去研究和探索。
参考文献:
[1]刘彦军.地方本科高校转型发展模式研究[J].中国高教研究,2015(10):18-22.
[2]吴爱华,侯永峰,杨秋波,等.加快发展和建设新工科,主动适应和引领新经济[J].高等工程教育研究,2017(1):1-9.
[3]“新工科”建设行动路线(“天大行动”)[J].高等工程教育研究,2017(2):25-26.
[4]“新工科”建设复旦共识[J].高等工程教育研究,2017(1):10-11.
[5]姜永斌.从“中国制造”到“中国智造”,40年来中国制造业经历了这些[EB/OL].北京日报, 2018-12-03.https://baijiahao.baidu.com/s?id=1618798554963637023&wfr=spider&for=pc.
[6]林健.新工科专业课程体系改革和课程建设[J].高等工程教育研究,2020(1):1-13,24.
[7]郭乐江,程敏,陈新,罗刚. 计算机软件技术基础课程信息化教学研究[J].空军预警学院学报,2019,33(1):70-72,75.
作者单位:西安明德理工学院 陕西西安