论文部分内容阅读
摘要:本文结合教学实践的体会,分析了郑州轻工业学院计算机与通信工程学院“软件工程”教学方法中存在的问题,根据现代软件工程技术的发展需要,提出新的软件工程教学模式,重新定位“软件工程”由理论性学科到工程型学科的转变,并从教学内容、教学方法、教学实践等提出新的解决方法和建议。
关键词:软件工程;教学方法;教学实践
作者简介:宋宝卫(1971-),男,河南社旗人,郑州轻工业学院计算机与通信工程学院,讲师,工学硕士,主要研究方向:数据库技术、软件工程;黄永丽(1978-),女,河南民权人,郑州轻工业学院计算机与通信工程学院,讲师,工学硕士,主要研究方向:图形与图像、软件工程。(河南 郑州 450002)
“软件工程”是计算机科学与技术和软件工程专业的一门专业核心课程,涉及软件开发技术、过程和管理等诸多方面,是一门理论和实践并重的专业课程,其教学目的是使学生了解和掌握软件工程的方法、技术和思想,具备未来软件工程师所需要的专业技能。[1]但在实际教学中存在很多问题,教学结果也达不到预期的效果。在很多高校该课程成为“鸡肋”,处于食之无味、弃之可惜的教学状态,很多教师认为它是理论性很强的学科,再加上自身工程实践薄弱而不愿讲授,学生也不愿学习,基于这种情形并根据笔者所在郑州轻工业学院的教学实践对软件工程的教学改革提出下面的建议。
一、研究软件工程新技术,调整“软件工程”教学模式
1.“软件工程”课程教学的重新定位
软件工程采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它,[2]重点强调理论教学。根据郑州轻工业学院计算机与通信工程学院(以下简称“我院”)计算机专业和软件工程专业的实际特点,重新定位软件工程这门学科为“工程型“,主要涉及计算机学科的理论、抽象、设计三个形态,又关注于工程学科的系统性、规范性和可度量性等基本属性,突出教学实践环节和软件形态开发能力的培养,将它作为一门理论与实践并重的专业基础课程。[1]
与传统软件工程教学相比,工程型教学打破“软件工程”定位于“理论教学“的僵局模式,重新定位在两点:一点是从软件生命周期的角度讲解软件工程的基本理论和基本方法;二点是从系统工程的角度讲述层次性、系统性、规范性等,主要强调软件设计和工程实践。目标是学生通过实践工程的建设获得基础技能、团队合作、分析与解决问题以及创新和发展能力。
2.研究新技术,创建新的课程内容
随着“软件工程”学科的新概念、新技术和新方法不断涌现,原有的教学内容已经不能适应新形势下对学生的培养要求,及时调整现有的学时条件及“软件工程”系列课程的整体规划,结合基础知识、先进技术和工程实践等方面组织整个课程内容(见表1),为后续结合专业方向继续深入学习打下坚实的基础。
二、研究现代软件工程的特点,调整“软件工程”的教学方法
现代软件工程的技术、方法和管理更新较快,再结合软件工程的重定位和软件教学内容的更新,“软件工程”教学方法的调整成为必然。传统的教学方法现象:教师借助多媒体的教学手段,在课堂上口若悬河地讲解理论,而学生一头雾水被动接受——填鸭式教学。根据我院学生专业的特点,引入国外软件工程培训的教学理念,引导以“模型为中心”,基于软件工厂的教学框架,[3]具体方法如下。
1.软件工厂的组织
组织教学案例集。将学院在商业界中成功的软件案例组织起来,形成一个“软件工厂”,软件工厂中每个案例都严格遵循软件开发的标准流程,从软件的定义到软件的交付等,在每一阶段都附有详细的文档和流程说明,并在实际教学中不断地充实、完善和更新软件工厂的案例集。这样就可以在每学期所学各专业的特点,针对性地选择案例进行教学,如郑州轻工业学院国际教育学院的互联网专业的学生选修软件工程这门学科时,案例教学就偏向电子商务方向,如选择教学案例——“网上书店”的架构等,使学生能体会所学的知识技能应用于不同的商业领域,也增加学生运用知识的信心。
2.教師教学引导
根据每一学期的“软件工程”课程内容,从软件工厂的实际项目中重新组织授课讲义。这主要依赖教师在课堂上借助多媒体的教学手段,通过分析实际案例,传授“软件工程”的技术知识和解决问题的能力与技巧。
3.引导实践和探索
与课堂教学相辅的就是教学实验课,如何利用实验加强“软件工程”的教学,取得预期的实验教学目的是“软件工程”新教学方法的关键。这主要采用引导和探索教学的方法,在课堂教授的基础上,给学生布置类似的或比课堂讲授更复杂的问题,并制定相应的开发计划和方案,在实验课上引导学生查阅与项目相关的各种信息来源,着手解决新的问题,这是学生将所学的概念立即应用到实践并加以巩固的最好方法。
4.独立实践
通过课堂教学和课内实验的训练,学生对于如何解决一实际软件项目有了一定的了解和解决方法与技能,也掌握了软件开发的方法学、过程及相应的开发环境,也就为该课程设计打下了良好的基础。由此每一学期结束前的第18周安排一周的“软件工程”的课程设计,通过课程设计,培养学生独立实践的能力,也展示了独立解决问题的技能以及培养学生团队合作和创新发展的能力。
三、研究现代软件工程的实践特点,调整软件工程实践教学方式
教学方法中谈到引导实践的重要性,它主要是通过实践教学环节实现的。实践教学的目的就是要求学生在教师的引导下完成一个与专业相关的软件项目的开发,通过实践环节的训练,学生才能把理论知识与实际的软件开发相结合,在实际工作中得到锻炼和提高。我院“软件工程”实践教学环节的改革内容如下。
1.实践教学目标的新转移
传统的“软件工程”实践教学目的是通过一个简单软件项目的开发,引导学生熟悉国家软件开发过程中需求、设计及测试等软件文档的撰写方法,而真正忽略了软件开发的组织和过程管理。根据现代软件工程的特点和工程型软件工程的教学方法,实践教学的重点在于经历软件项目开发的管理、设计、实现、维护等重要的活动,对软件生命周期、系统工程和质量管理形成感性认识。
2.组织开发团队
实践教学要求学生以分组(通常由3~5人组建一个小组)的方式开发一个具有一定规模的软件系统,侧重培养学生发现问题、独立分析问题和解决问题的能力以及团队合作精神,使学生初步体会到一个软件开发项目的全过程。
3.实践课题的选择
实践课程的题目来自软件工程的实际项目,根据所授专业的不同以及学生的兴趣和爱好,选择不同类型的题目。原则上,这类项目有实际的应用背景、中等规模且需求相对直观,并以学生较为熟悉的内容为主,如银行ATM系统的开发等。
4.明确实验过程
实践课程实验项目的软件开发过程分为:实验前准备工作(分组、项目选择、调研等)、需求分析、软件设计、软件实现(编码和测试)、系统集成和软件交付使用及软件维护。在正常的实验环节可取消软件维护的内容。
5.创建适合小组的软件工程环境
要真正掌握软件工程的思想和方法,仅提供一个软件开发项目是远远不够的,学生需要在一个相对真实的环境中开发软件,才能够体会软件工程所讲述的方法学、过程模型和开发环境的相互关系以及软件管理技术的应用,从而提高学生独立分析问题、解决问题的能力以及团队合作的能力。
四、结束语
实践证明,我院所开展的“软件工程”教学改革是成功的,通过新的教学方法、教学实践和项目小组管理方式,使学生较早投入到软件项目开发的实践当中,如学生参与并实现我院精品课程网站的设计、毕业设计管理系统的设计与实现等,激发学生的创造潜能,提高学生的动手能力,为将来就业打下良好的基础。
参考文献:
[1]高等学校计算机科学与技术专业“软件工程”课程教学实施方案[R].2010.
[2]张海藩.软件工程导论[M].北京:清华大学出版社,2008.
[3]java programming[OL].http://www.niit.com.
(责任编辑:苏宇嵬)
关键词:软件工程;教学方法;教学实践
作者简介:宋宝卫(1971-),男,河南社旗人,郑州轻工业学院计算机与通信工程学院,讲师,工学硕士,主要研究方向:数据库技术、软件工程;黄永丽(1978-),女,河南民权人,郑州轻工业学院计算机与通信工程学院,讲师,工学硕士,主要研究方向:图形与图像、软件工程。(河南 郑州 450002)
“软件工程”是计算机科学与技术和软件工程专业的一门专业核心课程,涉及软件开发技术、过程和管理等诸多方面,是一门理论和实践并重的专业课程,其教学目的是使学生了解和掌握软件工程的方法、技术和思想,具备未来软件工程师所需要的专业技能。[1]但在实际教学中存在很多问题,教学结果也达不到预期的效果。在很多高校该课程成为“鸡肋”,处于食之无味、弃之可惜的教学状态,很多教师认为它是理论性很强的学科,再加上自身工程实践薄弱而不愿讲授,学生也不愿学习,基于这种情形并根据笔者所在郑州轻工业学院的教学实践对软件工程的教学改革提出下面的建议。
一、研究软件工程新技术,调整“软件工程”教学模式
1.“软件工程”课程教学的重新定位
软件工程采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它,[2]重点强调理论教学。根据郑州轻工业学院计算机与通信工程学院(以下简称“我院”)计算机专业和软件工程专业的实际特点,重新定位软件工程这门学科为“工程型“,主要涉及计算机学科的理论、抽象、设计三个形态,又关注于工程学科的系统性、规范性和可度量性等基本属性,突出教学实践环节和软件形态开发能力的培养,将它作为一门理论与实践并重的专业基础课程。[1]
与传统软件工程教学相比,工程型教学打破“软件工程”定位于“理论教学“的僵局模式,重新定位在两点:一点是从软件生命周期的角度讲解软件工程的基本理论和基本方法;二点是从系统工程的角度讲述层次性、系统性、规范性等,主要强调软件设计和工程实践。目标是学生通过实践工程的建设获得基础技能、团队合作、分析与解决问题以及创新和发展能力。
2.研究新技术,创建新的课程内容
随着“软件工程”学科的新概念、新技术和新方法不断涌现,原有的教学内容已经不能适应新形势下对学生的培养要求,及时调整现有的学时条件及“软件工程”系列课程的整体规划,结合基础知识、先进技术和工程实践等方面组织整个课程内容(见表1),为后续结合专业方向继续深入学习打下坚实的基础。
二、研究现代软件工程的特点,调整“软件工程”的教学方法
现代软件工程的技术、方法和管理更新较快,再结合软件工程的重定位和软件教学内容的更新,“软件工程”教学方法的调整成为必然。传统的教学方法现象:教师借助多媒体的教学手段,在课堂上口若悬河地讲解理论,而学生一头雾水被动接受——填鸭式教学。根据我院学生专业的特点,引入国外软件工程培训的教学理念,引导以“模型为中心”,基于软件工厂的教学框架,[3]具体方法如下。
1.软件工厂的组织
组织教学案例集。将学院在商业界中成功的软件案例组织起来,形成一个“软件工厂”,软件工厂中每个案例都严格遵循软件开发的标准流程,从软件的定义到软件的交付等,在每一阶段都附有详细的文档和流程说明,并在实际教学中不断地充实、完善和更新软件工厂的案例集。这样就可以在每学期所学各专业的特点,针对性地选择案例进行教学,如郑州轻工业学院国际教育学院的互联网专业的学生选修软件工程这门学科时,案例教学就偏向电子商务方向,如选择教学案例——“网上书店”的架构等,使学生能体会所学的知识技能应用于不同的商业领域,也增加学生运用知识的信心。
2.教師教学引导
根据每一学期的“软件工程”课程内容,从软件工厂的实际项目中重新组织授课讲义。这主要依赖教师在课堂上借助多媒体的教学手段,通过分析实际案例,传授“软件工程”的技术知识和解决问题的能力与技巧。
3.引导实践和探索
与课堂教学相辅的就是教学实验课,如何利用实验加强“软件工程”的教学,取得预期的实验教学目的是“软件工程”新教学方法的关键。这主要采用引导和探索教学的方法,在课堂教授的基础上,给学生布置类似的或比课堂讲授更复杂的问题,并制定相应的开发计划和方案,在实验课上引导学生查阅与项目相关的各种信息来源,着手解决新的问题,这是学生将所学的概念立即应用到实践并加以巩固的最好方法。
4.独立实践
通过课堂教学和课内实验的训练,学生对于如何解决一实际软件项目有了一定的了解和解决方法与技能,也掌握了软件开发的方法学、过程及相应的开发环境,也就为该课程设计打下了良好的基础。由此每一学期结束前的第18周安排一周的“软件工程”的课程设计,通过课程设计,培养学生独立实践的能力,也展示了独立解决问题的技能以及培养学生团队合作和创新发展的能力。
三、研究现代软件工程的实践特点,调整软件工程实践教学方式
教学方法中谈到引导实践的重要性,它主要是通过实践教学环节实现的。实践教学的目的就是要求学生在教师的引导下完成一个与专业相关的软件项目的开发,通过实践环节的训练,学生才能把理论知识与实际的软件开发相结合,在实际工作中得到锻炼和提高。我院“软件工程”实践教学环节的改革内容如下。
1.实践教学目标的新转移
传统的“软件工程”实践教学目的是通过一个简单软件项目的开发,引导学生熟悉国家软件开发过程中需求、设计及测试等软件文档的撰写方法,而真正忽略了软件开发的组织和过程管理。根据现代软件工程的特点和工程型软件工程的教学方法,实践教学的重点在于经历软件项目开发的管理、设计、实现、维护等重要的活动,对软件生命周期、系统工程和质量管理形成感性认识。
2.组织开发团队
实践教学要求学生以分组(通常由3~5人组建一个小组)的方式开发一个具有一定规模的软件系统,侧重培养学生发现问题、独立分析问题和解决问题的能力以及团队合作精神,使学生初步体会到一个软件开发项目的全过程。
3.实践课题的选择
实践课程的题目来自软件工程的实际项目,根据所授专业的不同以及学生的兴趣和爱好,选择不同类型的题目。原则上,这类项目有实际的应用背景、中等规模且需求相对直观,并以学生较为熟悉的内容为主,如银行ATM系统的开发等。
4.明确实验过程
实践课程实验项目的软件开发过程分为:实验前准备工作(分组、项目选择、调研等)、需求分析、软件设计、软件实现(编码和测试)、系统集成和软件交付使用及软件维护。在正常的实验环节可取消软件维护的内容。
5.创建适合小组的软件工程环境
要真正掌握软件工程的思想和方法,仅提供一个软件开发项目是远远不够的,学生需要在一个相对真实的环境中开发软件,才能够体会软件工程所讲述的方法学、过程模型和开发环境的相互关系以及软件管理技术的应用,从而提高学生独立分析问题、解决问题的能力以及团队合作的能力。
四、结束语
实践证明,我院所开展的“软件工程”教学改革是成功的,通过新的教学方法、教学实践和项目小组管理方式,使学生较早投入到软件项目开发的实践当中,如学生参与并实现我院精品课程网站的设计、毕业设计管理系统的设计与实现等,激发学生的创造潜能,提高学生的动手能力,为将来就业打下良好的基础。
参考文献:
[1]高等学校计算机科学与技术专业“软件工程”课程教学实施方案[R].2010.
[2]张海藩.软件工程导论[M].北京:清华大学出版社,2008.
[3]java programming[OL].http://www.niit.com.
(责任编辑:苏宇嵬)