APP下载

“项目驱动+课程设计”教考模式在《数据结构》教学中的应用

2014-03-16青岛黄海学院尹成波林德丽

电子世界 2014年9期
关键词:数据结构课程设计驱动

青岛黄海学院 尹成波 任 澎 林德丽

1.《数据结构》课程授课现状

《数据结构》课程是计算机及其相关专业的核心基础课程,是一门理论与实践相结合的课程,在整个计算机专业教学体系中处于举足轻重的地位,特别在软件方向的课程体系中处于承上启下的中心地位。长期以来,《数据结构》课程的教学备受相关学院领导高度重视,然而,大部分高校《数据结构》课程的教学效果都不尽如人意,影响教学效果的原因大致如下:

(1)理论教学与实践教学严重脱节。目前对于《数据结构》的理论教学主要是教师首先讲解基本的结构思想,然后再引导学生读懂由类C++语言编写的算法,最后布置作业让学生思考针对这些算法的问题。在实践教学方面,学生通常要做的事是将课本上写的很详细的代码翻译成相应的高级程序语言并调试通过,甚至不会去自己解决一个稍微复杂点儿的综合问题。基于上述两种原因,学生在学习的过程中可以不用费神思考就能将问题解决,但是离开课本遇到一个新的具体的问题就不知所措,体现不出学生独立思考问题的能力,实践教学环节更是流于形式,加之学生程序设计的基本功不扎实,久而久之对学习编程和思考问题失去兴趣。

(2)传统单一的考核形式,不能体现学生的技能水平。现阶段大多数高校对于《数据结构》课程的考试形式总是以笔试为主,考核的内容还是单一的理论知识,尽管最后有编程题目或者分析题,但是均不能体现学生的技能掌握的如何,90%的学生感觉学习了《数据结构》这门课程对自己以后的学习和工作没有用处,进而减弱了学习的信心,导致学生再学习后续的数据库和编程方面的课程的时候,缺乏模型构建的能力。

2.项目驱动教学法在《数据结构》课程中的应用分析

项目驱动教学法是以学生为主体,以项目知识为主线,教师参与引导的教学方法,它不再是“教师讲,学生听”的被动教学模式[1]。该教学方法的主要目的是让学生真正的参与到课堂中来,培养他们主动思考问题和创新的能力,特别适合于像《数据结构》这种内容延伸性强、抽象思维要求特别高的课程。

2.1 项目驱动教学法的特点

项目驱动不同于简单的任务驱动,它更侧重于培养学生解决未遇到的关键问题的能力,在教学过程中表现为以项目为本位、以学生为主体的重要特征,要求教师设计的项目要具有一定的应用价值,并且最好与企业实际生产过程或具体问题有直接的关系。项目教学法的特点如下:

(1)具有实践性:项目的主体与现实世界密切相连,学生的学习内容更加的具有针对性和实用性。

(2)具有自主性:学生自由、自主的分组进行学习,根据自己的理解发挥想象力,从而促进学生创造能力的发展。

(3)具有发展性:长期项目与阶段项目相结合,构成为实现教育目标的认知过程。

(4)具有综合性:项目的设计本身需要综合多个学科,所以培养了学生综合运用知识的能力。

(5)具有开放性:学生需要围绕问题进行探索和解决,所以学生的学习形式不再局限于课堂[2]。

2.2 师生角色的相互转变

项目驱动教学方法要求每位学生均要真正的参与课堂中来,在老师的引导下,发挥想象、参与研究、参与创造。因此,项目驱动教学法较以往的传统教学实现了两个打破:

第一,打破教材章节顺序,以项目为主线完成课程的培养目标。教师须在完全吃透课程培养目标的基础上,熟悉教材知识点,然后根据要传授的知识点结合该专业的就业方向和岗位构建项目,教师的主要精力应放在项目的设计、布置和引导方面,教师设计项目的优劣直接影响学生的学习效果。另外,在教学的初级阶段,教师还应该全面把握项目实施过程中学生可能出现的问题以及如何解决。在项目的实施阶段,教师只是起到引导和督促的作用,而不参与讨论,当各组学生都提出普遍不懂的问题时,可以先引导其查阅相关的资料或略微指导一二,教师在整个的过程中完全成了一名向导和顾问。当然,如何引导学生在项目实践中发现新问题和掌握新知识,这对老师提出了更高的要求。

第二,打破教师在台上泛泛的讲,学生在台下静静的听的局面。项目驱动教学法要求先将学生分组,每一组学生接到教师的项目后就开始自行分配任务,并且在指定的时间内将相关的问题解决,这期间可能会查资料、相互讨论、请教师长等,学生的教材理所当然的当成了查找知识的工具书,或者有些教材甚至可以不用给学生征订,节约了教育成本。这样,我们的教学才真正做到了注重过程、以学生为本。

2.3 项目驱动下的《数据结构》课程划分

以《数据结构》课程的教学为例,在采用了项目驱动教学法后,我们将课程的知识点划分成了10个项目:

表1 《数据结构》课程项目示例表

受现阶段高校授课时间的限制,针对不同的学生层次,这10个项目可能不能全部做完。根据学生的特点,教师可以有针对性的选作期中的5-8个,进而分配相关的课时。实践证明:在标准课时之内,只有30%的学生能够完成一个完整的项目,但是90%的学生能够利用课后的时间积极的查阅资料和咨询老师,这种授课方法对学生的主动学习起到了一个积极的推动作用,并且学生愿意牺牲课后休息的时间泡在图书馆。

3.具体项目实施过程

下面以“通讯录信息管理系统”为例,阐述在《数据结构》课程中实施项目驱动教学法的过程。

3.1 项目名称:通讯录管理系统。

3.2 培养目标:第一,使学生掌握线性结构的特点、线性结构的表现形式。第二,使学生领会数据在计算机中存储的概念,并掌握两种重要的存储形式。第三,掌握线性表和链表的区别,能够根据实际情况选择不同的存储结构。第四,能够对实施的算法进行性能评价。

3.3 项目预备知识:C语言编程基础、线性表的定义、线性表的存储结构、线性表的创建、线性表中元素的查找、插入、删除、修改等操作。

3.4 项目延伸知识:线性表中元素的排列(按照某种规则进行排序)。

3.5 项目的功能描述:该系统是普通的电话通讯录管理系统,要求实现能够根据姓名或者电话号码查询一个用户,能够实现对新用户的添加操作和删除一个用户,能够统计出该通讯录中的用户总数。比如:用户有一个电话号码,但不知道此电话号码是谁的,则需要输入号码来查询该号码是不是此通讯录中已记录的人的号码,若是可以输出该号码及姓名,若不是可以输出“无记录”。同学们在此基础上发挥想象力,结合实际可以扩展更多的功能。

3.6 项目实施步骤:

(1)根据学生的特长进行团队划分。按照一个班级35人的标准,我们将学生分成5-6个团队,每个团队在5-6人,然后推荐一名队长。

(2)教师开始下发项目书,要求每一个团队根据项目书撰写项目的可行性报告,每个团队以文字的形式上交一份报告,在此期间至少要保证每个团队的队长明白项目的完成目标,然后由队长写出项目过程的具体划分和阶段性成果。

(3)教师要不间断的引导,当完成项目的可行性报告之后,每个团队就开始查找资料和相互讨论,教师在旁边起到一个引导和监督的作用,对于学生普遍问及的问题可以进行统一解答。教师有目的的讲课,学生有目的的听课,所以实现了共赢的局面。

(4)教师总结阶段,每个项目完成之前,教师要对各个团队的成果进行演示和评价,指出每个团队的不足之处。

(5)学生整改阶段,学生根据教师的评价,完善自己的不足,然后形成阶段性课程设计报告。

4.《数据结构》课程的考核形式及评价

《数据结构》课程不同于其他的专业课,该课程中所设计到的算法和思想具有可收缩性,它应强调对于问题求解能力的培养,我们需要在学生的课程设计过程中,鼓励学生对其解决问题的方案进行理论分析和实验分析,鼓励学生积极主动的创新并大胆提出优化设计方案。对于该课程的考核形式是让学生根据自己平时的课程项目,将项目整理成课程设计报告,最终上交纸质的课程设计报告书,然后教师对报告进行评价。

考虑到《数据结构》这类课程一直以来是计算机相关专业学生学历层次提升考试的重要专业课,在进行课程考核的时候,有些学校除了让学生形成最终的课程设计报告书之外,还让学生参加一次笔试考试,以了解学生对于基础知识的掌握水平。

采用了项目驱动+课程设计的教学模式以后,学生普遍反映对数据结构的学习非常感兴趣,老师们则感觉采用这种方式以后,学生的学习积极性提高了,但是同时老师们的教学压力也变得大了,因为增加了老师准备课堂的负担,但是总体感觉是利大于弊的。

5.实施项目教学法的总结与展望

通过《数据结构》教学中实施项目驱动教学法,我体会到项目教学在专业基础课中实施的必要性,当然该教学方法也不是万能的,它不是适合于所有的课程,通常来讲:这种教学方法比较适合实践操作性强,学科比较综合的课程,同时,我有如下几点体会:

(1)项目教学法重要的是项目的设计,它可能直接影响教学的效果。在进行项目设计时,我们需要考虑学生对项目的理解、项目包括的知识点的范围、课程的前驱后继关系等,否则,我们设计的项目将是没有意义的。

(2)教师的有力引导是确保项目顺利完成的重要保障,学生在进行项目设计的过程中遇到棘手的问题需要老师第一时间进行指导。再者教师要事前全面掌握学生的学习层次,进行有目的性的指导,并能给学生留有思考的空间。

(3)做过的项目必须要有总结。作为教师除了开课前需要对所有的教学项目设计明白了之外,对于每一组学生做过的每一组项目必须都要有总结,这样一方面可以让学生觉得教师对他们的重视,另一方面是通过总结可以让学生之间取长补短、互相提高。

与传统的教学方法相比,项目教学法对教师和课堂提出了更高的要求,切实提高了学生对于知识的综合运用能力,切实提高了学生的实践操作能力,也切实增加了老师的教学工作量。但是,整个的教学过程中,教师发挥了主导作用,也体现了学生的主题地位,所以整个课堂的教学教师和学生的心态都是愉悦的,使课堂的教学效果有了很大的提高。

[1]李萍.浅谈项目教学法[J].企业导报,2011(10):235.

[2]徐肇杰.任务驱动教学法与项目教学法之比较[J].教育与职业,2008(11):36.

[3]章亚钧.创新项目教学法在通信技术课中的应用探讨[J].中国教育技术装备,2011(11).

[4]郑丽娟,付宇明,宜亚丽,陈革新,曾达幸.项目教学法下对教师角色的思考[J].教育教学论坛,2010(24).

[5]龚毅.项目教学法在通信技术课程中的应用研究[D].上海师范大学,2012.

猜你喜欢

数据结构课程设计驱动
基于模糊PI控制的驱动防滑仿真系统分析
数据结构线上线下混合教学模式探讨
屈宏斌:未来五年,双轮驱动,砥砺前行
龙凤元素系列课程设计
轨旁ATC系统门控柜接收/驱动板改造
中秋明月
“翻转课堂”教学模式的探讨——以《数据结构》课程教学为例
高职高专数据结构教学改革探讨
基于S3C6410的Wi-Fi驱动移植实现
基于Articulate Storyline的微课程设计与开发