摘要:任务驱动教学法是一种建立在建构主义教学理论基础上的教学法。文章从分析任务驱动教学法的优势入手,探讨了如何有效地把任务驱动教学法运用于职业学校计算机程序设计教学当中,从而增强计算机程序设计的教学实效,提高职业学校学生的职业技能。
关键词:任务驱动教学法;任务驱动;程序设计;驱动教学法
1 引言
任务驱动教学法是一种建立在建构主义学习理论基础上的教学方法,是指教师将教学内容设计成一个或多个具体的任务,力求以任务驱动,以某个实例为先导,提出问题,引导学生思考,让学生通过学和做,掌握教学内容,实现教学目标,培养学生分析问题和解决问题的能力。任务驱动教学法提倡教师指导下的、以学生为中心的学习。在整个教学过程中教师起组织者、指导者、帮助者和促进者的作用,利用情境、协作、会话等学习环境要素充分发挥学生的主动性、积极性和创造性,最终达到使学生有效地实现对当前所学知识的意义建构的目的。http://www.dxlww.net代写论文网
任务驱动教学法的主要特点是“任务驱动,注重实践”。它很适合职业学校计算机课程比如程序设计语言的教学,因为该类课程大多是实践性很强的课程,要求学生既要学好理论知识,又要掌握实际操作技能。同时由于这些课程知识内容更新很快,要求学生必须具有一定的自主学习能力与独立分析问题、解决问题能力,才能适应信息时代与学科知识发展的特点。
2 任务驱动教学法的优势
(1)任务与生活实际相结合,有利于激发学生求知欲。任务驱动教学法从问题入手,教师根据不同的教学内容设计教学任务,要求学生结合实际做出反应,有利于激起学生的求知欲,调动学生的学习自觉性和主动性。在《数据库》语言程序设计教学中,照着书本的例子对所学内容进行验证,学生往往觉得很无聊,教师如果能在课前布置一些有代表性的任务:如《学生成绩管理系统》、《运动会管理系统》等来组织基本语法、语句和程序设计技巧的学习,学生便会因有明确的目标而积极主动地探索实践。
(2)任务注重理论联系实际,有利于深化理论学习。在任务驱动教学中,教师布置一些与实际生活结合紧密的任务,学生完成任务的同时,一方面不断深化理论学习,不断形成新的理论视野,增长分析的技巧;另一方面不断思考理论如何运用于实际,从而及时有效地促进了理论向实践的转化,真正达到理论与实践的结合。
(3)注重教学过程中的交流,有利于学生能力的培养。任务驱动教学法是一种进行“行为导向”的现代教学方法。在这种教学法中,任务取材于生活,学生对任务有直接感受,愿意主动参与学习活动,师生能够相互交流,学生能够通过反复的练习,形成一定的学习能力、社会能力、职业能力和创新意识。因此,在这样的教学中,学生真正被摆到“学习主体”的位置上,他们不会被要求强记内容,但必须开动脑筋、苦苦思考,如此反复训练,学生分析问题、解决问题的能力必然有所提高。
3 程序设计中实施任务驱动教学的基本策略
3.1 实施任务驱动教学的基本流程
任务驱动教学虽然没有一成不变的模式,但实施流程至少包含以下三个方面:设计任务-实施任务-效果总结。
3.1.1设计任务
设计任务是实施“任务驱动”教学法的前提和基础。教师要根据教学进度和教学要求设计任务,把所要学习的知识巧妙地隐含在一个个任务当中,使学生在完成任务的过程中达到理解学科知识、提高技能的目的。设计任务时要注意以下四个方面:一是任务必须典型。任务要能涵盖课程的绝大部分知识点。二是任务要具有实践性。要求设计的教学任务要和现实相吻合,能够被学生理解。三是任务必须具有针对性。教师应该针对学生的接受能力来选择或设计任务。四是任务必须具有系统性。在整个课程教学过程中用到的大部分任务之间应该相互联系,前后连贯,并要由易到难地编排。
在数据库教学中,一般要求学生能根据一个实际需求完成一个数据库系统的设计与实现,它强调从需求分析、功能划分、数据整理、系统设计到系统实现全过程的参与。一个数据库系统是一个大的任务,它可以分成若干个小的任务,随着学习进程分步骤完成。在设计时具体到任务的需求是用程序实现哪种功能,可以根据学生的认知水平来决定,当然任务的功能不能过于简单。
3.1.2 实施任务
实施任务驱动教学旨以任务为基础分析问题,解决问题。要想成功地实施任务,教师关键要做好启发引导工作,让学生综合运用所学的知识积极地独立思考,大胆地探索。实际上,一个数据库管理系统设计与实现的过程就是不断分解任务的过程。例如,设计《学生学籍管理系统》,教师可以引导学生通过联系实际不断地提出这样的问题:学籍管理系统需要管理学生的成绩,对成绩的处理可能涉及到哪些方面?另外,班级的人数有变化时也得体现,比如学生减少或增加等;在使用管理系统时,还会涉及到查询、修改、删除、打印等功能;如果该系统规定专人负责,还需要规定用户名和登录密码,体现保密性等等。随着分析的深入细致,使整个系统功能不断完善,结构不断清晰。这实际上是将任务的内容拆解为一个个子任务,逐步地展示、布置给学生。在此过程中,教师可以给出一些管理系统的实例以供参考,让学生产生感性认识,知道这些任务是可以通过学习完成的,这样可以逐步消除对完成任务的畏惧感,树立信心,使教学过程得以顺利进行。
3.1.3 效果总结
任务实施效果总结指教师与学生共同反思任务的解决过程,通过相互评价或自我评价,教师及时并做适当点评,帮助学生作归纳与总结。总结与评价阶段既是学生能力提高的重要阶段,又是培养学生良好的自信心与成就感的绝好时机。当学生完成系统任务或其中的子任务时,就已经建立了自己的认知结构,但还不完善,这时教师需要通过对其学习成果进行展示、交流、讨论、分析、点评,及时对学生的学习情况做出反馈和评价。另外,学生每独立完成一项任务,都会获得一定的成就感,这时教师的及时表扬与鼓励,可以刺激学习热情与学习兴趣,增强自信,使其在不断地建构与完善自己的知识结构的同时,也提高自我认识和对自身的评价能力,让学生在一种良好的心理状态下不断学习、进步。
3.2 实施任务驱动教学的方法及策略
在程序设计教学中实施任务驱动教学基本上分为两类方法:一是讲解法,二是分析法。讲解法主要用于课堂教学中针对那些理论性很强的知识,放弃单纯的逻辑讲授而直接用任务讲解来教学,这里主要强调教师的讲解作用。分析法也叫讨论法,这里主要强调学生的参与性,主要培养学生创造性思维和解决问题的能力,通过讨论和分析任务来培养学生解决问题的思维方法和能力。http://www.dxlww.net代写论文网
对于程序设计任务而言,由于它不可能包含程序设计语言课程的全部内容,特别是一些原理性、概念性相对比较强的内容,虽然任务驱动教学在实用性和应用性方面有很大的优势,但在知识的系统性、连贯性上不如传统教学有优势。所以,要根据课程内容的性质寻找这两方面的接触点和相互之间的联系,将传统教学与任务驱动教学有机地结合起来。同时,教师在实施任务驱动教学的过程中要不断地进行反思,改进教学策略来适应不断变化的课堂和学生的需求,整个实施过程如图1所示。
图1 任务驱动教学的实施过程
4 应用案例
为了更好地说明任务驱动教学在程序设计教学中如何运用,以下通过一个任务在Visual Foxpro 6.0程序设计教学中的运用来进行简要说明。
4.1 设计任务
在任务的选择上,遵循设计任务的原则,选择一个学生比较容易理解的《学生学籍管理系统》,该任务在学校管理中运用广泛,比较有实用性,在设计上能体现软件开发的基本思路,学生在学校学习的过程中也有直观的经验,并且在完成基本的管理系统之后,还可在此基础上进行扩充,如开发成《学校综合信息管理系统》等。
4.2 实施任务
1) 对《学生学籍管理系统》功能分析
在任务实施前,首先介绍程序设计的开发流程(这部分与具体的程序设计语言无关,实施的顺序可以与4.2.2互换)。如图2所示。
在熟悉程序设计开发流程的基础上,结合实际对《学生学籍管理系统》任务的功能进行讨论分析,形成《学生学籍管理系统》的子任务(虚线部分为以后扩展的任务)如图3所示。
图2 程序设计的开发流程
图3 《学生学籍管理系统》的功能模块
对任务功能进行讨论分析,目的是为了让学生对程序设计有一个整体的概念,明白任务的主要功能,让学生知道程序中要做些什么事情,要用到什么知识,增强学生学习的目的性,为以后的学习探究作好心理准备。
2)对《数据库》程序设计语言的整体介绍
在任务实施前,要运用传统的讲授法对Visual Foxpro 6.0语言的基本特征、语法结构、程序编译作系统的介绍,对于重要的概念,如窗体、控件、表单、库等要进行专门的讲解,让学生对这门语言有一个总体认识和总体把握,让学生在学习当中以及自己在实践操作中去慢慢接受和理解。
3)分析和设计各个子任务
第一步当然是数据库的建立,首先要引导学生思考在数据库中要保存哪些数据,是建立一个综合的数据库或是建立多个小的专项数据库,通过不同数据库中数据引用来交换数据。可以引导学生对比建立一个综合数据库和多个小的专项数据库在程序运行中的效率和设计的复杂性,以分析不同形式的数据库对程序设计的影响。在Visual Foxpro 6.0中建立数据库的方法是简单的,可以引导学生自主去查资料、书籍等。
数据库建立完后,就是对数据库中数据的调用、分析,以实现各模块功能。在这个过程中,可以让学生以小组为单位进行讨论,提出设计思路、方法。在这期间老师可以对各功能模块在设计中要用到的Visual Foxpro 6.0的一些相关知识进行简要的回顾,特别是对具体的界面设计要在多媒体教室里进行,教师可以作一些演示和介绍,至于窗体上各个控件的使用,可以让学生自己去尝试。对于各模块具体功能的实现,要引导学生自己去分析、设计,充分发挥学生的想象力和创造性,培养学生的自主探究能力。
在基本完成系统任务后,就可以对任务进行扩展,可以向学生提出这样的问题:在进入系统之前增加一级系统登录、在学生信息管理和学生成绩管理模块中各增加一个备份功能该怎么做?在学生的基本信息建立之后,如果我们想与不同的管理部门进行信息共享、同步编辑该如何实现?提出这些问题之后,教师可以组织学生分组讨论,在涉及到比较复杂的问题时,教师可以做一些分析和讲解,最后由学生自己去实现这些功能。
在任务讲解分析的过程中,学生就可以自己亲自动手边学习边进行任务的开发,并在实践的过程中进行探索、分析和创新,以真正实现教师引导下的自主学习和创新学习。
4.3 效果总结
任务实施效果的总结主要是对教学的效果进行评价,总结的时机在各子任务实施结束之后和整个系统任务实施完成之后。对学生而言主要从学生的掌握程度、理解程度和是否能独立地开发类似的软件以及实际动手能力等指标来进行评价;对教师而言主要从任务的选取,课堂实施任务以及教学艺术等方面进行评价。在综合评价各个因素的基础上,不断调整任务驱动教学方法和手段,不断改进实施的策略,提高任务驱动教学应用水平。
5 任务驱动教学中应注意的问题
5.1 教师角色的转换
任务驱动教学以学生的积极参与为前提,以教师的有效组织为保证,对教师提出了更高的要求,教师应是“双师型”的教师,老师的角色由传统的教学主导者转变为教学活动的引导者或主持人,在教学过程中,教师以咨询员、伙伴、朋友等角色出现在学生中,教学方法由注重“教法”转变为注重“学法”。为此,要完成教学任务,教师要付出更多的心血。
5.2 任务设计与实施的合理性
设计任务最重要的原则就是可实践性,以保证学生可操作,并有收获。任务的实施,要采用自下而上,由易到难,逐步完善的原则进行。在实施的过程中,一定要强调整体的概念,所有的子任务都是为系统为整个任务在服务,不是独立的,在教学中每个任务的实现尽管是单个、分步聚完成的,但在实施的过程中一定要让学生建立起系统、全局的概念。http://www.dxlww.net代写论文网
6 结束语
教学实践表明,在程序设计教学中实施任务驱动教学,不仅能够充分调动学生学习的积极性,而且能够提高学生实际动手能力和探索、合作、创新能力。所以在程序设计教学中,合理、有效地使用任务驱动教学将会很好地解决传统教学中遇到的问题。
参考文献
[1]“任务驱动”模式在信息技术教学中的应用
[2]夏邦贵,何海宾.Visual FoxPro 6.0数据库开发经典实例精解[M].机械工业出版社,2006年01月
联系QQ:904272800
联系信箱:904272800@qq.com