对于多元整合的高职软件工程课程教学探索教育论文
[摘要]
任务驱动、项目导向、案例教学的教学方法各有其特点,文章结合浙江省经济发展对软件工程课程进行工作岗位定位、明确工作过程、分析工作任务,将“任务驱动、项目导向、案例教学”进行多元整合创新教学,并进行了探索与实践。
[关键词]
任务驱动 项目导向 案例教学 多元整合
一、引言
软件工程课程是高职软件专业类学生的专业核心课,是理论和实践紧密结合的典型课程,主要培养学生软件开发能力和项目管理能力。但在实际教学过程中,因为缺乏明确工作任务并涵盖课程理论知识的综合项目,学生对软件工程理论感到十分抽象,对实践操作也只是囫囵吞枣,根本体会不到软件工程在企业项目开发中的宝贵作用。
针对软件工程课程,国内职业教育课程在借鉴外来职业教育课程开发理论的基础上,也有自己的创新。有一部分学校已经在这方面进行了改革和探索,但大多是单一的、松散地进行,这一状况的形成,一部分是因为现实客观条件的制约,另一部分还在于职业教育课程理论研究的不全面、不深入所致,因此重视和加强高等职业教育课程多元整合是提高高职职教课程开发质量的一个中心环节。
本文将以高职软件工程课程为例,将“任务驱动、项目导向、案例教学”多元整合的创新教学理念引领教学过程,强调动手能力,将工作过程的职业环境融入学习过程中,将学生对知识、职业能力的掌握程度提高到了实践这一层面,使得学生能真正进入到“在学中做,在做中学”的理想学习环境中。
二、多元整合创新教学理念
软件工程课程涉及软件项目计划、软件需求分析、软件设计、软件测试、软件配置管理、软件项目管理等软件开发过程中的各种问题。浙江商业职业技术学院(以下简称“我院”)所在浙江省高新中小企业众多,发展主要依靠技术进步以及科技来推动,对人才的需求也明显高移。经调查发现,目前浙江省软件行业在软件设计、软件测试和软件维护方面的人才缺口大,供不应求。因此,我们将教学重点放在了软件设计、软件测试和软件维护方面。以一个典型、完整、实用的项目“学生选课管理系统”为载体,将软件工程项目开发中用到的各项工作技能按照工作过程分布阶段任务,将项目分解成一个个案例,以任务驱动的方式完成技能的案例教学,同时也体现了工作过程的完整性,将“任务驱动、项目导向、案例教学”多元整合的创新教学理念贯穿于教学过程。
(一)明确工作岗位,分析工作任务,任务驱动学习
任务驱动学习是让学生完成教师精心设计的培养职业能力的工作任务,构建真正属于自己的知识和技能,提高分析和解决问题的能力。如何确定软件工程课程的工作岗位和工作任务是进行任务驱动学习首先要解决的课题。
为此,我们邀请软件行业专家、专业教师参照国家相关职业标准一起分析、论证软件工程工作岗位的工作过程和技能要求。在进行分析论证过程中,根据我院所在浙江省高新中小企业发展实际,结合高职学生学习特点,将软件工程课程培养的人才方向定位在软件设计、软件测试和软件维护三个岗位。我们明确了这三个岗位的典型工作过程,并详细分析了典型工作过程中的典型工作任务。
1 软件设计岗位的典型工作过程主要包括软件项目计划、软件需求分析、软件设计阶段。这些工作过程的典型工作任务有:(1)软件项目计划包括:软件项目计划内容的描述;度量项目的成本、规模、工作量和开发周期;确定项目开发过程模型;制订软件项目计划;(2)软件需求分析包括:定义需求工程过程模型;采用UML获取项目需求;采用UML分析项目需求;编写项目需求规格说明书;(3)软件设计阶段包括:策划项目的设计阶段;应用设计模式,执行系统的架构设计。
2 软件测试岗位的典型工作过程主要是软件测试阶段。其典型工作任务包括:软件项目单元测试用例设计;执行软件项目单元测试;软件项目功能测试用例设计;执行软件项目功能测试;软件项目性能测试用例设计;执行软件项目性能测试;软件项目压力测试用例设计;执行软件项目压力测试。
3 软件维护岗位的典型工作过程主要包括软件配置阶段和软件项目管理阶段。这些工作过程的典型工作任务有:(1)软件配置阶段包括:创建软件项目配置管理计划;对软件项目实施版本控制;(2)软件项目管理阶段包括:对软件项目进行项目估算;对软件项目进行风险管理;对软件项目进行质量管理。
(二)设计教学项目,培养职业能力,项目导向教学
项目导向教学是指通过一项完整的项目工作而进行教学活动的教学方法,它以项目导向、任务驱动,引领教学过程,强调实训环节,将工作过程的职业环境融入学习过程中,将学生对知识的掌握程度提高到了实践这一层面,使得学生能真正进入到“在学中做,在做中学”的理想学习环境中,使学生在学习过程中培养工作岗位职业能力。
我院软件工程课程定位的软件设计、软件测试和软件维护三个岗位有不同的职业能力要求,通过与专家分析论证,我们明确了三个岗位要培养的职业能力:
1 软件设计岗位。要求要培养的职业能力有:理解、实施软件项目计划的能力,编写、制定软件项目计划文档的能力;获取、分析软件项目需求的能力,编写软件项目需求分析文档的能力:理解项目数据模型、项目的架构设计的能力;编写软件项目设计规格说明书的能力。
2 软件测试岗位。要求要培养的职业能力有:设计和实施单元测试用例、功能测试用例、性能测试用例、压力测试用例的能力;撰写测试计划、报告的能力。
3 软件维护岗位。要求要培养的职业能力有:实施软件项目配置计划、管理的能力;实施软件版本控制的能力;估算项目成本、规模、进度的.能力;预测、监控、计划、管理软件风险,实施软件质量保证计划的能力。
为了与岗位工作过程相适应,能够在项目教学过程中培养学生的职业能力,在设计教学项目的选择上我们从以下几个方面进行了探索:第一,项目必须包含上述岗位的基本工作过程,能够培养学生职业技能;第二,项目难度适中,符合高职学生的知识、技能结构特点;第三,项目开发周期相对较短,能够在教学时间内完成;第四,项目内容容易理解,贴近学生经验,以便学生集中精力完成软件工程工作过程的学习。 为此,我们精心设计了“学生选课管理系统”来进行项目教学,引入企业真实项目“网上书城”系统来进行模拟训练。这两个项目背景高职学生易理解、掌握和操作,并且包含了上述三个工作岗位职业能力。通过几个学年的教学实践发现,学生基本能掌握三个工作岗位的职业能力,并根据自己的兴趣有所侧重,完全达到了我们项目导向教学的目的。
(三)分解教学项目,激发学习兴趣,典型案例教学
案例教学实际上是一种“做中学”的形式,在经验和活动中获取知识和技能,增进才干。软件工程案例教学的实践反映出,案例选择是否合适、案例运用是否科学将直接影响到案例教学作用的发挥。
对于软件工程这样一门理论和实践都比较注重的课程来说,案例教学就显得特别重要。我们在案例教学中进行了以下探索和实践:
第一,案例贴近学生生活,删繁就简,能适应课程教学时限要求;
第二,案例有代表性和针对性,能基本涵盖基本的工作任务;
第三,案例能让学生参与并易于模仿实践。如讲解软件项目计划时,针对学生选课管理系统这个项目,由老师描述项目计划应该要确定的内容,并引导学生分组讨论确定项目中角色一人员责任矩阵,利用甘特图等工具制订初步软件项目计划。这样学生不仅仅是去强记那些固定的原理、规则。学生通过案例更深刻地理解了工作过程中需要掌握的技能。
三、多元整合教学的探索与实践
任务驱动、项目导向、案例教学的教学方法各有特色,如何将这些教学方法整合在一个具体的教学项目中并让各种教学方法发挥其优点是我们要重点解决的问题。按照软件工程项目开发中典型的工作过程,我们将“学生选课管理系统”项目分解成一个个的小项目,每一个小项目对应着一个具体工作过程。对每一个小项目我们分成六个步骤进行项目教学:
第一步,确定每一个小项目的工作任务。不同的小项目对应的工作任务不同,有的工作任务比较独立、花费时间少,可以在—个教学单元中完成,我们称之为小任务;有的工作任务需要多个教学单元的综合实践才能完成,我们称之为大任务;在教学过程中,对大任务我们又将其分为若干小任务,并在各个小任务完成后进行分析总结,以便学生系统全面地掌握相应的职业能力。
第二步,教师进行案例场景描述,并通过典型案例演示项目中的具体任务。教师先对案例进行场景描述,让学生明白真实工作过程中这个小项目要做什么。然后通过典型案例的演示让学生体会到这个小项目要怎么做。
第三步,学生分组讨论,明确项目分工。软件的开发过程是一个团队合作的过程,将学生从成绩、性格、表达能力等方面进行分组,让不同的学生组合成一个团队进行项目的开发,既培养学生团队合作的精神,又让学生能发挥各自特长,调动学生积极性。在此步骤中,教师可以根据实际教学班组从整体上对团队的组合进行优化调整,对于一些比较难分工的项目,教师可以对团队进行指导,帮助团队进行分工。
第四步,学生根据不同分工完成典型案例的工作任务。通过项目分工,团队中每个学生有了明确的任务,可以根据教师典型案例的演示进行工作任务的模拟练习。通过这一步,让学生对工作过程和工作任务有真正的感性认识,有利于培养学生的职业能力。
第五步,总结工作任务成果,分析评价工作质量。通过一个或多个教学单元的学生项目实践,每个团队都完成了自己的工作任务,有了局部的成果。在此步骤中,教师可以将不同团队的工作成果之间进行横向比较,将团队中各位学生的工作成果和典型案例演示中的工作成果进行纵向比较。通过横向和纵向的比较,让团队中每一位学生知道整个团队做了什么,做得如何,自己发挥了什么作用,自己需要提高和注意的地方在哪里,这对学生职业能力的培养至关重要。
第六步,学生反复模拟训练。通过课堂上的典型案例的教学和学生实践,学生对工作过程和工作任务有了基本认识和体会。为加深学生认识和印象,我们将企业项目引入课堂,让团队依据“学生选课管理系统”进行“网上书城”项目的模拟训练。学生及团队独立完成项目的全过程,可以积累真实的企业项目工作经验。
【对于多元整合的高职软件工程课程教学探索教育论文】相关文章: