首页 > 范文大全 > 正文

数据结构课程设计教学中体现以人为本的理念

开篇:润墨网以专业的文秘视角,为您筛选了一篇数据结构课程设计教学中体现以人为本的理念范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘要:针对数据结构课程设计教学中存在的问题,提出以人为本的工作原则,探讨教学过程的组织和实施方案。

关键词:数据结构;课程设计;以人为本

1 背景

数据结构课程是计算机相关专业的专业基础课程,也是专业课程体系中的核心课程。数据结构课程设计与其他课程设计不同,它不仅是对本门课程知识的综合训练,而且要综合运用几个学期积累的程序设计知识,是对程序设计能力的一次关键的训练;因此,需要以整个教研室的力量完成该课程设计的教学工作。

在数据结构课程设计教学中,学生的基础、心态、积极性等因素在很大程度上影响教学的效果。近年来很多教学一线教师对数据结构课程设计面临的问题进行了探讨,介绍实践经验或提出改革建议,如基于问题驱动(以问题求解为核心)、案例驱动、任务驱动和项目驱动的课程设计模式;文献[6]指出以人为本的教育理念是时展的产物,主张把人放在第一位,以人作为教育教学的出发点;文献[7]认为提高教学质量的关键是在教学中坚持以人为本。数据结构课程设计教学涉及出题、选题、指导、评价等工作,任务繁重,参与的老师众多,因此,探讨如何在数据结构课程设计教学管理和教学实施过程中贯彻以人为本的理念,对数据结构课程设计的教学工作具有指导意义。

2 数据结构课程设计教学中的问题

在数据结构课程设计教学过程中通常会遇到以下问题:

(1)学生程序设计基础薄弱。高级语言程序设计是数据结构课程的先导课程。学生对于高级程序设计语言的语法知识的掌握和具备的基本程序设计能力是顺利完成数据结构课程设计的基础。由于计算思维与人类思维差异较大,尽管有些学生学习高级语言程序设计课程非常努力,但对于设计程序解决实际问题仍然不得要领。无论国内还是国外的高校,这都是困扰计算机相关专业教学的一个重要的问题。

(2)存在照搬、照抄他人课程设计的现象。部分学生在接受课程设计任务时没有建立起靠自己的努力认真完成任务提高自身能力的意识,当课程设计时间不够,无法按期完成任务时,从而采用抄袭的办法以图过关。查阅资料,消化吸收他人的解题思路,完成自己的课程设计,这原本是很好的方法;然而,由于数据结构课程设计的题目相对固定,在互联网上很容易查找相似题目的课程设计源代码。这些学生不是借鉴资料中解决问题的方法,而是直接拷贝,或者简单地改头换面之后交给老师。

(3)存在重视编码、轻视设计的现象。由于数据结构课程设计的题目完全可以不运用数据结构的知识直接用程序设计的方法来完成。有些程序设计能力较强的学生习惯于跳过设计步骤直接编写程序代码,看似他们在编程中使用了一些数据结构课程中的存储结构和处理操作,其实根本没有领会和运用数据结构的基本思想和方法。除了编码前的设计外,测试和分析也常常被学生忽略。

(4)很多学生在完成课程设计过程中不能与老师及时沟通。对于学生而言,理想的情况是在课程设计过程中只要遇到问题,指导老师都能及时详尽地指导;然而,这几乎是不可能的,由于学生多、问题多,而且在设计、编码、测试和分析中的每个学生的问题都不同,老师通常需要较长的时间来了解问题,然后才能给予解答,难以保证问题解答的及时性。导致很多学生很少提出问题,老师也不了解具体出现了哪些问题。还有一些学生问题特别多,不愿意靠自己的努力去解决,只要有困难就找老师,造成过度指导的现象。

对于上述问题,运用单一的教学模式是不够的,在数据结构课程设计的教学过程中,导人以人为本的理念是提高教学质量的关键。

3 以人为本理念的工作原则

以人为本是一种管理理念。在高校教学管理工作中贯彻以人为本,既要以学生为本,使学生健康成长成才,也要以教师和教学管理人员为本,调动他们的工作热情和积极性,推动学校各项工作的有序运行。一门课程的教学实施是高校教学管理工作的一个基本单元,是贯彻以人为本理念的一项具体工作。根据数据结构课程设计的具体要求,我们整理出在该课程中体现以人为本理念的工作原则,具体体现在以下几方面。

(1)尊重学生兴趣和发展目标上的差异。学习数据结构课程设计的学生并不都是以软件设计专家等为发展目标。有些学生在了解计算机专业、经历了程序开发体验之后,基于自身的兴趣和特长逐渐树立不同的发展目标,因此,教学管理在坚持课程目标的同时,考虑学生的发展目标和兴趣爱好,这是体现以人为本理念的一项重要的工作原则。

(2)正视学生程序设计基础的差异。对于程序设计基础较差的学生不能简单地降低题目要求,而是在题目设计、启动报告、选题过程、指导、评价、总结等各个方面都考虑鼓励、激励和帮助他们向自己设立的目标靠近。

(3)增加学生与指导老师交流的机会和形式。学生在完成课程设计的过程中需要得到及时指导,由于问题不同,如果采取一对一的有问即答方式,指导老师没有足够的时间;因此,采用灵活多样的师生交流方式也体现了以人为本的理念。

(4)明确区分指导与管理工作。数据结构课程设计指导老师的任务是帮助学生制订切实可行的进度计划、随时检查学生的进展、帮助学生解决遇到的问题。管理任务包括计划安排、过程监控、评价和总结等。这两类任务要明确区分开来,否则容易造成管理混乱,给学生带来困扰,不利于课程设计的顺利完成。

(5)尽可能不额外增加指导教师的工作量。高校教师在承担基本教学任务的同时,还肩负着科研的重任;如果改革使得教师工作量显著增加,教师的积极性就难以提升,这会影响实施效果。所以,教学工作不仅要以学生为本,考虑学生作为教学接受者的实际情况;还要以教师为本,考虑指导教师的主观能动性和客观的任务承受能力,不能为了教学改革无限制地给教师指派额外的工作任务。在构建数据结构课程设计工作实施方案时,应该想方设法提高教师指导工作的效率,确保指导教师的工作量不会大幅增加。

无论是从学生的自身差异出发,还是从教师的实际情况出发,在数据结构课程设计这一具体的微环境中贯彻以人为本的理念,有利于该教学过程的顺利实施,同时更好地诠释了以人为本理念的工作原则。

4 以人为本理念的教学过程

数据结构课程设计的时间安排主要有两种:一是在学期末或者学期初停课1~2周集中进行;二是要求学生利用课余时间分散进行。前者似乎比后者更好,因为教学效果的提升必须以指导老师的加倍付出为前提,基础较差的学生要在短时间内完成任务就需要指导老师更多地指导。

我们采用时间上的梯次安排法,也就是分成3个或者更多个梯次,不同梯次使用不同的时间安排,要求也不同。最高梯次适合基础好的学生,留给学生的时间大概两周,要求在时限前一次性提交课程设计报告和代码。中间梯次适合程序设计基础较强但设计能力弱的学生,分两个阶段完成任务,每个阶段为两周时间,第一阶段根据老师提供的比较粗糙的设计进行编码,第二阶段分析所写代码的不足,改进设计且重新编码。对于编码能力弱的学生,可以借用软件工程中的原型法来进行,把任务划分成若干部分,一步步地做,根据每一步的需要,老师可以提供函数库作为替代部分,但这需要老师投入更多的时间,同时要求整个课程设计的时间延长。

这种灵活的时间安排虽然适合数据结构课程设计的实际情况,却需要老师们的密切配合和精细的管理,而且在教学管理和实施过程中坚持以人为本的理念以取得最佳效果。下面分别按照计划与准备、启动、选题、课程设计、评价和总结6个阶段阐述体现以人为本的数据结构课程设计教学过程。

1)计划与准备阶段。

本阶段的任务是做好人员分工、任务安排和时间安排。参与数据结构课程设计工作人员根据所承担的不同任务分为5类:管理员、指导老师、讲座教授、评审老师和教研室主任。不同人员的职责如下。

管理员由一线教师承担,可以有多个管理员分别负责不同学生的数据结构课程设计管理。管理员的任务是按时间安排收集文档资料、检查学生的进展情况,并做好记录,从指导老师和学生那里收集、总结一些共性问题提交给教研室主任。指导老师主要任务是准备题目并对题目作详细的描述和要求,规定题目的限选人数,帮助学生制订进度计划,指导学生解决遇到的问题。讲座教授的任务是精心准备和主讲各种专题讲座(包括启动报告)。可以根据以往的经验提前总结一些针对典型问题的讲座,并根据收集上来的具体问题充实讲座内容。评审老师的任务是根据管理员收集的文档、资料和进展记录对学生所做的课程设计进行打分。规范了不同工作人员的职责,有利于教学过程的顺利实施。教研室主任负责总体协调、推动进程和最后的工作总结。

数据结构课程设计围绕题目进行,题目主要由指导老师提供,学生也可以自行选题。对于指导老师提供的题目,其本人应该亲自完成该题目的设计、实现和测试工作,并且形成规范文档。每个题目有详细的描述、要求、难度系数和限选人数。题目描述应该留有余地,供学生发挥自己的想象力。题目设计尽量有实际应用背景,如有向图求解最短路径问题,赋予了物流或者旅游等背景之后,题目本身就鲜活了。每个指导老师可以准备多个题目,这项工作往往在第一次进行时花费的时间多一些,以后每年只需做细微调整即可。指导老师把每个题目的描述、要求、难度系数、限选人数、报告文档和代码提交给教研室主任。教研室主任召集所有相关人员对这些题目进行研讨,以便对于题目要求、难度系数、评分标准等方面达成统一。

2)启动阶段。

启动报告以讲座形式进行,主要强调数据结构课程设计的重要意义,介绍与数据结构课程设计相关的各项安排,展示和讲解数据结构课程设计范例。启动报告的主要目的是让学生全面了解课程,调动学生的积极性。讲座教授在主讲各种专题讲座时切忌使用自己设计的例证性错误实例,尽可能使用学生写的文档和代码,分析其中的问题,教给学生解决问题的办法,而不是仅仅告诉学生问题的正确答案。

3)选题阶段。

该阶段主要工作是确定每个学生的题目,同时也就确定了指导老师,选题过程如下:

(1)学生选择已公布的题目(不受限选名额的限制);

(2)该题目的指导老师根据学生的情况和题目难度确定接受选题的学生名单(不得超过该题目的限选人数);

(3)没有被接受的学生可以进行再选题,直至每个学生都找到自己的题目。

确定题目之后,学生同指导老师一起确定题目相关的细节,确定遵从哪一个梯次的时间安排,并制定具体的进度计划。

4)课程设计阶段。

在这个阶段,管理员要严格按照进度计划进行检查,不能按照计划进行的学生要说明原因,请指导老师修改进度计划,同时扣分;同时管理员要及时发现共性问题,教研室主任安排讲座讲解有代表性的例子;指导老师检查学生是否完成了阶段性任务,给出修改意见,老师在此阶段投入的时间很多。从整个教学体系出发,学生在校期间要做的课程设计还有很多,数据结构课程设计仅仅是在高级语言程序设计课程设计之后的第二门。如果老师们在这门具有核心基础地位的课程中投入更多的精力,也就意味着在以后的课程设计中花费的时间会大大减少。

5)评价阶段。

评价数据结构课程设计的方法和标准要兼顾学生作品的质量、努力程度和学习态度,考虑题目难度等因素。对于作业质量评价可以采用部分答辩的方式,即由学生申请后按照不同难度系数分组答辩,最后评价小组评定各组质量等级。

6)总结阶段。

在总结工作中既要对学生的努力予以表扬,也要对所有老师的工作进行评价。可以分别从设计质量、编码质量、设计报告质量等角度对学生作品展开评优活动,颁发优秀证书。优秀名单及优秀作品存入学院评优查询系统,并在校园宣传板进行公告,并附指导老师的姓名。

5 结语

教学中坚持“以学生为本”,尊重学生在兴趣爱好和发展目标上的差异,激发学生的学习激情,用灵活的方法方式不断地保持和加强这种激情和动力,这是提高数据结构课程设计教学质量的必由之路;坚持“以教师为本”是提高课程设计教学质量的根本。我们将以人为本的理念运用到2010级的数据结构课程设计教学,提供A、B、C3种梯次供学生选择。19%的学生选择了A类,教师主要负责课程设计报告撰写指导。48%的学生选择了B类,教师主要指导数据结构设计、物理结构设计、复杂算法设计和课程设计报告。对于选择C类的学生,教师还要帮助他们解决程序调试等问题。我们根据教学进展情况安排了7次讲座。实践证明,学生非常欢迎这种细致的工作方案,96%的学生能够独立完成课程设计任务。然而,尽管利用讲座提高了效率,指导教师的付出比之前要多出一倍。如何减轻教师的工作量是我们下一步关注的问题。

参考文献:

[1]李治军,廖明宏,张岩数据结构与算法课程设计教学模式的探讨[J].计算机教育,2006(2):54-56.

[2]李英梅,夏伟宁,邢恺.“数据结构”课程设计教学过程的研究与实践[J].计算机教育,2009(5):68-69.

[3]庞晓琼.案例驱动的数据结构课程设计教学改革实践[J].计算机教育,2009(1):53-64.

[4]姜雪茸.任务驱动教学模式探究[J].兰州教育学院学报,2013(1):147-148.

[5]唐轶媛,蒋荣萍,周卫.项目驱动式教学在数据结构课程设计中的应用[J].轻工科技,2013(1):137-141.

[6]张亚平.“C程序设计”体现以人为本的教育理念[J].计算机教育,2009(12):22-23.

[7]徐福元,张影,胡宇博.以人为本是提高教学质量的关键[J].吉林工程技术师范学院报,2011(10):34-35.