APP下载

基于项目驱动的软件工程多课程协作教学模式的研究与实践

2018-01-04李天俐唐琳张金波

电脑知识与技术 2018年30期
关键词:项目驱动软件工程教学模式

李天俐 唐琳 张金波

摘要:在适应高等教育新试点转型,培养软件工程领域一线高等技术应用型、技能型人才的背景下,分析了当前项目驱动教学法在软件工程专业教学中存在的问题,该文提出了用优化的项目把软件工程专业中主要专业课程跨学期串联起来,教学进程主要以项目开发流程为主,弱化学期的概念,在情景中学习的多课程联动的教学模式。并具体阐述了其理论依据、主要内容、特点和实践要点。

关键词:项目驱动;教学模式;软件工程;多课程协作

中图分类号:G64 文献标识码:A 文章编号:1009-3044(2018)30-0174-02

2014年,国务院开启了非研究型普通本科高校向应用技术型转型的试点,软件工程专业实施教学法的改革,符合培养应用技术技能型创新创业型人才的目标。

虽然很多高校采用项目驱动教学法[1-3],尤其软件工程这种实践工程性强的专业,但还是存在一些问题,例如:1)一些教师沿用精英教育思维,重理论轻实践,学生实践动手能力弱;2)一些教师虽然能采用项目驱动教学法,也能了解社会的真实需求,但是,采用的工程项目案例往往不能从软件工程的全局角度出发,只考虑教师本人所教授的课程,学生整体把握软件工程知识体系和工程项目能力欠缺;3)不同的教师虽能按照软件工程的方式和方法授课,但由于课程的差异和主讲教师的差异,往往使关联紧密的知识体系割裂开来,从而使学生所掌握的软件工程知识体系离散;4)项目驱动教学法能提高学生学习兴趣和积极性、增强学生实践动手能力,但在不同的课程中引入过多不同的项目,学生在不同项目间频繁切换,思维容易混乱;不同项目间的重叠也加重了学生的负担,学生很难深入地从软件工程全局角度把握项目的完整性。

1 理论基础

项目驱动教学法建立在建构主义理论基础上,以解决问题为核心,教师为主导、学生为主体、通过一个完整的项目(即项目为主线),这个项目是由设计好的任务构成,把教学知识点融入其中(即任务为载体),从而进行教学活动。教师在学生学习过程中是主导者、参谋和顾问,这个项目要基于真实情境,由多个任务组成,知识点包含在整个项目过程中,提供学生学习素材,控制教学过程和活动,创建小组讨论、交流和协作的空间。学生在教学和学习过程中是主体,通过实践、动手、小组讨论、协作学习等方式,控制项目完成进度,解决项目出现的问题,从而完成项目,在完成项目的过程中掌握知识点。

建构主义理论认为,学习是以学生为中心,强调学生对知识的主动构建,而不是由教师向学生传递知识的过程。它强调学习的情境性、主动性、协作性、社会性,强调主动学习、小组讨论和交流、小组协作和成果评价等。当一个人所遇到的问题,采用头脑中已有的知识综合分析无法解决,真正学习才能开始。

2 核心要素

软件工程专业实践性、综合性很强,需要综合运用多门课程的知识完成一个项目的开发,其知识体系、课程之间联系紧密。不同科目的任课教师需要协作分工,加强交流与合作,通过典型的知识面覆盖广泛的优化项目,例如,网上购物系统,把软件工程专业的主要专业课程跨度不同学期串联起来,一个网上购物系统,在软件工程概论课通过瀑布模型和结构化方法,利用Visio工具分析和设计模型,强调建模,写出完整的结构化方法的文档;在可视化建模与UML课程中用面向对象的方法,采用Rose工具建立模型,同样强调建模,写出完整的面向对象方法的文档,强调软件公司实际的文档的写法;在数据库实践的课程,采用Power Designer工具和SQL Server 2012环境,完成数据库、数据表、存储过程、视图、触发器和约束的学习;在Java实践课程中,通过以上课程的学习,强调软件的实现;在Web技术基础课程中,强调PC端页面的制作,追求美观、迅速、编码风格等;在HTML5课程中强调PC和移动端的共同风格;在Android课程中强调移动端的页面制作;在SSM课程中强调架构的应用;在IT项目管理的课程中强调用Project软件进行项目的估算和成本控制、计划制定和控制、进度控制、风险评估等;在测试课程中编写测试用例,采用各种测试工具,用基本路径法进行单元测试,用等价类划分法、边界值分析法进行功能测试和集成测试等。在这一系列的课程中,我们要实现的就是一个网上购物系统,学生学习完所有课程,系统就能被成功应用,做得好的同学,系统可以商用,做得不好的同学也可以作为毕业设计。

所采用的软件工程项目特点:1)能将理论知识和实际软件开发能力结合起来;2)学生可以独立完成软件项目的分析、设计、编码和测试;3)与软件公司的实际开发过程和活动有联系;4)有一定的难度系数,学生在完成软件开发的过程中能掌握、理解和运用新的知识;5)学生可以综合运用所学知识和技能,处理、克服项目实施过程中出现的问题和困难;6)渗透态度、情感、价值观的培养;7)有不同的教学内容和知识点,具有一定的实际应用价值;8)进行成果展示,师生能共同评价项目完成情况和工作成果。

该教学模式特点:所采用软件项目是经过特殊设计和优化处理的,力求关联不同学期多门课程的教学,突出可供教学的特定知识点,注重软件项目包含知识点的广度和延续性。采用这种教学模式的课程,弱化学期的概念,教学进程主要以软件项目开发过程为主,在同一学期同时开课的课程,可以区分阶段、错开教学。

这种教学方式可以加强学生对软件工程过程的整体认识,项目驱动教学法的功用可以放大数倍,学生也能综合运用所学知识和技能,使解决复杂现实问题的能力提高数倍。经过实践,学生的学习效果非常好,收获非常大。

3 实践要点

3.1 實践过程

以学生为主体自主学习过程:学生自己处理一个相对独立的项目。题目由教师确定,需求分析、软件设计、编码、测试及审查过程、评估结果,都由学生自主完成。通过完成整个软件开发项目,学生可以了解并把握整个软件开发过程及每一个开发环节中的基本要求。

以教师为主导的引导过程:项目组织实施前教师的引导要精炼、清晰 ,新知识的讲解要抓重点,避免重复,项目实施的步骤,教师要解释清楚,相关资料要及时给出,项目活动团队的确立要根据具体情况具体安排 ,项目活动中教师的指导应恰到好处 ,项目评估总结讲究方法。

3.2 软件项目团队的安排

根据项目的具体特点确立项目团队。学生独立完成较小的项目;分组合作完成难度较大、涉及知识面较广的项目,充分利用学生的各自特长,知识的互补性,解决更多的问题。本校软件工程专业有两个方向,一个是软件开发方向,一个是软件测试方向,因此,确定软件项目团队重点考虑学生的专业方向,这样更能全面提高学生掌握知识和技能的能力。

3.3 软件项目库的设计

为了实现多课程协作教学,通过共同教研,建设一个题材丰富、内容充实、知识广泛、能覆盖不同课程内容的典型软件项目库是必须的,包含不同学科的知识点和需要掌握的技能,还需进一步优化设计,除具备可供课程教学的特定知识点外,力求关联不同学期多门课程的教学,注重软件项目包含知识点的广度和延续性,保证知识的连贯性和整体性。

学校也与多家企业联合,实行校企合作,引入了教学的真实项目,并且分配了学时,开设了顾问课程,聘请软件公司从事多年的、有着丰富软件开发实践经验的技术人员参与软件项目设计和指导,从而补充和完善了软件项目库建设。

4 结束语

基于项目驱动的软件工程多课程协作教学模式能建立软件工程思维,适合高等教育新试点转型,培养软件工程领域一线高等技术应用型、技能型人才,这种教学模式以项目为主线、实践为导向、任务为载体、学生为主体、教师为主导、多课程联动,强调用优化的项目把软件工程专业中主要专业课程,尤其是专业实践课程,跨学期串联起来,教学进程主要以项目开发流程为主,弱化学期的概念,加强学生对软件开发过程的整体认识,在情景中学习,既能提高学生分析问题和解决问题能力,又能充分调动学生的学习主动性和参与性,培养学生自主学习能力。

参考文献:

[1] 蔡琴,张凯.项目驱动教学模式在软件工程教学中的应用[J].实验科学与技术,2014,12(4):175-178.

[2] 钱进.项目驱动案例情景为辅的数据库课程教学模式探讨[J].软件工程,2016,19(12).

[3] 刘海燕,王雅轩,陈恒.基于项目案例驱动的《软件工程》實践教学研究[J].科技创新导报. 2015(14):142-143.

【通联编辑:唐一东】

猜你喜欢

项目驱动软件工程教学模式
群文阅读教学模式探讨
基于“红色之旅”项目驱动的《调酒与咖啡》工作室制人才培养机制探讨
关于如何创新和完善计算机软件工程管理的探讨
“一精三多”教学模式的探索与实践
“导航杯”实践教学模式的做法与成效
5E教学模式对我国中学数学教学的启示