欢迎来到专业的米粒范文网平台! 心得体会 工作总结 工作计划 申请书 思想汇报 事迹材料 述职报告 教学设计
当前位置:首页 > 范文大全 > 公文范文 > 正文

极限编程在项目驱动沉浸式教学模式中的应用

时间:2022-11-24 18:10:03 来源:网友投稿


打开文本图片集

摘要:高校软件学院基于项目驱动教学方法中存在的实践性偏弱、项目实训中文档过多、项目与软件工程完整的课程体系的关联不足等问题,探索极限编程理论在项目驱动沉浸式教学模式的应用。沉浸式教学方法是一种贯穿软件工程专业课程教学全过程、基于极限编程理论的教学法。采用极限编程理论,可以使学生避开枯燥的软件工程文档,避免学生因看不到前期成果而失去兴趣。而沉浸式教学则可以将课程知识点分散在完整项目的各个子项目中,从而提高学生学习效率。

关键词:极限编程;沉浸式教学;项目驱动;软件工程

一、引言

高校工科计算机软件专业的本科教学人才培养目标是:培养出具有一定工程实践能力的高端技能型人才。国内高校软件学院蓬勃发展,其发展方向主要是加强校企联合,并积极推进基于项目案例的软件工程专业教学实践。然而,从企业反馈的情况来看,软件学院毕业的学生,其知识和能力与企业的实际需求还存在一定的落差。

二、当前项目驱动教学模式分析

(一)项目驱动教学模式

项目驱动教学(Project Based Teaching) 模式是一种建立在建构主义教学理论基础之上的教学方法,同时也是CDIO(Conceive、Implement、Design、Operate,即构思、设计、实现、运行)理念所倡导的教学模式。与传统教学方式不同,项目驱动教学模式要求以学生为中心,培养学生的积极性、主动性和创新精神,教师在整个教学过程中,主要起组织和指导的作用。从根本上将传统课堂上教师“满堂灌”的教学方式,转变为以学生自主学习、独立分析问题、解决问题为主导的教学方式。

(二)当前项目驱动教学存在的问题

当前,基于项目驱动案例教学主要存在以下问题:第一,重文档而轻结果,项目实施过程中文档过多,学生在冗长、枯燥的项目文档编写过程中,逐渐失去学习乐趣和学习主动性;第二,弱实践而重理论,随着计算机软件技术的发展,教学实践项目脱离应用背景,学生虽然能够理解并基本掌握课程理论知识,但是,在工程实践中遇到实际问题时却无处下手;第三,知识点孤立而不系统,软件工程是计算机科学与技术方向的一级学科,需要有相互关联的课程体系来支撑。学生在学习过程中,由于无法建立计算机软件工程专业的整体联系,对不同课程间的关联理解不够深入。因此,由于轻视软件工程、算法设计等理论指导性课程,重视具体的程序设计类,造成学生学习缺乏整体感和层次感。

(三)基于极限编程理论的沉浸式教学模式

針对以上问题,需要不同的解决方案。针对问题一,采用基于极限编程的沉浸式项目驱动教学模式,以最快的速度让学生看到项目实施结果,减少前期文档工作量,提高学习兴趣;针对问题二,采用基于企业实际生产环境部署的项目案例进行教学,理论与实践相结合;针对问题三,笔者提出沉浸式教学,即课程进度嵌入子项目中,当课程结束时子项目完成,当多门相关课程结束则完整项目完成。可以让学生在学习理论知识的同时,知道如何灵活运用这些理论知识来解决具体的工程问题。

笔者提出的基于极限编程的沉浸式项目驱动教学模式,可以贯穿软件工程专业学生的不同课程知识,让学生建立起系统、整体的知识结构体系。

三、基于极限编程理论的沉浸式教学模式

(一)项目驱动教学

项目驱动是以学生为中心,教师结合项目案例讲解课程知识,引导学生完成具体项目案例的教学模式。基于项目驱动的教学模式,可以把完整项目划分成若干个子项目,每个子项目都与这个项目有着密切的关联,把课程相关的知识点融入到这些子项目中,在项目迭代开发的过程中,加深学生对课程知识的理解,提高实践动手能力。

(二)沉浸式教学

沉浸式教学,即在语言类教学中,将学生“浸泡”在目的语言环境中。笔者借用了“沉浸式”的概念,让软件工程专业的学生在学习中始终“沉浸”在一个具体的项目工程中。学生在课程学习之初、学习过程中和学习结束后,始终贯穿着以下几个问题:本课程在项目开发过程中能做什么,能解决什么问题等,通过本课程在项目开发过程中的位置,理解本课程在实际中能解决什么工程问题,从整体上把握软件工程专业体系结构。

沉浸式教学通常运用在语言类、文学类专业课程教学方式中,在这些学科中已经有了大量的研究成果和实践应用,在计算机专业本科主干理论课中却很少采用。

笔者提出的沉浸式教学基本思路是贯穿课程教学始终,从课程学习的初期开始进行沉浸式教学。教学过程可以划分为三种类型:早期浸入式、中期浸入式和晚期浸入式。一般而言,早期浸入式是在本课程开始时,从实际项目中的应用开始导入课程的基本概念,阐述项目开发遇到的问题和本课程所能解决的问题;中期浸入式是指在教学过程中,以问题驱动模式来逐渐讲解课程章节内容,并逐次解决项目中遇到的问题;晚期浸入式是指在课程结束时对项目的总结和课程的复习相结合,使学生对本课程建立起相对完整的概念,解决学生对知识应用缺乏整体感的问题。

(三)极限编程

Kent Beck在1996 年提出极限编程( Extreme Programming,简称XP)的概念,极限编程是一种灵巧、重结果而轻文档的软件开发方法。XP将任务、系统细分为可以在较短周期解决的一个个子任务、子模块,并且强调测试、代码质量和及早发现问题。它将复杂的开发过程分解为一个个相对比较简单的小周期,提高了项目开发的灵活性。

传统的软件开发工程项目实施过程中,一般都遵循“可行性分析,系统设计、详细设计、项目编码、系统测试”等一系列步骤,由于最终实现需要长时间分析、建立文档,而前期的文档类工作冗长、枯燥,学生的积极性逐渐降低并失去主动性。XP 这种“短周期,常发布”的开发方式,能在较短时间内做出系统原型,使得学生很快看到项目开发的“成果”,从而提高学习积极性,进而主动产生学习、开发、完善项目的兴趣。

四、基于极限编程的项目驱动沉浸式教学模式分析

(一)项目案例的选择

一个完整、基于实际应用的项目案例,首先应该基于企业实际需求,其次,应尽可能涵盖软件工程专业学科课程体系。项目案例选取,应遵循如下原则:

第一,系统性:项目内容应基本涵盖软件工程课程的绝大部分知识点。

第二,实用性:选择的项目应有一定的综合性、实践性,即项目选择应基于实际应用的项目。

第三,渐进性:项目选择在实施过程中,应该符合软件工程基本流程,从易到难,逐次推进,项目完成应能看到具体的效果。

(二)项目案例与软件工程学科群的知识映射

一个符合项目案例选择系统性原则的项目案例,应该在项目实施的不同阶段,涵盖软件工程教学课程体系的大部分重要知识点。以企业ERP系统为例,企业实施ERP系统,需要将企业资源,如用户、客户、外协商、供货商、日程、业务、出入库、账务、车间制作、员工信息、业务沟通和基础信息等,进行统一管理,系统分别实现客户端、管理端和移动端。

研究所示的企业ERP对应传统项目驱动的教学方法,分为需求分析、概要和详细设计、系统实现、系统测试等。基于极限编程的项目驱动沉浸式教学模型,则省略前期文档阶段,直接开始项目分析和实施,表格说明一个具体的企业ERP项目案例与软件工程教学课程体系的知识映射关系,本表省略了项目实施部分阶段,如系统测试阶段。

(三)贯穿项目周期的沉浸式教學

根据表格所示,在项目实施的每个阶段,都需要软件工程不同课程的相关知识,因此,可以将完整的项目分解为多个子项目,子项目可继续细化,每一个子项目或更进一步细化的子项目,对应软件工程同一门课程,或不同课程中的不同知识点。因此,这种教学模式,可以贯穿软件工程专业的大部分科目,不同科目,可以通过选择其中的一个子项目来进行教学、演示和实训。

教学过程中将学生分组实施具体的子项目,引导学生一步步分析项目,弄清在完成项目的过程中,哪些可以运用已有知识解决,哪些是未知的并提出问题,充分调动学生的好奇心和学习积极性。

学生完成本课程体系中的大部分课程时,整个项目也顺利完成。由于具体课程教学需要较为全面的子项目,因此系统基于实际应用的完整项目选择尤其重要。

五、结论

实施基于极限编程理论下的项目驱动、沉浸式教学模型,通过选取贯穿全课程体系的、基于企业实际应用的完整项目案例,用极限编程的思想,忽略部分细节,减少项目文档工作量,可以让学生聚焦主要问题,迅速得到项目实施的结果。

通过建立课程群知识点与项目之间的映射关系,把完整项目分解成不同的子项目,建立不同的子目标。通过讲解、演示每一个子目标的具体知识点,可以促进学生从学习知识向提高能力上转化,发挥学生创造潜能,从而提高学生学习主动性,培养出更符合社会需求的软件工程类人才。

参考文献:

[1]徐雅斌,周维真,施运梅,等.项目驱动教学模式的研究与实践[J].辽宁工业大学学报(社会科学),2011,(3).

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

[3]殷海明,魏远旺.极限编程和项目驱动相结合的软件工程教学方法探究[J].新余学院学报, 2012,(3).

[4]唐成华,张瑞霞,张净.基于认知曲线的项目案例实践教学法研究[J].实验科学与技术, 2016,(6).

[5]苏统华,李全龙,涂志莹,等.校企共建模式的创新实验课程建设体系[J].计算机教育, 2017,(8).

推荐访问:沉浸 极限 驱动 编程 模式

猜你喜欢