面向工程能力培养的数据结构课程教学改革探索

2024-06-07 08:14俞春强刘鹏梁晓萍
科技风 2024年14期
关键词:工程能力数据结构教学改革

俞春强 刘鹏 梁晓萍

摘 要:为了适应社会快速发展和转型升级,满足行业对计算机类人才培养的要求。基于计算机类专业核心课程“数据结构”开展了面向工程能力培养的教学改革。首先,对数据结构课程内容的教学要点进行了分析。其次,对数据结构课程的教学内容进行分层对照,明确分析从基础知识到工程创新不同层次与课程的对应关系。再次,对课程的主要内容设计了面向工程能力教学案例以及课程内容学习的流程。最后改进了课程考核方式由传统的知识考核转为多层次、全方位的考核模式。因此,通过对课程的教学改革有利于提高学生的解决工程问题的能力。

关键词:数据结构;工程能力;教学改革

1 概述

我国于2016年加入《华盛顿协议》,标志着我国的工程师培养取得了一个新的阶段,让在本国取得工程师资格的工程师可以与国际上其他国家互相认证,有效的推动我国工程师走出去,为本国的工程师参与国际工程打通了一條路子,有利于本土工程师的国际化[1]。而评价工程师的水平是通过测试他们的工程能力。不同国家对工程能力的定义有所差别,但都包含了一些基本特征,如:相关的工程专业知识,工程伦理和职业道德、团队合作能力、可持续发展和终生学习的能力等。其中,专业能力是工程能力的核心要素[2]。当代大学生作为工程师后备力量,在学习专业知识的过程中也需要注重提升自身工程师相关素养和工程能力。特别对于新工科专业的学生,提高他们的工程能力是教师在教学过程中和最终课程考核、测评的一个重要的评价指标[3]。为了提高学生的工程能力,我国开展了系列培养计划:如卓越工程师培养计划、四新教育(新工科、新文科、新农科、新医科)、工程认证教育等,体现了国家对培养学生工程能力的重视[4]。这些培养项目是为了从人才培养模式、课程教学内容、教学形式等方面改革,强调理论联系实际激发学生学习主观能动性,进而培养学生解决复杂工程问题的能力,达到提高人才培养质量的目的。

《数据结构》是计算机类专业基础课程,与后续的很多课程紧密关联,也是低年级学生的入门课程,在人才培养计划中起到承前启后作用[5],其是介绍数据在计算机内部的加工过程、表现方式以及存储形式等。让学生学会分析计算机加工的数据结构的特性,了解不同的数据结构在计算机内部存储方法和相应的基础操作(算法),当学生面对工程中特定领域的数据,可以选择合适的数据结构对数据进行表示,也可以根据实际需求构造新的数据结构。前序课程《C语言程序设计》初步训练了学生由简单问题到结构化程序设计的,而本课程进一步让学生掌握数据的形态、表达等,培养学生对数据的表示、抽象的能力[6]。掌握好该课程对后续的《数据库原理》、《软件工程》等课程起到非常关键的作用。因此,为了提升教学效果,培养学生的工程能力,很多高校教师对该课程不断分析教学过程中的问题,尝试采用不同的教学方法,解决教学过程中所遇到的问题。邱劲等[7]提出以项目为导向,从实践教学出发,以“学生通讯录开发与设计”、“赫夫曼编码设计”、“交通咨询系统”等不同教学实践项目引导学生学习,培养学生工程能力,并提出了“理论适度、注重应用、强化能力、适应需求“的实践教学思路。袁凌等[8]为了提升学习《数据结构》课程的学生工程实践能力,打造了以关键知识点分析、知识点应用分析和系统闯关式的三个层次的面向实践信息化平台。

无论从人才培养方案、人才培养形式还是课程内容的改革,其最终的目的都是为了更好的提升学生专业知识水平和工程实践能力。因此,针对专业基础的核心课程,本文将探讨以培养学生工程能力为目的的课程教学改革。

2 课程教学基本要点分析

计算机科学与技术、软件工程、信息安全等相关专业的学生都需要学习该门课程,因此,不仅要掌握相关的基础理论知识,通过教学过程中的不断训练,将理论知识转化为解决工程问题的能力。因此,在学习《数据结构》课程的过程中,需要从以下几点着手改进。

  1. 加强学生对基本理论知识的理解和掌握。在课程的教学过程中,注重学习基础理论知识,例如链表、栈、队列等基础结构,结合示例介绍这些结构的表达形式和内部逻辑结构。只有通过老师的系统性的介绍,学生才能理解整本书的结构体系,从线性到非线性的结构模式,掌握好基础的理论。在学习简单的理论知识,让学生掌握逻辑结构和存储结构的区别。不能一味的给学生灌输知识,需要调动学生的主观能动性,多融入课堂互动环节,提高学生主动学习的积极性。
  2. 在教学过程中,理论知识是课程教授环节中的一小步,但也是非常重要的基础。在介绍基础理论知识的同时,需要强化学生的实际操作能力的训练。理论知识介绍过程由简单到复杂,从线性表、栈和队列、串、数组和广义表、树与二叉树、图、排序、查找等知识点依次讲解,都与实际的生产、生活紧密结合。例如:介绍栈和队列的章节时,在确保学生理解基础理论的前提下,加强学生在课堂中的编程理解,并结合在生活中的一些实际问题,包括银行排队、火车出站调度等,让学生将实际问题抽象为数据结构,并转为数学模型。从简单的知识点就开始引导学生理论联系实际、问题的抽象和转化能力。
  3. 将不同的教学方法和模式融入教学过程中。在关注课程基础知识讲解和基本的实践能力训练的基础上,选用合适的教学方法、有效的教学方式对培养学生的工程能力有很重要的促进作用,不同的知识使用不同的实践案例和工程问题有助于开拓学生面对工程问题视野,提升学生解决复杂工程问题的能力。

3面向工程能力培养的课程教学改革

3.1体现工程能力的教学内容重组

数据结构作为一门专业课程,具有较强的理论基础和操作性。包括了理论基础、实践训练、综合运用、工程应用和工程创新,难易程度和复杂程度都是逐步上升。根据课程主要内容分为线性结构和非线性结构两大块,其中较简单的有线性表、队列、栈等线性结构,较复杂的有树、图等非线性结构。总体安排也是从简单到复杂,从基础能力到工程能力的递进式培养。

根据教学大纲,将授课的内容主要分成几大模块,不同模块训练的工程能力不相同。但理论知识和实践训练都是反映学生对专业知识的学习和掌握情况,但是两者又所有不同,其中理论知识对应了专业知识学习能力和理解能力,反映了学生对文字的理解和想象力,而实践训练对应学生基本动手能力,体现了学生模仿和复现能力,是其它能力的基础。

综合应用是对课本知识进行有效的衔接,并分析问题的相关知识点,对知识点进行综合的考虑它们的关联性,是培养学生能否将所学知识转为解决工程问题的关键环节。教师在这一层次的引导非常的重要,课程教学可以结合分组讨论等多种教学形式。通过小组的角色扮演,可以提升学生的工程能力中的团队合作能力以及成员间的协作能力。

工程应用与工程创新是相辅相成的。只有通过工程应用,学生能够体会到将课程的知识以及平时训练的动手能力应用到解决工程问题的快乐。在其过程中,可能会碰到很多平时看不见的问题,此时需要通过教师和企业导师的指导和帮助下实现工程应用环节的培养。例如,综合数据结构所学知识点,创建复杂的数据结构存储工程工序,实现对建筑企业的各项工程施工工序进行排序,在各个工序不冲突的前提下,使得整个工程进度所花的时间最短。而工程创新则需要在对工程非常熟悉和知识点掌握得非常透彻的情况下,利用新方法、新工艺对工程应用中创新式解决所遇到得问题。

3.2 课程教学案例设计和课程实施

在传统的教学中,偏重于理论知识的讲解,而缺乏工程实践的环节,其中一个根本原因是教学内容的设置难以体现工程能力的培养。因此,对课程主要内容的教学方案重新设计,适当的融入较为复杂工程训练项目,是保障教师在教学过程中实现对学生工程能力的培养的基础和重要的依据。数据结构课程教学设计在其最主要的教学内容上必须加上含有工程性质的教学内容和实践问题。

3.2.1体现工程能力的教学案例设计

数据结构课程内容主要围绕三大类型的数据结构进行展开,包括线性表、树和图几大模块,是数据结构内容的最主要体现,其操作包括建立、查找、删除、修改等一些共同部分。无论在内容还是形式上,存在点—线—面的关系,若学生能够掌握好这些内容,其它的学习内容相对容易贯通。表1列出了传统教学方式中数据结构主要知识点存在的一些问题,同时也给出了面向工程能力的教学设计案例和实验教学方案。表中给出了城市路径规划的例子,在教学过程中可以以本城市的路网为例子,结合图数据结构进行知识点的讲解。实验过程中可以根据学生的能力从小城市路网到大城市的复杂交通线路有区分的进行教学。案例中又引入了红楼梦人物关系分析的教学案例,这样可以让学生在了解国家文学名著的同时,利用数据结构进行分析,打破了文学似乎与计算机很难联系到一起的刻板影响。

3.2.2课程的教学实施

根据目前人才培养方案的设置,数据结构一般为64课时,理论教学和实践教学部分各为32课时。课程的教学时间非常有限,如果只依靠课堂教学课时实现学生工程能力的培养,显然是不够的。因此,不同于传统的教学模式。讲授课程时,采取网络学习和课堂学习的混合教学模式,让学生提前在线上预先了解知识点,有利于学生快速理解课程的内容,在课堂中老师可以着重介绍所学知识点如何与工程问题相结合。在实际教学过程中,教师可以预先告知学生所用知识点,布置线上编程实验,进一步加深知识点的理解和记忆。待具备一定的基础知识,再布置相对较大的工程问题,利用课余时间,采用课程设计的方式以及分组模式对工程应用问题进行分析和解决,这样也有利于培养学生相互讨论、相互学习以及相互协调的能力,体现团队合作精神。

3.3体现工程能力的考核模式

传统的课程教学考核通常包括70%理论知识考核,20%实践考核和10%平时分,实践考核的占比较低,并且实践考核也只是简单的编程实验,无法体现学生对知识的综合运用能力。因此,由传统的试卷考核转为分层次考核。

由于学时的限制,将传统的知识点考核分别融入到了线上学习和基础知识两部分,在基础知识考核中,注重考核学生对知识点的掌握情况和分析问题的能力。线上学习主要是体现学生学习的主观能动性,让学生学会在课前预习知识点,通常在该层次学习时,学生基本课自行学会简单的知识点,腾出更多时间讲解更难的知识点。实验部分除了考核学生的基础编程能力,同时在项目课程设计和线上学习部分也会体现学生的编程实践能力,只是难以程度有所区别。项目课程设计主要是体现学生在课程学习后期对课程知识在综合的工程问题上的应用能力,以项目报告和项目答辩的形式进行考核,体现了学生问题分析、报告撰写以及口头表达的能力。不同的部分具有不同的权重,具体分配如表2所示

结语

《数据结构》是计算机大类专业中的一门核心课程,也是其它专业课程的基础,具有较强的实践性。因此,通过对课程内容的重构,教学案例的设计以及考核方式的转变,能够有效的将工程能力培养融入该门课程的教学过程中。只有通过不断的训练和应用,才能够体会数据结构在实际工程中的重要性。

参考文献:

[1] 李志义.解析工程教育专业认证的成果导向理念[J].中国高等教育,2014(17):7-10.

[2] 上官倩芡,张鸣天,吴晖锽.工程能力评价的方法探索及思考[J].中国人事科学,2022,No.49(01):68-74.

[3] 邓娟,彭蓉,余琍,等.工程认证背景下基于校企协同育人的课程建设——以软件工程专业“知识工程”课程为例[J].高等工程教育研究,2023(02):75-79.

[4] 申欣. 大学新生技术与工程素养研究[D].华东理工大学,2022.

[5] 曹源. 数据结构与算法系列内容研究[C]//教育部基础教育课程改革研究中心.2020年课堂教学教育改革专题研讨会论文集.[出版者不详],2020:1824-1825.

[6] 刘晔,朱安民,明仲.立德树人、需求引领、以能力培养为中心的计算机专业人才培养模式探索与实践[J].计算机教育,2021(08):79-82.

[7] 邱劲,王平.以项目为导向的数据结构课程改革与实践探索[J].西南师范大学学报(自然科学版),2019,44(09):167-172.

[8] 袁凌,祝建华,许贵平.“数据结构”课程面向实践的信息化平台建设[J].电气电子教学学报,2022,44(02):65-69.

项目:广西高等教育本科教学改革工程项目:工程能力为导向的信息安全专业建设研究与实践(2023JGA141);广西师范大学校级教育教学改革研究项目(2023SZJG20)

作者简介: 俞春强(1988年— ),男,汉族,江西上饶人,博士,副研究员,研究方向:计算机教育与图像处理。

*通讯作者:刘鹏(1979—  ),男,汉族,山西临汾人,博士,教授,研究方向:人工智能與信息安全。

猜你喜欢
工程能力数据结构教学改革
纺织工程专业工程能力培养体系初探
基于CDIO的网络服务配置与管理课程教学改革探讨
基于人才培养的技工学校德育实效性研究
现代信息技术在高职数学教学改革中的应用研究
以职业技能竞赛为导向的高职单片机实践教学改革研究
微课时代高等数学教学改革的实践与探索
“翻转课堂”教学模式的探讨——以《数据结构》课程教学为例
基于“卓越计划”的机械制图课程教学改革初探
高职高专数据结构教学改革探讨
基于“3CE+B”模式的电子信息科学与技术专业课程体系改革