APP下载

基于PDCA理论的《数据结构》实践教学的探索和实践

2016-12-16王精明李君燕

滁州学院学报 2016年5期
关键词:数据结构实验教学考核

王精明,李君燕



基于PDCA理论的《数据结构》实践教学的探索和实践

王精明,李君燕

《数据结构》是计算机专业人才培养方案中重要的核心专业基础课之一,其教学质量的好坏直接影响学生对计算机专业的兴趣和后续专业课程的学习。为达到地方高校应用型人才的培养目标,在分析《数据结构》实践教学过程中存在问题的基础上,将PDCA循环理论应用于该课程的实践教学过程中,锻炼和提高了学生自主学习、团队协作和创新能力。两年的教学改革实践和教学结果表明,新的教学方式在应用型人才培养上取得了良好的教学效果,也为今后《数据结构》等软件开发类课程的教学提供了一种可以借鉴的参考。

PDCA循环理论;实践教学;数据结构;教学效果

《数据结构》是软件工程、计算机科学与技术、物联网工程、网络工程等专业一门核心专业基础课,是计算机程序设计的重要理论和实践基础。通过介绍数据在计算机中的存储、处理和组织方法,使学生能够根据实际问题设计恰当的逻辑结构、存储结构以及相应的算法,并掌握算法的时间和空间复杂度的分析方法,培养学生初步具备应用数据结构和算法基本理论分析和解决实际问题的能力,为后续课程的学习和算法研究打好坚实的基础。因此,《数据结构》在计算机专业课程体系中具有承前启后的作用,而且也是计算机专业研究生入学考试的必考课程,《数据结构》课程的教学效果的好坏对计算机专业的学生的专业学习影响深远[1-2]。

1 《数据结构》实践教学中存在的问题

通过分析《数据结构》实践教学过程,收集同行教师、学生座谈会和相关课程授课教师的建议和意见,发现学生在学习《数据结构》课程的过程中存在以下较为普遍问题,这些问题困扰着学生,极大地影响了该课程的教学和学习效果,造成不能达到该课程预期教学目标的结果。

1.1 编程语言掌握不熟练

我校计算机专业《数据结构》实践教学采用C语言进行代码编写和算法实现。函数、指针和结构体作为《数据结构》算法描述的重要手段和工具,同时也是 C 语言的难点。实践表明学生在《程序设计基础》课程中虽然有了结构化程序设计编程思想的概念,但对于函数、指针和结构体等C语言等知识的理解和掌握不够扎实和熟练,导致《数据结构》算法实现时力不从心,不能完成实践教学的任务,直接影响该课程的教学效果[3]。

1.2 课程内容抽象难度大

《数据结构》课程概念内容多,理论性强,抽象度高,学生在算法理解上感觉吃力和困难。面对《数据结构》课程中涉及到的复杂算法、枯燥代码和程序运行结果,相当一部分学生觉得学习该门课程枯燥没有趣味,上课跟不上教师的思维和推理过程,导致学习这门课程的主动性、积极性和创造性很差,没有成就感[4]。

1.3 编程解决问题信心不够

通过观察发现不少学生在在解决实际问题尤其是上机编写程序时缺乏独立解决问题的能力和勇气。第一种情况是学生在程序编译过程中一旦看到几个甚至几十个语法错误时,立即变得无所适从、不知所措,立即变得无所适从、不知所措,完全被错误的数量吓倒,产生畏难情绪。实际情况是这类语法错误只要学生稍微有点耐心和基本英语知识,结合编程开发环境给出的提示是完全可以独立解决的,但是学生绝大多数情况是立即求助于辅导教师,是缺乏信心的直接表现。另一类错误是逻辑错误,部分学生程序编译没有错误,顺利通过,但是运行结果不对,这就是程序出现逻辑错误,但是学生对这样的错误完全没有信心去调试和排除,要么不了了之,要么立即求助于辅导老师,潜意识里认为自己没有能力解决该逻辑问题。

1.4 学习过程检查和考核不足

该课程传统的检查考核学习效果的方式主要是期末理论考试,平时对学生学习过程的检查和考核很少。虽然课程教学中有布置作业和课程实验,但是大学二年级上学期学生的课程较多,如果学生心理放松,疏于检查和考核,很容易赶不上进度,期末考试只能是突击考试,只要考试题目稍微变化,就无从下手,实际动手能力和学习效果很差,对学习的积极性和后续课程的学习造成很大影响。

2 基于“PDCA”理论的《数据结构》实践教学改革和实践

2.1 “PDCA”循环

“PDCA”循环理论是美国戴明博士提出的一种实施全面质量管理所应遵循的工作方法,人们也称之为戴明环[5]。“PDCA”是英语单词Plan、Do、Check和Action的首字母缩写而成,分别是计划、 实施 、检查和处理。 “PDCA”循环是按照计划(P)→实施(D)→检查(C)→处理(A) 顺序来对质量进行管理,并且循环不断地往下进行,上一个循环过程中未解决或新产生的问题会进入下一个循环。如此循环往复,使得每次循环达到一个新的台阶和水平,直到最终达到目标,如图1 所示。

图1 PDCA 循环理论示意图

2.2 《数据结构》实践教学的计划(P)阶段

《数据结构》实践教学的计划(P)阶段主要是做好实验教学大纲的制(修)订工作。实验教学大纲需要明确各实验项目的实验名称、实验目的、实验内容、实验环境、实验步骤和课后实验等。一个好的《数据结构》实验教学大纲不仅是教师的实践教学的指导性文件,也有利于学生建立起程序设计的信心,并真正感受到解决困难与不断进步的成就感;不仅使学生能够牢固地掌握主教材各种算法,而且能够深刻认识各数据结构的意义。另外,还对循序渐进地培养学生大规模程序设计能力具有重要的意义。

我校的《数据结构》实验教学使用的是自编实验讲义和资料,将实验分为验证性实验、设计性和综合性,其实验难度系数和对所学知识的综合应用程度逐渐递增。验证性实验主要目的是训练学生对主教材理论内容的理解,程序开发和设计能力。设计性和综合性实验主要训练学生项目开发能力、团队合作能力和协作精神以及基本的软件工程思想的训练。该课程实验教学。

2.3 《数据结构》实践教学的实施(D)阶段

对于验证性实验,在《数据结构》实验教学的组织上要求学生每 人一组,独立编程完成。过程分为三阶段: ① 在理论课讲解绪论部分时,因为仅涉及基本概念和术语,没有对数据结构和算法内容本身进行实质的讲解,因此该阶段的实验内容主要以熟悉VC++编程环境、C语言的结构体、指针和函数等内容的复习; ② 每周2课时的实验课主要用于学生将主教材中的算法伪代码以及自编实验讲义预留的需要学生设计的部分代码进行编程实现,并引导学生对自己的代码进行单元测试,验证性实验主要考察学生对主教材数据结构和算法的和学生的设计和编程能力;③ 学生在完成经过单元测试的程序后,撰写实验报告。验证性实验内容主要包括单链表、栈、队列、矩阵压缩存储、二叉树、图等数据结构的基本操作,以及查找和排序算法实现和比较。

对于设计性和综合性实验,在《数据结构》实验教学的组织上主要由教师精心设计设计性和综合性实验选题,由学生自由组合,3-4人为一组,进行团队合作,完成设计性好综合性实验程序设计、实现、文档撰写和汇报等工作。设计性和综合性实验的选题一般均具有一定的实用性,如约瑟夫环问题、带优先级的计算机、迷宫问题、银行排队仿真系统、文本编辑器系统、图像压缩系统、加密压缩和公交线路查询系统等。

2.4 《数据结构》教学的检查(C)阶段

一般来说,各高校《数据结构》核传统方式主偏理论测试,对实验教学的监管和考核重视程度不够,导致动手能力没有得到有效锻炼和提高,因此一套好的切实可行的实践检查和考核方法和标准值得探索和研究。

我校对于验证性实验的考核主要考核环节为程序演示、程序改进和实验报告三个环节。程序演示环节由学生演示自己的程序,教师检查学生程序是否达到预期要求;程序改进环节教师根据学生的程序运行状况向学生提出改进措施,学生按照要求完成对程序的改进;实验报告主要观测学生实验报告是否认真,对本次实验的心得、体会以及实验过程中出现的问题等。我校一般以班级为单位组织教学,由于学生人数一般超过50人,一般安排两名实验指导教师同时指导实验,从而保证实验教学质量。

对于设计性和综合性实验,主要考核的措施为首先教师组织学生进行答辩,进行自评;其次教师组织小组之间进行互相评价、打分;最后,教师根据学生的工程实现程度,文档的撰写质量,单元测试完成质量进行和团队合作水平考核评分。最终设计性和综合性实验按照三个考核分数进行加权计算总评实验成绩。

2.5 数据结构实验教学的处理(A)阶段

《数据结构》实验教学处理(A)阶段的主要任务是对实验教学进行总结和反馈。首先,学生通过总结在验证性实验时老师给出的考核结果和评价,改进自己在算法分析和程序设计过程中的不足,然后将成功的经验和错误的教训纳入到设计性、综合性实验或者下一次“PDCA”循环中;其次,学生通过总结设计性实验和综合性实验中的经验和教训(主要是小组评议结论和指导教师的评价结论),提高自己的团队合作意识、文档撰写质量、算法分析和设计能力和解决实际问题的能力。图2为《数据结构》实践教学PDCA循环图。

图2 《数据结构》实践教学PDCA循环图

随着“PDCA”循环的结束,每个学生自身的能力和水平都得到了提高,为后面章节的实验教学能够取得好的效果奠定了基础,也为后续内容实验的“PDCA”循环教学更完善、更全面提供了基础和保障。

3 结语

作者基于PDCA理论连续二年对计算机专业班级进行《数据结构》实践教学改革和实践。学生对采用这个实践教学改革方式的评价较好,具体如下:验证性实验选题能够刺激学生的学习兴趣,绝大部分题目能够通过努力独立完成,提高了积极性,畏难情绪大大减少;通过验证性实验的经验积累和知识储备,循序渐进,能够融入团队完成设计性和综合性实验选题,学习效果良好;实验强调真正意义上的动手能力的培养,容易将所学的理论和实际项目开发相结合; 这种学习方式占用时间虽然较多了,但是能学到很多知识,最大的收获就是编程的积极性得到极大提高,收获很大。

实践证明,采用这种教学方法,学生的成绩确实得到很大提升,表1是近三届《数据结构》成绩对比表。通过对比,学生成绩均有较大幅度提升,不及格学生的比例逐步下降,说明新的教学方式在应用型人才培养上取得了良好的教学效果,也为今后《数据结构》等软件开发类课程的教学提供了一种可以借鉴的参考。

表1 近三届《数据结构》成绩对比表

[1] 余艳,刘燕丽,李琳娜.数据结构实践教学内容的分析与思考[J].实验技术与管理,2014,31:4.

[2] 刘越畅,钟秀玉,钟治初,陈世基. 数据结构课程工程化实验教学的探索和实践[J].实验室研究与探索,2012,31:8.

[3] 储昭辉,牛欣,徐立祥,孙梅兰,徐丽娟. 应用型本科高校信息与计算科学专业实践教学体系构建与创新[J].合肥学院学报(自然科学版),2015,25:1.

[4] 喻梅,李晓红,王文俊,王庆节,徐超. 数据结构课程教学改革探索[J].实验室研究与探索,2014,33:12.

[5] 邓德学,徐新瑞. PDCA视角下工程造价专业应用型人才培养模式的研究[J].科学管理研究,2010,21.

责任编辑:刘海涛

G642

A

1673-1794(2016)05-0114-03

王精明,滁州学院计算机与信息工程学院副教授,工学博士;李君燕,滁州学院图书馆(安徽 滁州 239000)。

安徽省高校教学研究重点项目,滁州学院教学研究重点项目:地方应用型本科高校工科类专业实践能力考核标准研究(2015jyxm358,2015jyz001)

2016-04-12

猜你喜欢

数据结构实验教学考核
数据结构线上线下混合教学模式探讨
小议初中化学演示实验教学
电容器的实验教学
内部考核
对初中化学实验教学的认识和体会
创新完善机制 做实做优考核
几何体在高中数学实验教学中的应用
公立医院 如何考核?
“翻转课堂”教学模式的探讨——以《数据结构》课程教学为例
高职高专数据结构教学改革探讨