论文部分内容阅读
摘要:针对软件工程课程的教学特点、现状和存在问题,提出了以IEEE发布的软件工程知识体系为基础的课程体系,强调案例化教学和探索式学习,设计适合学生特点的课程实验项目,建立小组式开发环境,使学生在理解和实践的基础上掌握当前软件工程的方法、技术和工具。为使高职院校学生能够接触并掌握最新的软件工程开发环境及软件CASE工具,提出了校企结合软件工程教学的新路子。
关键词:软件工程;教学改革;校企结合;产学结合
《软件工程》是一门研究用工程化方法构建和维护有效的、实用的和高质量软件的学科,是将系统性的、规范化的、可定量的方法应用于软件的开发、运行和维护,其重点在于软件的分析与评价、规格说明、设计和演化,同时还涉及管理、质量、创新、标准、个人技能、团队协作和专业实践等。高职学生通过软件工程课程的学习,能够了解和掌握软件工程的理论、技术和方法,具备从事软件技术工作所需的专业能力。由于软件工程是一门综合性和实践性很强的课程,同时又是软件专业的核心课程,故加强软件工程课程的创新,改革传统的教学模式,弥补实践环节存在的不足是十分必要的。
一、软件工程课程的现状与问题
国内高校对于软件工程课程传统的教学模式是以教师课堂授课为主。许多教师本身缺乏使用软件工程方法开发一个完整系统的经验,不能将当前软件企业的实际案例融入到基本原理的讲解之中,与实际的软件工程实践有明显的差距。所谓课程实验也是在一个缺少软件工程支持的开发环境下进行的。由于缺少适合高职学生教学使用的实验环境和资料,学生也只是编写一些规定的软件过程文档,根本得不到真正的锻炼。软件工程课程教学与实践和软件开发过程实践脱节。在这种情况下,学生学习软件工程课程,感到内容抽象、枯燥,甚至认为没什么实用价值。另外,随着软件工程学科的发展,新概念、新技术和新方法不断涌现,原有的教学模式已经不能适应学科发展和人才培养的要求,所以研究学科发展和最新技术,构建先进的课程体系,是亟待解决的问题。
二、软件工程课程改革的对策
1.规划新的软件工程课程体系
以IEEE最新的软件工程知识体系为基础,在基础、应用、实践三个层次上建立软件工程的课程体系,如图1所示。
(1)基础部分:课程知识单元覆盖IEEE发布的软件工程知识体系(SWEBOK),包括软件需求、软件设计、软件实现、软件测试、软件演化、软件过程、软件质量、软件配置管理和软件项目管理等核心内容。
(2)应用部分:以当前流行的统一开发过程、面向对象技术和UML语言为核心,融入企业的最佳实践和实际案例,覆盖IEEE的系列软件工程标准以及RUP、Rational Rose、VSS、Junit等软件工程工具和环境,使学生掌握当前先进的软件工程方法与技术。
(3)实践部分:要求学生以开发团队的方式协作开发一个具有一定规模的软件系统,建立支持小组开发的软件开发支持环境,让学生从“可实践”软件工程的角度学习和运用软件工程的思想和现代软件开发技术解决软件开发问题。
2.推行案例化教学和探索式学习
软件工程的理论和方法是从众多软件开发实践中总结出来的,但是,对于缺乏软件开发实际经验的高职学生来说,单纯地讲授理论知识往往会使学生感到枯燥无味且难以理解。因此,应将一些软件开发案例贯穿于理论知识的讲解中,使学生真正理解这些理论知识,建立软件开发的系统化与工程化观念和质量意识。
例如,在教学过程中,从软件开发的实际案例中总结出不同的软件系统,结合这些系统的特点和开发策略,讲解瀑布模型、原型化方法、增量模型、形式化方法和基于组件的开发模型等,会使学生在思考、分析和讨论过程中更好地理解和体会软件过程的基本概念,并且有利于在实际开发中运用这些过程模型组织开发过程。
在软件工程技术方面,也可结合具体教学案例,论述需求工程、软件体系结构设计、用户界面设计、详细设计、软件测试和软件演化等内容,重点讨论基于用例的面向对象方法和组件技术。
在整个教学过程中,要注重鼓励和引导探索式学习,学生通过文献查阅以及与软件企业人员的接触交流,会真正体会当前软件工程业界的真实案例和最佳实践。课堂讲解避免“一言谈”的死板方式,采取课堂互动讨论,营造活跃、宽松的课堂气氛,鼓励学生结合课程实践中的问题进行专题报告和软件演示。
在常规的课堂教学之外,要辅之以网络课程和扩展资源,鼓励学生根据个人兴趣和需要进行自主式的学习。同时,要充分利用网络教学平台,加强师生之间的交流和学生之间的协作,引导学生积极思考和参与讨论,教师要由知识的灌输者成为学习的引导者,学生由被动地接受教育变成主动地探索知识。
实践教学是本课程中的一个重要组成部分,它要求学生以開发小组(一个小组通常由3~5人组成)的方式开发一个具有一定规模的软件系统,侧重培养学生发现问题、独立分析问题和解决问题的能力以及团队合作精神,使学生初步体会到一个软件开发项目全过程。
3.探索校企结合、产学结合的软件工程教学的新路子
为了适应快速发展变化的软件开发环境,使高职院校培养合格的软件技术人员,提高他们的软件工程CASE工具的应用能力,高校与软件CASE工具开发商要本着“优势互补,互惠互利,共同发展”的原则,可在软件工程实验室共建(企业提供教学软件)、人才培训、课题研究等方面进行合作。下面以软件企业西安楚凡科技有限公司为例,介绍高校与软件CASE工具开发商的合作内容与形式。
(1)共建软件工程实验室
楚凡科技向高校赠送由企业自主研发的教学版UML建模工具——Trufun Plato 2008专业版用于共建软件工程实验室,提供教学和学生上机实践;
楚凡科技在高校教学过程中提供免费电话、email咨询等方面产品应用支持。
(2)课程合作
楚凡科技将以优惠价格提供相关授课教师参加初中高级收费公开课培训;
高校与楚凡科技合作开展面向学生的uml理论和实战培训;
高校与楚凡科技合作开设学生毕业实习平台,提供真实项目供实习学生操作,实现项目全程建模过程,培养学生掌握软件项目的分析与设计方法;
楚凡科技配合高校老师编写教材或共同出版教材;
(3)科研合作
高校在课题研究中需要采购更高版本产品用于研发实践,楚凡科技给予产品优惠支持;
楚凡科技可以在高校相关的科研项目中提供技术支持、技术合作。
通过这种学校与软件厂商之间的合作可以有效地推动高校中的软件工程实验室建设,使教师和学生能够接触并掌握最新的软件工程开发环境及软件CASE工具,并将学习过程与毕业设计相结合,实现真实项目全程建模过程,培养高职院校软件专业学生软件开发中的项目分析与设计能力。
三、结语
根据高职生培养目标中的“实用性、技能型”要求和加强实践教学的新特点,认真分析软件工程学科的当前发展趋势和现代软件工程人才的社会需求,积极探索和实践软件工程的课程教学改革具有十分重要的意义。在教学内容方面,应突出先进性、系统性和工程化;在教学方法方面,应将课堂式讲授、互动式讨论和探索式学习结合在一起;在教学实践方面,应建立适合学生小组开发的软件工程支持环境,结合毕业设计目标围绕实际项目开展教学实践。
参考文献:
[1] 刘强.“软件工程”课程教学改革的探索与实践[J].教育部
高等学校教学指导委员会通讯,2008,(8).
[2] IEEE-CS,Guide to the Software Engineering Body of Knowledge,
2004 Version,http://www.swebok.org.
关键词:软件工程;教学改革;校企结合;产学结合
《软件工程》是一门研究用工程化方法构建和维护有效的、实用的和高质量软件的学科,是将系统性的、规范化的、可定量的方法应用于软件的开发、运行和维护,其重点在于软件的分析与评价、规格说明、设计和演化,同时还涉及管理、质量、创新、标准、个人技能、团队协作和专业实践等。高职学生通过软件工程课程的学习,能够了解和掌握软件工程的理论、技术和方法,具备从事软件技术工作所需的专业能力。由于软件工程是一门综合性和实践性很强的课程,同时又是软件专业的核心课程,故加强软件工程课程的创新,改革传统的教学模式,弥补实践环节存在的不足是十分必要的。
一、软件工程课程的现状与问题
国内高校对于软件工程课程传统的教学模式是以教师课堂授课为主。许多教师本身缺乏使用软件工程方法开发一个完整系统的经验,不能将当前软件企业的实际案例融入到基本原理的讲解之中,与实际的软件工程实践有明显的差距。所谓课程实验也是在一个缺少软件工程支持的开发环境下进行的。由于缺少适合高职学生教学使用的实验环境和资料,学生也只是编写一些规定的软件过程文档,根本得不到真正的锻炼。软件工程课程教学与实践和软件开发过程实践脱节。在这种情况下,学生学习软件工程课程,感到内容抽象、枯燥,甚至认为没什么实用价值。另外,随着软件工程学科的发展,新概念、新技术和新方法不断涌现,原有的教学模式已经不能适应学科发展和人才培养的要求,所以研究学科发展和最新技术,构建先进的课程体系,是亟待解决的问题。
二、软件工程课程改革的对策
1.规划新的软件工程课程体系
以IEEE最新的软件工程知识体系为基础,在基础、应用、实践三个层次上建立软件工程的课程体系,如图1所示。
(1)基础部分:课程知识单元覆盖IEEE发布的软件工程知识体系(SWEBOK),包括软件需求、软件设计、软件实现、软件测试、软件演化、软件过程、软件质量、软件配置管理和软件项目管理等核心内容。
(2)应用部分:以当前流行的统一开发过程、面向对象技术和UML语言为核心,融入企业的最佳实践和实际案例,覆盖IEEE的系列软件工程标准以及RUP、Rational Rose、VSS、Junit等软件工程工具和环境,使学生掌握当前先进的软件工程方法与技术。
(3)实践部分:要求学生以开发团队的方式协作开发一个具有一定规模的软件系统,建立支持小组开发的软件开发支持环境,让学生从“可实践”软件工程的角度学习和运用软件工程的思想和现代软件开发技术解决软件开发问题。
2.推行案例化教学和探索式学习
软件工程的理论和方法是从众多软件开发实践中总结出来的,但是,对于缺乏软件开发实际经验的高职学生来说,单纯地讲授理论知识往往会使学生感到枯燥无味且难以理解。因此,应将一些软件开发案例贯穿于理论知识的讲解中,使学生真正理解这些理论知识,建立软件开发的系统化与工程化观念和质量意识。
例如,在教学过程中,从软件开发的实际案例中总结出不同的软件系统,结合这些系统的特点和开发策略,讲解瀑布模型、原型化方法、增量模型、形式化方法和基于组件的开发模型等,会使学生在思考、分析和讨论过程中更好地理解和体会软件过程的基本概念,并且有利于在实际开发中运用这些过程模型组织开发过程。
在软件工程技术方面,也可结合具体教学案例,论述需求工程、软件体系结构设计、用户界面设计、详细设计、软件测试和软件演化等内容,重点讨论基于用例的面向对象方法和组件技术。
在整个教学过程中,要注重鼓励和引导探索式学习,学生通过文献查阅以及与软件企业人员的接触交流,会真正体会当前软件工程业界的真实案例和最佳实践。课堂讲解避免“一言谈”的死板方式,采取课堂互动讨论,营造活跃、宽松的课堂气氛,鼓励学生结合课程实践中的问题进行专题报告和软件演示。
在常规的课堂教学之外,要辅之以网络课程和扩展资源,鼓励学生根据个人兴趣和需要进行自主式的学习。同时,要充分利用网络教学平台,加强师生之间的交流和学生之间的协作,引导学生积极思考和参与讨论,教师要由知识的灌输者成为学习的引导者,学生由被动地接受教育变成主动地探索知识。
实践教学是本课程中的一个重要组成部分,它要求学生以開发小组(一个小组通常由3~5人组成)的方式开发一个具有一定规模的软件系统,侧重培养学生发现问题、独立分析问题和解决问题的能力以及团队合作精神,使学生初步体会到一个软件开发项目全过程。
3.探索校企结合、产学结合的软件工程教学的新路子
为了适应快速发展变化的软件开发环境,使高职院校培养合格的软件技术人员,提高他们的软件工程CASE工具的应用能力,高校与软件CASE工具开发商要本着“优势互补,互惠互利,共同发展”的原则,可在软件工程实验室共建(企业提供教学软件)、人才培训、课题研究等方面进行合作。下面以软件企业西安楚凡科技有限公司为例,介绍高校与软件CASE工具开发商的合作内容与形式。
(1)共建软件工程实验室
楚凡科技向高校赠送由企业自主研发的教学版UML建模工具——Trufun Plato 2008专业版用于共建软件工程实验室,提供教学和学生上机实践;
楚凡科技在高校教学过程中提供免费电话、email咨询等方面产品应用支持。
(2)课程合作
楚凡科技将以优惠价格提供相关授课教师参加初中高级收费公开课培训;
高校与楚凡科技合作开展面向学生的uml理论和实战培训;
高校与楚凡科技合作开设学生毕业实习平台,提供真实项目供实习学生操作,实现项目全程建模过程,培养学生掌握软件项目的分析与设计方法;
楚凡科技配合高校老师编写教材或共同出版教材;
(3)科研合作
高校在课题研究中需要采购更高版本产品用于研发实践,楚凡科技给予产品优惠支持;
楚凡科技可以在高校相关的科研项目中提供技术支持、技术合作。
通过这种学校与软件厂商之间的合作可以有效地推动高校中的软件工程实验室建设,使教师和学生能够接触并掌握最新的软件工程开发环境及软件CASE工具,并将学习过程与毕业设计相结合,实现真实项目全程建模过程,培养高职院校软件专业学生软件开发中的项目分析与设计能力。
三、结语
根据高职生培养目标中的“实用性、技能型”要求和加强实践教学的新特点,认真分析软件工程学科的当前发展趋势和现代软件工程人才的社会需求,积极探索和实践软件工程的课程教学改革具有十分重要的意义。在教学内容方面,应突出先进性、系统性和工程化;在教学方法方面,应将课堂式讲授、互动式讨论和探索式学习结合在一起;在教学实践方面,应建立适合学生小组开发的软件工程支持环境,结合毕业设计目标围绕实际项目开展教学实践。
参考文献:
[1] 刘强.“软件工程”课程教学改革的探索与实践[J].教育部
高等学校教学指导委员会通讯,2008,(8).
[2] IEEE-CS,Guide to the Software Engineering Body of Knowledge,
2004 Version,http://www.swebok.org.