软件工程迭代式教学法论文

2022-04-27

摘要:文章研究和分析了软件工程人才培养目标,针对当前软件工程课程教学存在的不足,提出将项目驱动模式应用在软件工程教学中。文章以新疆大学软件学院软件工程的教改为例,探讨了项目驱动模式在软件工程教学中应用,反思了项目驱动模式在实施中存在的问题并给出改进措施。今天小编为大家推荐《软件工程迭代式教学法论文(精选3篇)》,欢迎阅读,希望大家能够喜欢。

软件工程迭代式教学法论文 篇1:

基于项目驱动的软件工程课程教学改革探索

[摘要]为适应社会对高素质软件人才的需求,文章分析了软件工程课程的特点、教学定位以及传统教学方法的不足,提出了基于项目驱动的复合型教学模式,将教学内容以组合式、模块化的方式融入教学案例项目中,展开以小组为单位的课外演练项目同步训练,并明确了相应的过程管理措施和评价办法。

[关键词]软件工程 项目驱动 教学改革

[作者简介]范会联(1971- ),男,重庆人,长江师范学院数学与计算机学院,副教授,硕士,主要从事软件工程、智能信息处理的教学与研究工作。(重庆 408100)仲元昌(1968- ),男,四川南充人,重庆大学通信工程学院,副教授,博士,研究生导师,主要从事通信与测控系统、无线传感器网络等领域的教学与研究工作。(重庆 400030)

[基金项目]本文系2011年重庆市教委研究项目“基于RFID的校园安全防范系统研究与设计”的研究成果。(项目编号:KJ111304)

软件产业是信息产业的核心、国民经济信息化的基础,已经渗透到各个领域。相关数据显示,我国软件开发行业人才需要量已经超过30 万人,并仍以每年20%的速度增加,其中初级软件开发工程师的需求量就高达20 万人,软件服务外包、3G 研发的人才缺口更大。但让人困惑的是,近年来失业率排在前10 位的专业中涉及计算机科学与技术。一方面每年相当一部分计算机专业毕业生就业困难,另一方面企业招聘不到对口的软件人才,这说明学校培养的软件人才与企业的实际需要存在较大差距。目前我国500 多所院校开设了计算机专业,培养方式各具特色,但培养适应企业需求的优秀软件开发人员,仍是教学实践中值得进一步研究和解决的问题。本文分析研究了软件工程课程的特点及传统教学实践中涉及的普遍问题,提出在软件工程课程的教学实践中引用基于项目驱动的复合教学式理念,并从教学定位、教学内容、教学方法、实践教学等方面进行了探索。

一、课程特点及教学定位

软件工程是一门理论与实践并重的课程,涉及内容广泛,从工程意义上讲,包括软件开发、维护和管理等活动的总体;从学科意义上讲,包括与软件开发相关的理论、原理、方法和技术。ACMCC2001 草案把软件工程学分为七大核心专题:软件过程和软件生命周期模型、需求分析、软件设计、测试和评估、软件进化、软件项目管理、软件工具和环境。为满足社会对不同层次计算机专业学生在软件工程方面知识和能力的要求,软件工程课程应设计成一个多层次的课程系列。针对计算机专业应用型本科学生,将教学定位在两个方面:一是从软件生命周期的角度,讲解软件工程的基本概念、基本原理和基本方法;二是从工程应用的角度,讲解系统性、规范化的通用开发技术。软件工程课程教学应既重视理论知识和分析问题与解决问题的方法,又重视软件工程实践。课程教学目标是使学生掌握需求分析、概要和详细设计及软件测试与维护等内容,用软件工程的原则、开发方法与技术实现中、小规模项目的开发与管理,使学生在基础知识与技能、团队协作能力、分析与解决问题、谈判与沟通能力、创新与发展能力等方面得到良好的训练,为将来从事大型软件系统的开发与维护打下扎实的基础。

二、传统教学方法存在的问题

1.教学内容枯燥、抽象、陈旧。目前的软件工程教材偏向纯理论介绍,主要讲解方法学,从结构化或面向对象的角度讲解软件开发过程的理论知识,缺少案例支撑。大部分学生对软件项目概念的理解是建立在其他课程设计的基础上,没有软件项目的经验,因而妨碍学生对软件工程中基本概念的理解,如可行性分析、需求分析、需求变更、过程管理、质量保障等,不明白为什么要做可行性分析、需求分析,以及需求变更的必然性及管理措施。随着软件系统向社会各方面的渗透以及软件系统的规模不断扩大,对软件系统的质量要求越来越高,这对软件工程课程的教学内容提出了新的要求。从内容上看,不仅要重视方法,还要重视开发工具与环境;不仅要重视开发过程,更要重视开发过程中的过程管理和质量保证措施,这些知识和技能,不能仅仅依靠书本和课堂教学来获得。

2.案例教学中采用的案例不当。软件工程的实践性很强,教学时一般采用案例教学法,方法的成效取决于选择的案例,案例如果选择不当,则教学效果肯定不好。很多教师在教学时,由于缺少实际软件项目的开发和管理经验,导致案例的选取要么不贴近学生实际,如机票预订、仓库管理项目,学生缺少实际接触经验,因而理解困难或不感兴趣;要么选择的案例规模较小,如简单的成绩管理系统,在学生的角度来看,可以直接进行设计和编码,不清楚为什么要进行可行性研究、需求分析;要么案例前后不连贯,如由于教师缺少实际项目开发经历,导致可行性分析的阶段选用机票预订,需求分析用仓库管理,而设计又选用人事管理等现象,导致学生对软件项目、软件工程没有建立完整的概念,缺乏对所学知识的整体认识。

3.重讲解、轻讨论,缺乏实战练习。软件工程课程的实践性要求很强,在传统软件工程教学过程中,教师一味讲解软件工程的基本原理、理论,或一味分析一些简单案例,忽视了学生主观能动性的发挥,没有让学生参与教材内容或案例的分析讨论。虽然有实验教学的要求,但一般只停留在组织学生编写软件项目设计文档的单一环节上,由于学生没有进行实际项目的演练,教学效果不理想。尽管这种以教师讲授为主的教学模式,在课堂教学中使用了一些情境教学,但仅仅遵循原有理论教学过程模式,并未按典型工作任务模式完成情境教学,培养出来的学生缺乏自主探索知识的能力和运用知识解决实际问题的能力。因此,切实加强软件工程教学的创新与改革至关重要。

三、项目驱动的复合教学模式

复合教学模式是以科学的教学理论为指导,依托分组教学、研讨、协作、活动参与等多种教学模式的相互交叉、相互渗透,并融合多元化的教学内容、多样性的教学形式、现代化的教学方法而形成的综合性、立体性的教学模式。结合软件工程课程特点,提出“项目驱动的复合教学模式”,以项目为主体,组织学生以团队的形式参加项目分析、设计、实现和管理,在项目实施过程中,激励学生自我认识,引导学生独立思考与创新,营造讨论争辩的机会和气氛,并以讨论的形式鼓励学生表达各自的观点和思想,从而积极主动地参与分析、概括或评价等思维活动,将软件工程的分析、设计、实现、管理等各个知识点的讲解融入项目实施的各个阶段。项目驱动的复合教学模式由以下几个环节构成:

1.学生分组。学生按系统分析、设计、实现、测试的角色组成4~5人的开发团队,选举一人作为项目负责人,明确各自的分工和职责,并协作完成,以培养学生的团队合作精神、沟通能力和协调管理等能力。随着教学进度展开,把项目实施与理论教学结合起来。

2.确定项目。项目的确定分为教学案例和演练项目。教学案例是教师用于组织课堂教学讲解的项目,由教师根据学生的特点确定。演练项目是在教师的指导下由小组根据各自的兴趣、特长自行选择,用于课后同步训练。

3.教学内容及方法的改革。教学内容的选取以整合相关课程中相同知识点使教学内容更加精炼为指导思想,根据市场和企业对软件人才的需求,将重要、经典的基本概念、知识点连同相应的技能串联起来讲授和实践。软件工程课程的教学内容将软件过程模型、工程管理、需求工程、分析建模、软件设计、软件构造、测试以及软件交付与维护为骨干,融入数据库原理、计算机网络、数据结构、操作系统等相关课程知识,按ASP.NET和J2EE两个方向构建组合式、模块化教学内容。在教学方法上,以培养学生的独立思考和创新思维为目标,将理论知识融入教学案例的讲解中,通过分析、演绎、推断、归纳,引导学生认真分析项目中体现的软件工程领域的问题,运用启发式教学方法建立教师、学生双向交互的教与学通道,启发学生对软件开发问题的认识和思考,激发学习的主动性,使其通过积极的思维和讨论获得知识。

4.演练项目的过程管理。演练项目作为课外同步训练项目,教师以需求方与技术顾问的双重身份参与其中。作为需求方,教师针对演练项目提供大致的功能需求,鼓励学生通过分析问题、调查研究、分析需求和管理需求等活动,学习软件需求工程的基础知识和基本技能。作为技术顾问,教师为学生提供相应的学习资源和解决问题的方法及手段的建议,引导学生独立思考和讨论。演练项目的实施按项目规划、迭代开发两个阶段组织进行。在项目规划阶段,完成定义项目开发过程模型、定义项目组织结构、分配人员角色、估算项目规模、制订进度计划。迭代开发阶段是由需求分析、软件设计、数据库设计、模块开发与测试各环节组成的循环逐步求精的过程。整个演练项目的实施要求在规范的、可控的过程中完成,具体保障措施如下:一是明确开发任务并落实到小组的每个成员,由项目负责人填写任务跟踪表,监督任务执行情况,小组各成员通过不同角色的任务分工,共同协作完成项目开发任务;二是实行每周例会制度,保证所有成员在规定时间进行讨论交流;三是将需求分析、软件设计、模块开发、集成测试等关键阶段产品置于配置管理的控制下,并实行阶段评审机制,要求各项目组在完成每个里程碑的任务后,提交相应技术文档,推荐一名代表就该阶段完成工作情况、遇到的问题及解决方法作小型汇报,并组织学生进行技术评审。

5.演练项目验收。在完成演练项目的开发任务后,由教师组织项目验收讨论会,要求每个小组演示项目成果,从系统背景、团队介绍、采用的技术、系统优势及存在问题等方面汇报,演示系统的各项功能,回答教师和同学的提问,以团队的形式提交软件需求规格说明书、软件设计文档、项目代码、软件测试文档、软件过程管理文档、每周工作报告以及任务跟踪表等材料。

6.课程考核。课程考核分为理论考核和实践考核两个方面。理论考核采取开卷考试,要求学生在规定时间内完成给定案例的分析和设计方案,重点考核学生思考、分析和解决问题的能力;学生的实践考核成绩由小组成绩和个人成绩两部分组成,小组成绩根据各小组提交的演练项目结题材料,并结合项目验收汇报情况进行评定;个人成绩根据每周工作报告和任务跟踪表由小组组长和教师进行综合评价。

进行教学改革的最终目的是培养符合市场和社会需求的创新型软件人才,在基于项目驱动的软件工程课程复合式教学模式下,培养的人才具有扎实的理论基础知识,通过相关知识的组合式、模块化的理论教学方法,强化学生的认知,使其更牢固地掌握理论知识;具有独立思考和基本的创新能力,在复合式教学过程中,通过引导、启发学生分析问题,积极思考和讨论,培养学生的独立思考和自主创新能力;具有团队协作精神,以项目驱动小组协作开发,培养团队合作精神。在项目进行的各个阶段,要通过明确任务、落实责任、任务跟踪、协作开发、定期讨论、阶段评审和项目验收各个环节的协同工作,达到培养学生的团队精神与合作意识的目的。

[参考文献]

[1]李超,谢坤武,向军.软件工程课程教学内容及方法探索[J].计算机时代,2010(7).

[2]教育部高等学校计算机科学与技术教学指导委员会.高等学校计算机科学与技术专业核心课程教学实施方案[M].北京:高等教育出版社,2010.

[3]庞雄文.基于实例的“软件工程”课程教学方法[J].现代教育技术,2010(S1).

[4]温颖,周昕.项目教学法在软件工程教学中的应用[J].科技信息,2010(24).

[6]姜雪梅,陈泰宇.基于双师型人才培养的软件工程方向课程体系构建[J].职业技术教育,2009(35).

[7]卢晓勇,揭敏,刘晓强.改革传统教学模式培养创新性软件人才[J].中国高教研究,2007(4).

作者:范会联 仲元昌

软件工程迭代式教学法论文 篇2:

项目驱动模式在软件工程人才培养中的应用与反思

摘要:文章研究和分析了软件工程人才培养目标,针对当前软件工程课程教学存在的不足,提出将项目驱动模式应用在软件工程教学中。文章以新疆大学软件学院软件工程的教改为例,探讨了项目驱动模式在软件工程教学中应用,反思了项目驱动模式在实施中存在的问题并给出改进措施。

关键词:软件工程;项目驱动;工程实践;反思

1 概述

软件产业作为信息产业的核心和灵魂,是极为重要的战略性产业,其发展水平直接关系一个国家的经济发展、社会进步和国家安全。我国政府已经明确提出了重点发展软件产业,大力推进国民经济和社会服务信息化的战略目标。目前,我国软件人才紧缺和人才队伍结构不合理,现有软件人才培养存在质和量问题,不能满足社会特别是信息产业和软件企业的要求。这已经成为制约软件产业发展的主要“瓶颈”。从人才培养质量这个角度分析来看,主要存在以下问题:(1)教学计划陈旧,课程内容与当前世界主流实践落后脱节,学生知识体系不能适应软件企业的需要;(2)教学侧重于理论介绍,缺乏实际案例。导致软件工程的基本原理、思想、方法和项目经验,成为空洞的概念和教条,学生不易学习和掌握,学习兴趣较低;(3)缺乏足够的软件工程实践。学生对软件工程原则和方法的理解只能来源于书本,不能掌握其精髓,无法达到预期教学目标;(4)缺乏系统的工程实践教学方案。

由此看出,现有软件工程教学模式已不能适应软件开发人才培养的需要。根据软件工程专业的培养目标,新疆大学软件学院根据软件开发产业的实际需求和国内外最新实践经验,对软件工程课程进行了教学改革,将项目驱动模式引入软件工程的教学实践活动中。

2 项目驱动模式的特点和优势

项目驱动教学法是一种建立在建构主义学习理论基础上的,有别于传统教学的新型教学方法。建构主义教学设计原理强调,学生的学习活动必须与任务或问题相结合,以探索问题的解决方法来驱动和维持学习者的兴趣和动机。“项目驱动”教学法的主要特点是“以项目为主线、教师为主导、学生为主体、注重实践”[2]。

在软件工程教学过程中,教师提出软件项目,引导学生按照软件工程思想,对项目开发过程分解成如干阶段。在项目研发过程中理解教学内容,并在解决问题过程中将“死”的理论知识变成“活”的知识和经验。项目驱动模式的关键在于 “学中做、做中学”,教师的作用在引导,不断引导学生学习理论,实践理论,在实践中理解理论,走“反复迭代,螺旋式上升”的认知路线。传统教学方式往往以教师为主体由教师进行理论讲解,忽视了学生在教学活动的“主体性”,造成学生学表面理解,实际不理解或者不会应用。抑制了学生学习主动性,限制了学生创造性发挥,不利于锻炼学生独立思考分析解决问题的能力。因此,项目驱动教学法能更好地激发学生的学习爱好和求知欲望,充分调动学生的学习积极性和主动性。不仅能培养学生自主学习、分析问题、解决问题的能力而且培养学生协作、沟通和团队合作能力。只有这样的人才才能满足当今世界软件行业的对软件人才的要求,才能适应当今高速发展,高度开放社会经济发展。

3 项目驱动模式在软件工程教学中的具体实施

在软件工程教学过程中,教师精心设计几个规模适中,知识技能覆盖广的项目,要求学生按照软件开发规范流程做出这个项目。学生分成不同项目组完成不同项目,项目组内人员分别模拟实际项目开发中的不同角色,项目完成后要进行评审和点评。

具体实施过程如下:

1)将一个班级全体分为若干个项目组,每组6-8人。项目组成员要进行角色划分。1名项目经理,1名技术主管,2名程序员,1名测试工程师,1名美工,1名文档和1名配置工程师。每个人都要参与编程和测试工作。项目经理负责和甲方(教师)沟通客户需求并在项目内部开发计划和管理工作。技术主管负责系统分析和架构设计以及核心功能攻关和对项目组内部成员培训和指导。

2)教师提供软件项目,分配或者各项目组自选题目。各组项目必须不同,以防互相抄袭。项目要规模适中,具有现实性,典型性和启发性。项目要给出明确工期和要求。

3)项目实施应在理论教学相关内容授完后进行,各组项目的实施应由学生相对独立地完成。教师用点拨方式进行指导,不参与具体工作,鼓励学生独立思考和实践。教师作为项目“甲方”,解答学生关于需求的咨询和进行项目阶段评审,推动项目的进行。

4)项目实施分为可行性分析、需求分析、架构和数据库设计,详细设计,编码和单元测试、综合测试等阶段。每个阶段应按时递交相应的设计文档。设计文档要符合软件文档规范,要采用主流设计和开发工具完成,如UML语言、MyEclipse、Rational Rose 和Power Designer等。

5)每个阶段由教师和项目经理组成评审组进行评审。评审具体如下:每个项目组委派一名同学进行“答辩”,介绍自己项目组工作任务及内容,展示工作成果。评审组进行提问,答辩人或具体工作完成人应答。最后答辩小组给出答辩意见,对于指出的问题,项目经理应组织项目成员进行整改。最后再次评审并通过后提交当前阶段所有文档然后才能进入下一阶段。

6)项目完成后组织验收。各项目小组提交项目文档,文档应包括:软件及其源代码和设计文档、软件部署和使用说明。然后教师和项目经理组成验收评审组进行验收。对于每个项目,项目经理总体介绍,技术主管介绍架构设计和主要技术。最后,老师根据评审小组意见选出最佳,并针对每个小组优缺点进行点评[3][4]。

在项目实施中要注意到以下方面:1)项目小组人员分配要得当。要求每组中都要有不同性别,不同民族,不同能力水平学生组成.各小组实力要均衡,成员要多样化。这样才能模拟真实开发团队和锻炼学生沟通能力。2)严格控制开发进度和资源分配,力求最大限度贴近实际开发。3)要严格按照实软件项目模板和规范,进行文档书写,培养学生文档编写能力。4)教师充当甲方角色,解答关于客户需求方面的问题。5)每个阶段都要进行评审,评审成员由各项目组组长和教师担任。这样不仅客观公正而且让学生在评审中认识到自身不足和学习其他项目组的优点,在下面工作中改进和提高。

4 项目驱动模式实施的效果

项目驱动模式在软件工程教学中的具体实施方法虽然操作过程繁琐复杂但效果非常显著。自2011年新疆大学软件学院软件工程课程进行教改以来,取得非常了好的教学效果,学生软件开发能力有了显著提高。近三年来学生在国内各种软件设计中取得非常好的成绩。在各种省部级软件设计大赛中,先后有4人获得一等奖或第一名;8人获得二等奖;32人获得三等奖。在中国软件协会和中科院软件所主办的首届《中科杯全国软件设计大赛》中有3名学生闯入决赛并获得三等奖。维吾尔族学生吾提库尔2012年10月参加了“中国移动MM百万青年创业大赛全国三年总评”,他的“优件师维吾尔文手机浏览器”最终获得了全国一等奖;成立了“优件师软件科技有限公司”。在学院支持下多名优秀学生注册了软件公司,承接了多项软件开发项目,其中“掌心科技”已成长为年营业额超过700万的新兴软件创业公司。实践证明,项目驱动模式在软件工程教学中的应用是非常成功的。学生在学习中比过去表现出更高的学习热情和更积极的学习主动性。不仅能按照软件工程学的理论、方法和技术进行软件开发,而且项目规划和团队协作能力有了显著提高。

5 反思

自实施软件工程专业人才培养教学改革以来,将“ 项目驱动” 教学法引入到课程教学实践中,取得了很好的效果,但在教学实践过程中仍存在一系列的问题有待进一步探究解决。

5.1 项目驱动在软件工程教学实施中存在的问题

项目驱动模式在软件工程相关课程教学中应用实施,经过4年的教学实践发现一些问题,主要如下:1)项目的设计和选取缺乏新意、项目过难或过易、综合性不强,任务的分解粒度存在不够细,不均匀。2)部分教师“双师素质”不强,掌控全局的能力不足,工程实践能欠缺。3)教学中教师指导作用不恰当,存在干预过多和指导太少问题。干预过多不利于学生充分发挥主观能动性,限制了学生创造性思维能力和沟通交流能力的提升;干预太少,没有及时发现学生项目进展出现问题,导致进度迟缓或者题目走偏,没有起到锻炼学生解决问题的目的。4)项目组成员分配缺乏合理性,组内成员构成缺乏多元化;小组长的领导力欠缺、工作积极性不高,小组学习气氛不热烈、不和谐,没有相互合作,各忙各的,出现两极分化严重。5)成绩评价不当。只重视小组平均成绩,不关注组员具体能力;重视明星小组,忽视平凡小组倾向,造成部分学生积极性受挫。

5.2 完善项目驱动教学模式的措施

针对项目驱动在软件工程课程实施中存在的问题,提出如下改进措施:

课程教学结束后,组织教师对项目进行讨论,按照知识点覆盖和难度值对现有题目进行评估,更新三分之题目,对保留题目难度做出调整,任务分解粒度保持一致。组织教师短期外出进修,引入软件公司担任客座教师改善和提高教师“双师”素质。加强教师和项目组沟通,每周定时讨论,持续关注各项目组进度和状况,及时解决存在问题。对项目组成员分配采用学生自由选择和老师干预相结合方式保持人员能力,男女比例和民族比例。对项目经理进行培训,明确任务,安排不同同学定期汇报,项目组成员参加讨论来解决学习气氛不热烈,参与度不高的问题。成绩评价中,对项目组组员进行绩效考核,考核由经理和组员共同开展。[5]

6 结束语

项目驱动模式在软件工程教学中的应用,其实质就是通过项目开发帮助学生理解和掌握软件工程的基本理论、技术和方法。在项目实践中学生通过参与软件开发的全过程,不仅锻炼和培养了需求分析能力、系统设计能力、编码能力、测试和维护能力、文档书写能力,而且也锻炼了在项目开发中沟通、协作和项目管理的能力。我们在实施过程中要不断总结经验,改进实施中存在的问题,不断调整、优化,这样才能真正发挥其优势,对培养高素质软件开发人才起到了积极作用。

参考文献:

[1] 张海藩. 软件工程导论[M]. 5版.北京:清华大学出版社,2008:2-5.

[2] 李伟波. 项目驱动式的“软件工程”教学模式研究与实践[J]. 中国电力教育,2009,139(8): 45-46

[3] 舒新峰,陈莉君.“软件工程”教学改革与实践[J]. 计算机教育,2009,89(4): 59-60

[4] 张奇. 项目驱动式教学在《管理信息系统》中的应用探讨[J].电脑知识与技术,2007,151(5) :874-875.

[5] 王玲.“项目驱动”教学法在高校室内设计专业教学实施中存在的问题及解决对策探析[J].现代企业教育,2014(24).

作者:张凯 孙华 冷洪勇 柯尊旺

软件工程迭代式教学法论文 篇3:

XN/IL课程的创新教学方案

摘 要:XML课程技术新颖且应用场合多,实用性强但知识点琐碎繁多,独立分散、简单不实用的案例教学模式导致学生无法有效掌握XML系统的知识体系,无法在任务面前实现对XML技术的驾驭,达到学以致用的教学目的。文章提出以“项目驱动、任务引领”的形式引导学生宏观认识XML,用项目分解的任务串讲XML的零散知识点,以软件工程的思想组织教学,辅以创新教学模块将XML相关技术和知识要点紧密结合起来,传授知识和培养能力并重,全面提升学生分析、解决问题的能力一

关键词:XML课程;教学方案;项目驱动;软件工程

引 言

Internet的快速发展使得XML成为全球信息传递和共享的重要性日益凸显,成为电子图书、电子商务、远程教育等领域发展的需求。XML已经成为Intemet数据描述和交换的标准,必然会替代HTML成为Web上保存数据的主要格式。XML课程是高校计算机类专业面向高年级开设的一门专业性强、面向应用的课程,内容主要涉及XML应用及程序设计技术,特点是知识点分散繁多、技术体系庞大、具体应用范围广、适用于解决特定问题。目前,XML课程教学中存在的问题是教学内容以技术点分散组织,教学形式多为教师主导的“概念一原理一例子”模式,学生能够理解和掌握简单的实例,却在课程设计环节面对实际开发问题时一筹莫展。

如果以软件工程思想为指导,借助项目驱动教学的特点,教师先期进行项目分解,合理组织教学知识点,教学过程中以项目子任务目标为标尺,严格执行教学进度以达到项目,就可以实现教学目标。笔者提出的创新教学方案充分发挥项目驱动这种基于构建主义的探究式学习模式优点,重在培养学生分析、解决实际问题的能力,激发学生积极主动完成项目子任务和知识结构的主动构建过程,既可以保证课程教学质量,又能更好地服务后续专业课程。

1 XML课程教学设计理念概述

“概念一原理一例子”的教学模式在XML课程教学中受到了严峻的挑战,而项目驱动的教学模式在诸多应用型课程中得到理论研究和实践验证 。鉴于传统教学模式无法应对XML课程教学的现象,笔者提出“项目驱动、任务引导”的教学方案。

“项目驱动、任务引领”这种基于构建主义学习理论的教学模式的特点是在一定的现实应用场景中,结合项目本身的需求分析,引导学生分析项目的功能,进而激发学生主动参与教学,师生共同进行项目分解,以使得师生随着“项同深入、教学进度”的逐步展开将所学知识点直接用于系列任务,既能达到项目的目标,义能逐步完善和充实XML课程学习过程中的系统知识框架。

XML课程采用迭代项目教学法 ,教学方案设计思路如图1所示。教师在备课期间,在熟悉教学大纲、先修课程、学生学情等的前提下充分学习和掌握XML技术相关资料,深刻领悟XML课程知识点与教学项目的对应关系,合理有效地设计项目框架,既要便于项目的完成,又要兼顾知识点的传授和讲解,使得系列任务能够自然而然地激发学生的兴趣,令学生在学习新知识的过程中可以将其直接应用于任务中,并且在师生共同推动教学进度的同时可以根据学生的掌握情况,灵活及时地调整教学进度,从而保证XML课程的教学效果。

XML课程的授课通常安排在本科大三学年,先修课程包含Web程序设计、高级语言程序设计和数据库技术等,学生需要掌握编程技术和开发工具。此外,担任XML课程教学的教师应具有企业级项目的横向课题或企业兼职等经历,要求项目开发或实践经验丰富。

2 XML课程教学创新实践

“项目驱动、任务引领”教学模式的首要前提是教学内容的精心组织,基于教学大纲的知识点对教学内容合理归类划分,使之与项目分解的系列任务融合;其次,要采用适于学生的教学方法,精心设计教学环节。此外,要培养养学生独立完成项目的综合能力。

2.1 XML教学内容层次化

教学内容的组织需要考虑知识点的模块化、项目分解系列任务的层次化以及知识点教授的序化。笔者采用的“作业管理系统”是一个典型的Web应用项目,包含数据层、业务层和用户层。XML课程的技术体系具备该类项日开发所涉及的解决方案,为每个设计层面提供技术保障。图2所示的XML知识体系正好对应着Web项目开发的3个层面。

如图2所示,XML课程的知识点主要包含XML数据描述和命名空间、DTD和Schema对XML文档有效性的验证、XML数据格式化CSS和XSL的应用、XML的解析模型和方法、如何访问XML、基于XPATH技术的XML数据查询等。

2.2 XML教学环节设计

在XML教学内容层次化的基础上,学生能够了解核心知识点的对应层次,容易对应到项目分解的系列任务,便于教学有步骤地深入。教师可在软件工程的指导思想下,进行教学项目“作业管理系统”的需求分析,对应“数据一业务一用户”3个功能层次进行项目功能划分并在部分教学内容处增加拓展教学内容,教学项目功能、拓展内容及核心知识点见表1。

“项日驱动、任务引领”教学模式中迭代项目教学法的关键是核心知识点要覆盖教学项目的系列任务:教学实践中由浅人深、由易到难的教学设计既让学生体验到真实项目的开发流程,又符合学生的学习心理特点,使学习兴趣由淡到浓、化被动为主动,从而在师生的共同努力下实现教学目标。

如表1所示,数据层的工作就是完成XML数据库的设计,包含教师、学生的基本信息、口令密码信息、作业信息、教师批复信息等,结合DTD和XML Schema两种XML数据验证手段核实XML数据的形式良好并进行有效性检验。业务层的工作主要是完成项目基本功能,包含作业的发布、更新和删除,这里既包含学生对作业的操作,又包含教师对作业的操作,还可以完成与关系数据库链接等功能,该层次涉及的XML技术包含DSO数据岛技术、XPATH技术等。同时,为了让学生深入了解XML课程和先修课程的融合关系,笔者特地增加了拓展内容,主要包含SQL Server中XML的应用、JDK+TOMCAT部署发布项目、基于.NET平台开发的项目、示例Java编程访问XML、ADO.NET与XML等相关技能。以.NET中的XML编程为例,其主要讲解.NET中处理XML文档的方式SAX和DOM,其中SAX方式是利用System.XML名称空间中的XmlReader类以流模式处理XML文档,DOM方式是利用System.Xml.XmlDocument对象以DOM方式处理XML文档。以ADO.NET与XML为例,学生可以明确XML是ADO.NET绑定到其他语言的桥梁纽带,学习如何使用DataSet对象访问XML等,对于核心知识点和相关技能可以通过图3所示的ADO.NET与XML综合示例掌握。用户层部分是结合项目特点,采用CSS或XSLT方法进行XML数据的个性化设汁与美化显示。

2.3 XML创新教学方案的实施

在教学实践巾,教师通常是按照“先数据层、冉业务层、后用户层”的教授次序,鉴于用户层简单且学生比较熟练,可以提前教授。在XML课程教学实施方案中,当教学项目“作业管理系统”讲授完毕,教师要想真正了解学生的掌握情况,离不开独立实践和过程考核这两个环节。我们已经阐述了讲授过程中重在以工程应用的方法引领学生分析、解决问题,以迭代项目教学法进讲授,让学生在参与项曰实践过程中系统地构建XML知识和技术体系。

1)独立实践环节。

由于学校教学课时安排的不同,独立实践环节可以与讲授环节同步,也可以在教学项目完成后由学生集巾独立完成。笔者建议同步进行且要求独立实践项目与教学项曰类似,难易度相似,这样就能够保持学生的学习热情且能够让学生快速应用所学的知识点和技能。独立实践环节完全以学生为责任主体,教师重在前期提出明确的项目需求,指导学生提高完成进度和质量,结合学生的反馈进行交流,共同分析、探讨其设汁是否合理以及解决方案是否可行。

2)过程考核环节。

鉴于学生的学习能力有高低之分,教师在过程考核中应对不同程度的学生提出层次化的要求以数据查询为例,大多数学生应熟练掌握利用XPATH技术获取查询结果,尖子生应掌握利用XQuery技术获取查询结果。XML课程足面向应用的、实践性强的技能运用课程,靠传统的笔试考核学生没有任何意义,笔者建议教师在独立实践中加大与学生的交流,了解其对问题的分析、对知识的理解程度、面对具体任务时是否能够灵活地采用相应技术加以解决,同时要依据学生独立实践完成的效果及质量进行考核成绩由问题分析报告(10%)、设计和编码的过程考核(50%)、指定功能的演示(10%)、口头汇报(10%)和实验报告(20%)5部分组成,

3 结语

我们在XML课程教学创新实践中,通过“项目驱动、任务引领”的教学方案,采川迭代项目教学法,以教学项目为载体进行讲解,覆盖XML课程的绝大部分核心知识点,关键在于培养学乍分析问题、解决问题的能力,使其在教师引导下潜移默化地“内化”软件工程思想,通过系统功能分析知晓“要做什么”,通过XML的学习知道“如何实现”;同时辅以独立实践环节检验学生的学以致用能力,采用科学的考核机制全方位评价和检验学生的实际应用能力。这种XML创新教学方案取得了良好的教学效果,今后我们将继续不断积累教学经验,优化教学环节的设汁,更新教学内容,希望对同行业的教师有所帮助。

作者:陈战胜

上一篇:老年高血压生活教育学论文下一篇:阅读应试能力现状分析论文