项目驱动式教学在软件技术专业教学中的应用探讨
2013-08-15卜晨月
■卜晨月
传统软件人才培养模式下的学生实践应用能力薄弱,而项目驱动教学法是以项目为切入点,通过培养学生学习兴趣,旨在培养学生自主学习、分析、解决问题的能力。通过精选专业基础内容来设计项目,突出重点,提高学生的程序设计能力,以实践课程提高学生的项目开发与管理能力。
1 引言
传统的知识驱动式教学法是采用先理论后实践的方式,大量的时间花在了理论的讲授上。而高职高专类学生的特点是缺乏抽象思维,擅长形象思维,因而导致学生学习积极性不高,不主动学习,逐渐失去学习的兴趣,一旦操作过程中出现挫折就会产生厌学心理。另外,知识驱动教学法是以知识为核心,采用条形化的课程教学,各课程之间的联系不够紧密,很多知识点间是分散的,缺乏贯穿所有知识的主线。学生在学完多门课程后难以建立系统的思想,形成不了体系,也没有太多的锻炼机会来综合运用所学的知识开发实际项目,导致毕业后的学生对软件项目开发工作仅停留在感性的认识上,开发实际项目能力有限,难受用人单位的青睐[1]。
高职院校培养的学生是要求上班就能上岗的应用型人才,如何通过“以不变应万变”来应对社会行业的发展和需求是需要重点研究的。在项目驱动教学法中,让学生完成实际的项目,在实现的过程中感受企业的真正工作流程,从而增强他们的自信心,培养动手能力,提高解决实际问题的能力,实现一走进社会就能直接工作。
软件专业是一个快速发展、知识迅速更新的专业,这个特性决定了按照现行的课程安排去讲授必定会有些滞后。而通过项目驱动的教学方式——项目中需要什么知识,学生有针对性地学习那部分知识,这样可以保证学生学习的知识都是最需要的,又是前沿的。软件项目开发涉及的知识面很广,在3年的时间内不可能细致深入地教授学生太多的知识,这就决定了应该重点培养学生的自我学习和解决问题的能力。学生在学习重点知识的过程中,逐步形成自学的习惯、模式和方法。教师通过点来带动面,使学生在毕业后也能自我学习,获取新的知识。
2 什么是项目驱动式教学
“项目驱动”教学法是一种建立在建构主义教学理论基础上的教学方法,它适用于讲授各类实验性和操作性较强的知识和技能,可以帮助学生明确学习目标,其目的在于培养学生自主学习、分析问题、解决问题的能力。教师根据教学大纲要求,将学生的学习活动与实际的项目或具体问题相结合,以探究问题、解决问题来提高学生的学习兴趣,以合适的课程设计项目为导向,创造真实的学习环境,逐步深入、切合实际、全面地展开教学内容。整个教学过程以工作任务的解决展开,突出知识的应用性,引导学生自主思考。学生由浅到深、由易到难,接受全方位的实践培训。教学过程是教师先提出精选的综合项目,把综合项目分解为一个个子项目,子项目又分解为更小的模块,细化后再分解成一个个案例;学生通过学习案例来掌握知识点,同时通过了解各案例之间的关系来构建全局的观念。
孤立且脱离实际项目背景来讲解知识是枯燥、乏味的,而通过项目来引导出所需的知识点,使学生由被动地接受知识转变为主动地寻求知识。在这个过程中,学生不再把学习当任务,而是根据项目需求来学习,以实际项目为驱动,可提高学生学习的积极性和愉悦性。学生通过在教师的指导下,学习项目中所需的知识点,提高动手能力,通过问题的解决、项目的完成来获得成就感,从而激发其求知的欲望,使其在学习过程中获得快乐,培养其独立探索、勇于开拓的自学能力,提高其解决问题的能力[2]。
3 在教学中的应用
3.1 项目的选择和设计
在教学项目的选择和设计上,要以学生为主导,根据学生的实际水平,照顾学生的兴趣爱好,结合当前的软件技术发展情况来设置项目,覆盖教学知识的点。遵循项目驱动式教学“以项目为主线、教师为主导、学生为主体”的原则,在教学实践过程中要把学生掌握基础知识,提高解决实际问题的能力放在首要位置。需重点关注以下几点[3]。
1)项目的选择要具有吸引力,以便更好地激发学生的学习兴趣。应选择来源于学生身边的、有利于学生掌握技能和获取知识的、学生感兴趣的、有实际意义的项目。如在.net、java和网站开发课程中,可以设计贴近学生生活的学籍管理系统、网上商城系统、局域网聊天系统和高校教学管理平台等。
2)项目的选择和开发要有系统性。由于知识点间和课程间都存在关联,设立的课程项目和课程相对独立的子项目间应注意衔接,能相互关联和包含,前导课程的项目应能为后续课程的项目服务,各子项目能综合成功能完善的大项目。例如,数据库课程中设计的数据库项目和网页设计课中设计的静态页面,应均能使用在动态网站开发课程的项目中。让学生完成的项目和用到的知识形成一个相对完整的系统,只有这样才能保证更好地实现最终的教学目标。
3)项目的选择和开发要有现实意义,体现实用性。以现实应用为基础,不能虚构和美化。因此,在设计项目时不能只为提高学生对各知识要点的掌握和理解程度,而把不相关的知识点强行加入到项目中来,不考虑项目能否在实际中应用、是否合理。
4)项目的选择和开发要有目标要求和针对性。教师要在学习总体目标的框架上,把总目标细分成一个个可以量化和具体实施的小目标,并把每一个学习单元的内容细化为一个个容易掌握的“子项目”,通过完成这些小的“子项目”来体现总的学习目标。
3.2 教师引领
在项目驱动式教学过程中,教师的引导十分重要。教师要改变过去那种“单面”的知识传授方式,在教学过程中充当顾问和协调者,激发学生的学习积极性,引导学生自主学习和操作,养成自我思考和主动学习的习惯,帮助学生按确定的计划完成任务,从而使学生体会到一个项目从开始计划到最后完成中间所经历的步骤和遇到的困难,加深学生对书本理论知识的认知并提高学生解决实际问题的能力。项目驱动式教学强调学生能够运用新学习的知识、技能,解决过去从未遇到过的实际问题。因此,在项目驱动式教学过程中,教师应努力为学生的自主性发挥创设一定的学习氛围和工作环境。如在JSP网站开发课程中,学生通过具体项目的学习掌握MVC的开发模式,教师给定项目,学生应能使用该模式进行设计开发,从而解决实际问题。
在项目实施过程中,教师要充分认识到答疑解惑的重要性,既不能全部代劳,不给学生自我思考、自我学习的机会;又不能对学生的提问不予回答,使其陷入问题中不能出来。教师要对学生进行点拨,告知如何去做,解决这个问题应掌握哪些知识点,不能让学生养成一遇到问题,不经过自己思考,就向教师求助的坏习惯。
教师在教学中应加强课堂或阶段小结和知识点的交流或回顾,使得学习能力差的学生或操作有疏漏的学生能通过教师的总结和回顾,跟上教学进度,全面掌握知识点,达到教学目标,促进共同进步。
在项目验收过程中,要定期检查、监督学生的任务完成情况。对学生所完成的任务及时提供有针对性的反馈信息,可以帮助学生了解自己的学习情况,及时调整自己的学习计划、学习方法,也可以防止学生偷懒或抄袭。教师不仅要对项目的完成情况进行检查,更要对学生掌握知识点的情况进行检查。学生要知其然,更要知其所以然。通过项目的实施来掌握知识点后,学生再遇到类似的问题,就可以举一反三了。
3.3 实施中注意的问题
为了更好地达到教学效果,在应用项目驱动法进行软件开发教学中应注意做好以下几点[4]。
1)重视项目的完成,但不能忽略基础知识的掌握。注意吸取传统教学法的长处,把总目标细分成一个个小目标,每个小目标体现在项目中的小模块上,学生应该掌握每个小目标中所涉及的基础知识点,使学生知其然,更知其所以然,从而为学生建构一个系统的、全面的知识框架。
2)强调学生学习的主体性,不是减轻教师的任务。其实教师的职责不但没有减轻,反而加重了。因为教师不但要对任教科目融会贯通,随时回答各类学生提出的各种问题,而且还应熟悉前后课程内容,为学生创设学习的情境,培养协作学习的气氛等。
3)选择合适的教材。由于现行的教材基本根据学科知识系统进行编写,教师实施项目教学法时,不能够完全按照教材一章一节地讲授,要求教师在设计教学时,必须重点选好示范项目,紧密结合教材内容。教师可以把教材作为学习的“参考书”,有条件的可以适当编写讲义,甚至编写教材。
4 结束语
项目驱动教学法在软件技术专业教学中的应用现已比较流行,在大多数高职院校中已经展开。通过完成实际软件开发项目来实现学生对知识的掌握,提高了学生学习的积极性和主动性,能有效地提高学生的软件设计开发和代码编写能力。其中,项目的选择和开发是重点,项目选择是否合适决定教学效果优劣。另外应注意在教学实施过程中出现的问题,及时解决。实践证明,项目驱动教学法是一种适合于计算机软件技术专业教学的方法,是现有教学方法的有效补充和改进,是一种值得推广的好教学方法。
[1]唐英.项目递进驱动教学法在《C语言程序设计》中的应用[J].职教探索与研究,2007(4):32-34.
[2]忭琛.项目驱动教学法在计算机专业教学中的应用[J].乌鲁木齐职业大学学报,2008(1):78-79.
[3]李文才.实施项目驱动式一体化教学改革,培养高技能应用型人才[J].陕西教育,2008(2):33.
[4]王槐彬,许兴鹍.项目驱动式教学在“数据库基础与应用”课程中的应用与实践[J].职校论坛,2008(4):244.