基于PDCA理论的《程序设计基础》实践教学的探索和实践
2016-02-08王精明陈立钢李君燕
王精明陈立钢李君燕
(1滁州学院,安徽 滁州 239000)
(2巢湖学院,安徽 巢湖 238000)
基于PDCA理论的《程序设计基础》实践教学的探索和实践
王精明1陈立钢2李君燕1
(1滁州学院,安徽 滁州 239000)
(2巢湖学院,安徽 巢湖 238000)
《程序设计基础》是计算机科学与技术、网络工程、物联网工程专业的一门专业基础课程,是培养学生程序设计基本方法和技能的一门课程,在专业人才培养方案中占有极其重要的地位,其教学质量的好坏直接影响学生对专业的兴趣和后续专业课程的学习。为达到地方高校应用型人才的培养目标,在分析实践教学过程中存在的主要问题的基础上,将PDCA循环理论应用于本课程的实践教学过程中,锻炼和提高了学生自主学习的能力、团队协作的能力和创新能力。两年的教学改革实践和教学结果表明,该教学方式在应用型人才培养上取得了良好的教学效果,也为今后程序设计等软件开发类课程的教学提供了一种可以借鉴的参考。
PDCA循环理论;实践教学;程序设计;教学效果
《程序设计基础》是软件工程、计算机科学与技术、物联网工程、网络工程等专业一门核心专业基础课,是程序设计的重要理论和实践基础。主要包括程序与程序设计语言、数据类型与基本操作、分支结构、循环结构、函数、数组、指针和结构体和文件程序设计,培养学生问题求解和语言应用的能力、实践编程能力和阅读程序能力,为学习后续数据结构、算法设计与分析等课程奠定坚实的基础。因此,《程序设计基础》在专业课程体系中具有重要的作用,《程序设计基础》课程的教学效果的好坏对专业的学生的专业学习影响深远[1-2]。
1 《程序设计基础》实践教学中存在的问题
通过分析《程序设计基础》实践教学过程,收集同行教师、学生座谈会和相关课程授课教师的建议和意见,发现学生在学习《程序设计基础》课程的过程中存在以下较为普遍问题,这些问题困扰着学生,极大地影响了该课程的教学和学习效果,造成不能达到该课程预期教学目标的结果。
1.1 编写程序解决问题信心不够
通过观察发现不少学生在在解决实际问题,尤其是编写程序解决实际问题时缺乏独立解决问题的能力和勇气。一种情况是学生在程序编译过程中一旦看到几个甚至几十个语法错误时,立即变得无所适从、不知所措,完全被错误的数量吓倒,产生畏难情绪。实际情况是这类语法错误只要学生稍微有点耐心和基本英语知识,结合编程开发环境给出的提示是完全可以独立解决的,但是学生绝大多数情况是立即求助于辅导教师,是缺乏信心的直接表现。另一种情况是逻辑错误,部分学生程序编译没有错误,顺利通过,但是运行结果不对,这就是程序出现逻辑错误,但是学生对这样的错误完全没有信心去调试和排除,要么不了了之,要么立即求助于辅导老师,潜意识里认为自己没有能力解决该逻辑问题。
1.2 课程内容灵活度大
《程序设计基础》课程概念内容多,理论性强,灵活度很大。由于学生大多数高中阶段没有接触过程序设计方面的知识,不能也不易理解从计算机的角度去思考和处理问题。面对《程序设计基础》课程中涉及到的众多概念、枯燥代码,相当一部分学生的体会是该课程枯燥没有趣味,难以跟上授课教师的思维和推理分析过程,导致学习该课程的主动性、积极性和创造性很差,没有成就感[3]。
1.3 学习过程检查和考核不足
该课程传统的检查考核学习效果的方式主要是期末理论考试,平时对学生学习过程的检查和考核很少。虽然课程教学中有布置作业和课程实验,但是大学新生由于刚刚入学,对相对于高中宽松的大学环境心理容易放松,疏于进行自我检查和考核,期末只能是突击考试,凭记忆课本知识,不能真正牢固掌握知识点。只要考试题目稍微变化,就无从下手,实际动手能力和学习效果很差,对学习的积极性和后续课程的学习造成很大影响。
2 基于“PDCA”理论的《程序设计基础》实践教学改革和实践
2.1 “PDCA”循环
“PDCA”循环理论是美国戴明博士提出的一种实施全面质量管理所应遵循的工作方法,也称之为戴明环[4-5]。“PDCA”是英语单词Plan、Do、Check和Action的首字母缩写而成,分别是计划、实施、检查和处理。“PDCA”循环是按照计划(P)→实施(D)→检查(C)→处理(A)顺序来对质量进行管理,并且循环不断地往下进行,上一个循环过程中未解决或新产生的问题会进入下一个循环。如此循环往复,使得每次循环达到一个新的台阶和水平,直到最终达到目标,如图1所示。
图1PDCA循环理论示意图
2.2 《程序设计基础》实践教学的计划(P)阶段
《程序设计基础》实践教学的计划(P)阶段主要任务是制定实验教学大纲。实验教学大纲需要明确各实验项目的实验名称、实验目的、实验内容、实验环境、实验步骤和课后实验等。一个好的《程序设计基础》实验教学大纲不仅是教师的实践教学的指导性文件,而且应有利于学生建立起程序设计的信心,并真正感受到逐渐解决问题与不断进步的成就感,循序渐进地培养学生程序设计的能力。
《程序设计基础》实验教学使用的是自编的实验讲义和资料,将实验分为验证性、设计性和综合性实验,其难度系数和对所学知识的综合应用程度逐渐递增。其中,验证性实验主要目的是训练学生对主教材理论内容的理解,程序开发和设计能力和工具的运用;设计性和综合性实验主要训练学生项目开发能力、团队合作能力和协作精神以及基本的软件工程思想。
2.3 《程序设计基础》实践教学的实施(D)阶段
对于验证性实验,在《程序设计基础》实验教学的组织上要求每生一组独立编程完成。过程主要分为三阶段:①在理论课讲解绪论部时,其仅涉及基本概念和术语,没有对程序设计内容本身进行实质讲解,因此该阶段的实验内容以熟悉VC++编程环境为主;②每周两学时的实验课主要用于学生将主教材中的重要例题、课后习题和自编实验讲义预留作业进行编程实现,并引导学生对编写的代码进行单元测试,主要考察学生基本知识的掌握程度和基本编程能力;③在完成经过单元测试的程序后,撰写实验报告。验证性实验内容主要包括顺序程序设计、分支程序设计、循环程序设计、数组程序设计、指针程序设计和文件的基本操作。
对于设计性和综合性实验,在《程序设计基础》实验教学的组织上主要由教师事先精心设计好实验选题,由学生自由组建团队,3-4人为一组,团队合作完成设计性和综合性实验程序设计、实现、文档撰写和汇报等工作。设计性和综合性实验选题一般具有一定的实用性,如学生信息管理系统、图书管理信息系统等。
2.4 《程序设计基础》教学的检查(C)阶段
《程序设计基础》考核传统方式主偏理论测试,对实验教学的监管和考核重视程度不够,导致动手能力没有得到有效锻炼和提高,因此一套好的切实可行的实践检查和考核方法和标准值得探索和研究。
我校对于验证性实验的考核主要考核环节为程序演示、程序改进和实验报告三个环节。程序演示环节由学生演示自己的程序,教师检查学生程序是否达到预期要求;程序改进环节教师根据学生的程序运行状况向学生提出改进措施,学生按照要求完成对程序的改进;实验报告主要观测学生实验报告是否认真,对本次实验的心得、体会以及实验过程中出现的问题等。《程序设计基础》课程一般以班级为单位组织教学,由于学生人数一般超过50人,一般安排两名实验指导教师同时指导实验,从而保证实验教学质量。
对于设计性和综合性实验,主要考核的措施为学生首先进行自评;教师组织小组之间进行互评、打分;教师根据学生的程序实现质量,文档的撰写质量,单元测试完成质量和团队合作水平综合考核评分。最后设计性和综合性实验按照三个考核分数进行加权计算总评实验成绩。
2.5 《程序设计基础》实验教学的处理(A)阶段
《程序设计基础》实验教学处理(A)阶段的主要任务是对实验教学进行总结和反馈。首先,学生总结在验证性实验过程中教师给出的考核结果和评价,改进自己程序设计过程中的不足,将成功的经验和错误的教训纳入到设计性、综合性实验或者下一次“PDCA”循环中;其次,学生通过总结设计性实验和综合性实验中的经验和教训(主要是小组评议结论和指导教师的评价),提高自己的团队协作意识、文档撰写质量、算法分析和设计能力和解决实际问题的能力。图2为《程序设计基础》实践教学PDCA循环图。
随着“PDCA”循环的结束,每个学生自身能力和水平都得到了提高,为后续课程教学奠定了良好的基础,也为后续内容实验的“PDCA”循环教学更完善、更全面提供了基础和保障[6-7]。
3 对比分析
PDCA循环理论连续三届应用于专业学生进行《程序设计基础》的实践教学改革和实践。通过开展学生座谈会和调查问卷,学生对实施教学改革后的教学效果评价明显比使用传统教学方法要好,对比分析如下。
3.1 畏难情绪有效降低
由于PDCA循环理论采取循序渐进的实践教学设计,适量和难度系数较小的验证性实验选题极大地刺激了学生的学习兴趣,绝大部分题目每个学生基本能够通过个人努力独立完成,有效地降低了学生的畏难情绪,提高了学生学习主动性和积极性。
3.2 团队协作能力增强
学生通过循序渐进的验证性实验的经验积累和知识储备,克服了畏难情绪,对于实践教学设计的设计性和综合性实验,均能够积极组建或融入团队,相互间协同合作,主动完成任务,学习效果良好。
3.3 实践动手能力增强
实验强调真正意义上的动手能力的培养,容易将所学的理论和实际项目开发相结合。也有学生提出这种学习方式占用时间较多了,但是能切实提高自己的实践动手能力,最大的收获就是编程的积极性得到极大提高,不再畏惧编程。
4 结论
实践证明,采用应用PDCA循环理论的教学方法,学生编程能力和综合成绩得到很大提升,表1是近三届学生《程序设计基础》课程的成绩对比表和跟踪学生参加大学期间省级以上程序设计大赛人数统计表。通过对比,学生程序设计的能力均有较大幅度提升,不及格学生的比例逐步下降,敢于参加程序设计大赛的人数比例在增加,说明新的教学方式在应用型人才培养上取得了良好的教学效果,也为今后《程序设计基础》等软件开发类课程的教学提供了一种可以借鉴的参考。
表1 近三届《程序设计基础》成绩对比表
[1]吴蕾,钦明皖,杨勇.基于计算思维能力培养的程序设计基础课程教学新模式[J].计算机教育,2015,(7):1-3.
[2]郭艳燕,童向荣,孙雪姣,等.程序设计基础与数据结构两门课程的教学衔接[J].计算机教育,2014,(10):47-50.
[3]丁长松,马华.程序设计基础课程实验教学的改革与实践[J].高教学刊,2016,(5):237-239.
[4]邓德学,徐新瑞.PDCA视角下工程造价专业应用型人才培养模式的研究[J].科技管理研究,2010,(21):146-147.
[5]廖春华,马骁,李永强.本科人才培养质量标准研制路径探析——基于PDCA循环理论的视角[J].教育发展研究,2014,(21):23-29.
[6]刘雪兰,徐冬寅.PDCA循环理论在农业物联网人才能力培养中的应用[J].农村发展,2015,(12):16-19.
[7]吴海瑛.“PDCA”工程造价专业人才培养质量评价体系研究[J].价值工程,2014,(1):266-267.
AN EXPLORATION AND PRACTICE ON THE PRACTICAL TEACHING OF FUNDAMENTALS OF PROGRAMMING BASED ON PDCA THEORY
WANG Jing-ming1CHEN Li-gang2LI Jun-yan1
(1 Chuzhou University,Chuzhou Anhui 239000)
(2 Chaohu College,Chaohu Anhui 238000)
As one of the important professional courses in computer science and technology major,network engineering major, and internet of things major,Fundamentals of Programming is a course cultivating students’ basic methods and skills of programming and playing a very important role in talents cultivation plan.Its teaching quality directly affects the students' interest and the study of the following courses.In order to achieve the teaching goal of applied talents in college,the PDCA cycle principle is applied in practical teaching of the curriculum to improve the students' autonomous learning ability,team cooperation ability and innovation ability on the basis of the analysis of the problems existing in the practical teaching of Fundamentals of Programming.Through two years’practice of teaching reform,the teaching results shows that the teaching method has a good effect on the cultivation of applied talents and provides a reference for future teaching like programming and other software development courses.
PDCA Cycle Principle;Experimental Teaching;Programming;Teaching effect
G642.0
A
1672-2868(2016)06-0115-04
责任编辑、校对:李 晓
2016-10-05
安徽省高校教学研究重点项目(项目编号:2015jyxm358);滁州学院教学研究重点项目(项目编号:2015jyz001);巢湖学院校级教学研究项目(项目编号:ch13kcjgxm06)
王精明(1979-),男,安徽岳西人。滁州学院计算机与信息工程学院,副教授,博士。研究领域:计算机应用技术。