基于项目驱动的XML课程教学方案设计
2011-12-31陈荣鑫江边
计算机教育 2011年22期
摘 要:XML课程涉及的知识点繁多,技术新颖,且应用性强。传统XML教学方案一般通过独立案例逐步对各个知识点进行讲授,实践环节的设计简单而分散,使得学生难以形成完整的知识体系,影响了他们对新知识的运用。本文给出基于项目驱动的XML课程教学方案,以项目贯穿整个课程教学过程,将XML相关各技术要点有机联系和统一起来,在知识讲授的同时着重于学生技能的培养,以提高学生综合解决实际问题的能力。
关键词:XML课程;项目驱动;教学方案设计
本科高校开设的XML课程[1-2] 是一门面向应用的课程,一般涵盖XML应用和XML程序设计技术。XML本身是由各种适用于解决特定问题的技术所组成的庞大技术体系,该课程所涉及的知识点多,针对的应用面广。传统的教学方案中,对教学内容的组织一般按各种技术点进行划分,每种知识点先解释基本概念,介绍技术原理,再举应用实例。这种方法完全由教师主宰教学进程,仅采用讲授法进行知识灌输,学生往往难于接受繁杂的新知识;而仅凭简单应用实例来讲解知识和技术,学生完成学习后,难于应对实际开发问题。
项目驱动法在教学过程中以项目的设计和实施为主线,把知识点融入项目执行的各个环节中,随着项目的进展完成各项教学任务。项目驱动的学习是一种基于建构主义学习理论的探究式学习模式[3]。建构主义的学习观强调学习的本质是学习者积极主动地进行知识意义的建构过程[4]。教师指定应用场景,提出项目需求,引导学生在已有的基础上积极建构新的知识体系;学生则是项目的主动参与者,需要运用已有知识和技能,结合新知识去尝试自主解决问题。该教学模式通过学生参与和师生互动,充分激发学生的
学习积极性,把新知识融入已有的知识框架中,并用于解决实际问题。
项目驱动的教学方法近年来得到大量关注,已在不少应用型课程的教学中得到了研究和实践[5-7]。由于不同课程存在特殊性,教学方案的可操作性很大程度与课程内容相关。针对XML课程的特点和传统教3ea1d154a859ea7e85f63145e31ab61702459c861bdbce89aa4e1321e0677852学方案的不足,本文提出基于项目驱动的教学方案。
1 教学方案概览
XML课程的项目驱动教学方案的基本框架如图1所示。教学过程中的基本角色——教师和学生通过项目这个媒介完成基本教学任务。为了使课程知识点的与项目实施紧密结合,教师需要深刻领会XML知识点的分布和联系情况,从而合理设计项目框架。一方面需要组织教学用项目,便于知识点的介绍和技术的讲解,以及合理引导学生展开学习;另一方面,需要指定能与教学项目同步的实践用项目,让学生应用所学的新技能,独立完成设计任务。由于项目教学过程中,师生之间需要较多互动,因此教师需要随时观察学生的学习情况,积极听取学生的反馈信息,及时调整教学进度,从而保证整个课程的教学效果。
基金项目:福建省自然科学基金项目(2008J04005)。
作者简介:陈荣鑫,男,讲师,研究方向为软件自动化、数据库技术;江边,女,硕士研究生,研究方向为高等教育管理。
本门课程安排在第三学年,计算机专业本科三年级学生一般都学过高级语言程序设计和数据库技术这两门重要的先修课程,掌握了相关背景知识和基本编程技术。由于进行过课程设计,学生曾经接受过中小型项目开发的训练,具备基本的开发经验。笔者所在学校的多数学生还学习了Web程序设计这门选修课,学生所具备的这些基本素质和训练都为项目教学的顺利开展提供了基本条件。此外,从事该门课程教学工作的教师大多具备有企业级项目开发经历,承担或参与过各类横向项目,项目实践经验较为丰富,师资情况为项目教学的成功进行提供重要保障。
2 教学内容组织
教学内容组织是开展教学工作的前提。首先需要根据大纲规定的教学知识点,对教学内容合理分析和划分,使之易于融入教学项目实施的过程中。其次对各个有内在联系的知识模块协同项目实施进程进行
组织。最后为教学计划制定课时安排,包括分配讲授课时和实践课时。
2.1 内容划分
XML课程教学知识要点包括XML数据本身的描述和组织形式,XML数据的正确性验证,XML数据对象与应用,XML的解析模型和解析方法,以XPath为关键技术的各种查询、变换方法,以及界面格式化应用。图2展示了项目层次与XML课程知识点的关系,图中的圆圈表示各知识要点,箭头反映了知识点之间的依赖关系,也决定了知识点的教学先后次序。
一个Web典型应用项目的开发层次主要有三个,即数据层、服务层和界面层。XML技术体系为此类开发提供了丰富和完整的解决方案,对应各个设计层面提供相应的技术设施,课程中的知识要点可以划分到相应的开发层次中去。图2反映了XML知识体系根据项目实施层次划分的结果。
2.2 内容组织
在教学内容划分的基础上,可以清晰地发现各个知识要点的分布情况,这有利于进一步把知识要点映射到教学项目实施进程上来。教学项目的具体功能的需求分析要和所要介绍的知识点或技术要点结合起来。如下表所示,项目总体按三个功能层次划分,细化的功能描述说明了每个单位模块的具体需求。
数据层部分:需要定义基本的信息数据,即完成XML数据库设计。需要分别通过两种重要的XML数据验证手段——DTD和XML Schema对数据进行合法验证。
服务层部分:完成XML操作基本功能的设计,包括实现对数据的新建、增加、删除和修改等操作。还要完成各种附加功能,如pdf文档输出,与关系数据库连接以及远程通信服务等。应用的核心技术点包括DSO数据岛技术,以及XPath技术等,这些应用使得项目系统具备较为完善的功能,技术含量也大为增加。
界面层部分:根据功能需求,采用CSS,XSLT等不同方法,完成数据的个性化显示设计。
2.3 课时安排
教学顺序基本可以按下表中安排的次序进行,先学习数据层,接着服务层,最后是界面层。鉴于界面层相对比较简单,知识点较为单一,也可以安排在服务层之前学习。进度可参照表中右列的教学课时进行,按总计36个授课学时进行分配。由于数据层的内容涉及较多XML入门知识,分配了8个课时;服务层部分集中了XML关键技术应用,有些知识点还有相互交叉和依赖现象,较为复杂,故分配了22课时;界面层相对较为容易,故用6个课时完成。
实践环节共计18个课时,一般是完成一个教学要点讲授后,对可独立实现的功能安排实验课。数据层实践由于需要熟悉开发环境和各种软件操作,可适当安排多些时间,分配6课时。服务层的实践内容丰富,主要功能在这阶段开发完成,分配8个课时。其中按功能需求细化,查找操作类的功能实现占3课时,更新操作类的占3课时,其他应用类占2课时。界面层的设计较为简单,安排2个课时。最后留出2个课时作为系统整合调试用。如表1所示。
3 教学实施过程
教学实施过程由讲授、实践、评价三个环节组成。其中讲授和实践两个环节同步进行,评价环节则在实践环节开展过程中分阶段进行。
3.1 讲授环节
项目驱动教学法以项目作为新知识讲授和新技能培养的载体,讲授不仅需要强调基本概念和技术原理,这一环节更重要的目标是引导学生以开发者的角度出发,用工程应用的方法来解决实际问题,学生在参与项目学习的过程中,完成新知识体系的建构。讲授过程中需要处理好以下几个关键问题。
1) 知识讲解和技能培养的结合。
在教学项目教授过程中,教师本身扮演了两个身份,即是需求专家,又是总设计师。讲授时需要引导学生如何解决实际问题,从而理解某项技术的用途和基本原理。学生则需要用项目参与者的角度,加深对新概念的理解和掌握,并与已有知识融合,活学活用,培养使用新技能进行应用开发的意识。比如在进行界面层的教学时,给出对XML数据进行可视化的需求,首先可选用级联样式单(CSS),该法与传统Html的格式化输出方法一致,简单易用。接着提出对XML更细致的格式化要求,比如要求抽取部分数据,包装后按要求显示,CSS无法做到此类更为灵活的格式化输出,此时引入可扩展样式语言转换(XSLT)技术,才能很好解决该问题。学生在学习新知识时,很快能理解该技术的产生的背景和适合的应用场景。
2) 重点突出和逻辑清晰。
教学项目的实现与实际项目开发的目的存在差别,需要把握好度。教学项目的实施原则上要求获得一定效果,但是更重要的是帮助学生建构新的知识和技能体系,而该体系的建立依靠概念的深入理解和基本原理的掌握。项目的完善需要注重设计和编码开发,如果一味追求项目的实施效果,而把XML关键知识的学习放在次要位置,容易造成舍本逐末。
传统教学方法基本上是按章节组织教学,先见树木,后见森林,容易隔断知识点之间的联系。项目驱动方法的引入,不能弱化知识点的介绍。由于项目功能通常会涉及几种技术,各种技术之间的联系不可避免,但太多联系,容易造成混乱,因此需要有清晰的逻辑框架,组织知识点的讲授。每个重要知识点的讲授都需要依靠一个合适的项目功能作为实施载体,也就是说每个项目功能的实现需要突出一个知识要点。比如服务功能开发中,登陆验证功能的需求主要为了引入XPath技术的应用;而搜索帖子功能仍可以利用XPath实现部分功能,但主要是为了引入XQuery技术的介绍。
3) 教学进度的控制。
教学计划有明确的时间表,项目实施也有时间表,二者不可能完全一致,但应尽量把二者统一。要使得两条时间线要很好吻合,除了做好教学内容取舍以外,教学过程中必须严格按照教学计划安排讲授时间。若教学进度控制不好,容易造成有始无终的后果,整个教学效果将大打折扣。由于教学情况是动态的,学生接受状态等诸多因素都可能影响教学进度。为保证进度,需要随时注意学生的反馈意见,及时调整教学内容和项目的局部需求。
4) 交叉内容的讲解。
虽然整个XML知识体系存在层次脉络,而且教学设计时完成了教学内容划分,但还是无法把各个知识点进行独立完整教学。表现在教学项目实施时,所涉及的某些知识点出现在后续章节;而某些知识点则是反复出现的。对于涉及的后续章节知识,由于时间关系不能展开细致的讲解,教师仍需要做简明扼要的铺垫,否则可能造成学生的学习困境。对于可能反复出现的知识点,应尽量安排在前期讲解,这些是教学内容组织时应该重点考虑的问题。
3.2 实践环节
实践环节和讲授环节是同步进行的,需要强调有以下两点:一是实践项目和讲授项目要有相似性。采用新学习的知识完成项目设计和实施毕竟难度较大,一个完全陌生的实践项目难于在有限时间内被理解和实施,从而可能打击学生的学习热情。二是教学计划中对讲授和实践的时间要求同步,便于学生能把新知识及时融入实践中。
实践环节完全以学生为主体,教师仍然需要把握好总体要求和进度。教师首先要提出明确的项目需求,在学生实践过程中注意充分激发其主动性,鼓励创新积极性,让学生完成特定实践环节后能获得成就感。采用的措施包括点评较好完成的学生作品并予以表扬;对学生的反馈及时反映并加以引导,以项目合作者的角度与学生平等交流、讨论设计与实现思路。
在实践环节应该保留一定的区分度,对不同程度的学生在项目达成的程度上应制定不同的要求。包括技术选用难度和实现功能的数量等。比如对指定完成搜索帖子的功能,需进一步细化要求。在技术选用难度方面,基本要求是采用XPath获取特定查询结果,更高的要求是采用XQuery获取查询结果,并进行排序和除重等操作;在实现功能的数量方面,基本要求是完成两个类似的查询设计,更高的要求是增加更多类似的查询设计需求。对于初学者,期望其在18个课时内完成所有实践任务是不太现实的。为此,需要保证实践课时的有效利用,集中解决学生设计和编码过程中的疑问。同时,需要督促学生课后开展工作,鼓励通过网络自寻答案或共同探讨等方式,解决实践中遇到的各种问题。
实践nWDZ93fzn28HD8nUAr8I4o8YqnlZtLTSDzdpTK8OZTU=项目的实施是分工合作的过程。小组成员原则可以自由组合,为保证实践项目有效完成,教师需要适当介入和干预,尽量使得每个小组由学习较好的和较差的同学组成,并且要求各个成员有明确的分工。
3.3 评价环节
传统的试卷笔试只能反映学生对知识的记忆情况和对技术的部分理解程度,难于全面考察学生对本课程的掌握程度。实践性强是XML课程的最大特点,强调在应用中加深对知识理解和对技术灵活掌握,项目实施效果可为考核提供依据。因此考核不采用试卷笔试这种形式,而是根据实验验收情况和实验报告质量来评定成绩。成绩分配方面,大体上实践环节的设计和编码效果占70%,实验报告占30%。
实验验收通过问答考核方式进行,对每组的各个成员口头提问,指定演示操作。要求学生按序进行,其他学生不得围观讨论,以便确认每位学生完成工作的实际情况以及对技术要点的掌握程度。由于验收是按阶段进行的,因此可以达到密切跟踪教学效果的目的,从而使教师及时发现问题,进行教学调整。验收阶段基本可按照实践环节的进度安排,比如完成数据层设计,就进行第一次验收;完成服务层设计的各个阶段可以适当安排时间验收。验收前提是需要有可展示的阶段设计和实施成果。
实验报告反映了项目实施情况,反映了学生对知识的理解程度,以及基本的表达组织能力,应作为教学实施的重要记录。在实验报告的评价过程中应注意每个小组成员是否完成大致相等的工作量,避免他人代劳。
4 结语
针对XML课程的特点和传统教学方案的不足,我们提出了项目驱动的教学方案,尝试以项目作为知识学习和技能训练的载体,把相关各技术要点有机统一起来。该法的目标不仅在于知识和技能的有效传授,还在于学生实际应用能力的培养和提高。XML课程的教学实践表明,项目驱动法能充分调动学生学习的主动性和积极性,使学生在学习和领会了XML课程基本知识和技能的同时,综合应用能力和解决实际问题的能力得到了提高。今后我们还需要通过更多的教学实践积累经验,对该教学方案的内容、进度等各方面进行精心调整,使之更为合理有效,并适时加以推广。
参考文献:
[1]