《软件工程》课程教学改革的研究与探索
- 格式:doc
- 大小:26.50 KB
- 文档页数:7
《软件工程》教学改革的探索与实践摘要:软件工程是计算机科学中基础理论的核心课程。
由于这门课程概念多、理论性强、高度抽象,致使在实际教学中出现了学生学习兴趣不高,教学效果不理想,学生所学与软件企业需求严重脱节等现象。
本文根据作者多年来从事软件工程教学工作的实践与经验,分析了目前教学中存在的难度,对于如何提高教学质量、加强学生的实际动手能力进行了探讨与研究。
关键词:软件软件危机软件工程软件开发1968年北大西洋公约组织的计算科学家在联邦德国召开国际会议,第一次讨论软件危机问题,并正式提出“软件工程”一词,从此一门新兴的工程学科“软件工程学”为研究和克服软件危机应运而生。
在我国,软件工程虽然起步较晚,但是发展十分迅猛。
在杨芙清院士的《浅谈中国软件工程26年》中提到:“中国1980年启动软件工程与实践,软件产业是1982年由国家科委首先组织软件界的人讨论怎么样建设综合的软件产业,到现在,中国软件工程已经成为了软件产业的支柱学科。
”在中国,国内市场对软件人才的需求每年高达80万人,而在中国职场人气职位中,软件工程师的排名也始终名列前茅,软件工程人才的就业前景十分乐观。
因此在高校教育中也把软件工程方面的人才培养作为了重中之重。
现在各大高校的计算机专业基本上都已经开设《软件工程》课程,还设立了软件工程研究方向的硕士甚至博士学位。
我们培养计算机专业学生的目的是为社会输送合格的计算机人才,为企业尤其是软件企业培养后备军,事实上本专业的大多数毕业生也的确是将软件开发或相关行业作为求职首选。
但是目前我们的毕业生欠缺实战经验,实际动手能力弱,所学知识老化,知识结构不合理,到企业工作后大都需要半年或更长时间的培训才能适应工作,而大部分企业需要有实际经验、不用培训或经过短期培训就能适应工作的软件人才。
这种现状一方面增加了学生就业的难度;另一方面众多软件企业找不到合适的开发人员或在培训新员工成本上花费巨大。
因此在杨芙清院士的报道中还提到了一个现象:“现在软件人才队伍的结构亟待合理,软件人才需求的结构是宝塔型,软件人才目前培养供给的结构是两头小中间大,而且人才知识、能力结构问题,反映在人才培养偏重学科型,面向产业、适应企业需求,实际工程能力强的人才缺少,才有人才培养的滞后现象。
“软件工程”课程教学改革的探索与实践摘要:在分析软件工程课程特点的基础上,讨论了软件工程课程教学过程中存在的问题,立足遵义医学院学生现状,并结合自身担任软件工程课程的教学工作,提出了由案例驱动教学、课堂实训研讨以及综合实践三个环节构成的软件工程课程全新教学模式,有效提高了学生的理论知识水平与实践能力。
关键词:软件工程;教学改革;案例教学;综合实践中图分类号:g642 文献标识码:a 文章编号:1007-9599 (2012)18-0000-021 引言软件工程是计算机专业的基础核心专业课程,其内容包括软件过程、软件开发方法、工具以及软件工程管理等。
教学目标是使学生掌握现代软件工程的方法和思想,具备作为软件工程师所需的专业能力。
由于软件工程课程的理论性较强,内容着重强调整体工程化的原理和方法,不涉及详细的技术细节,因此,如何使教学生动实际、实践效果良好,一直是软件工程课程教学需要解决的难点问题。
本文从案例驱动的理论教学、课程实训和互动研讨、综合项目实践三个环节入手探索“软件工程”课程的一种新的教学模式,帮助学生更好地掌握“软件工程”课程内容。
2 课程特点软件工程作为的一门核心课程,它具有以下两大特点:2.1 知识的综合性:软件工程主要研究软件开发技术和软件管理两方面,具体涉及计算机、经济学、管理学等多个领域。
由于课程涉及内容丰富,因此必须结合软件开发实践进行教学,才能使学生更好地掌握各种知识的综合应用。
2.2 理论的实践性:软件工程学具有很强的实践性,它是根据人们开发软件产品的经验总结出来的理论课程,是用理论来指导实践开发,因此在学习过程中必须理论联系实际。
3 教学过程中存在的问题由于软件工程课程内容较抽象,概念繁多,使得这门综合性和实践性很强的课程在教学过程中出现许多问题。
3.1 教学方法不当。
目前很多教师把软件工程作为一门纯粹的理论课来讲授,如果没有具体案例和软件开发实践做支撑,学生只能被动听讲,逐渐形成教师讲理论,学生听理论,最后考理论的局面。
《软件工程》课程教学改革的研究与探索摘要:为了顺应当前软件工程教育国际化和工程化的发展需求,改善软件工程教学质量和效果。
本文针对当前教学中存在的问题提出对《软件工程》的理论教学、实践教学、课程评价体系进行了改革与探索,构建了课程知识体系,大胆将理论知识糅合到实践教学中。
该教学改革不但提高了学生的学习积极性,促进了掌握软件工程的理论基础知识、先进方法和最新技术,且为后续深入专业的学习打下坚实的基础,极大地提高了教学质量。
关键词:《软件工程》教学改革理论教学实践教学
中图分类号:s762.2 文献标识码:a 文章编
号:1672-3791(2012)10(c)-0146-02
随着社会信息化技术的普及和软件产业的迅速发展,软件产业
成为信息产业中增长最快的领域,然而高端软件人才的匮乏严重阻碍了我国it企业的发展,因此提高软件行业从业人员具备必要的软件开发、维护与项目管理的能力尤为重要[1]。
《软件工程》是高校计算机相关专业开设的一门专业核心课程,旨在培养学生理解和掌握软件工程的理论、技术和方法,应用工程的思维进行软件开发、管理和维护。
为了顺应当前软件工程教育国际化和工程化的发展的需求,高等院校需要切实加强软件工程课程的创新与改革,这对软
件工程人才的培养至关重要。
当前《软件工程》课程教学中存在的一系列问题,直接影响了教育质量和教学效果。
具体表现为:教学内容重理论而轻实践,不能有
效地培养学生软件开发技能[2];教学案例缺乏完整性和实用性,不能帮助学生从整体上全面理解软件开发的各环节及其之间的关联[3];实践教学也缺乏系统性和针对性,不能将基本原理融入当前软件实际案例中去讲解,教学内容与软件工程实践有明显的差距等。
因此,迫切需要对教学体系进行改革,形成一个融基础理论、实验教学、工程实践为一体的整体培养机制,让学生的基础知识、科学素养、专业知识、创新能力、工程能力和职业素质都得到全面均衡的发展[4]。
本文将从理论教学、实践教学以及教学评价几个方面进行改革与探索。
1 理论教学探索与思考
为了满足当前软件工程教育国际化和工程化的发展要求,《软件工程》教学以ieee发布的软件工程知识体系为基础,结合基础知识、先进技术和工程实践等方面构建该门课程的知识体系。
《软件工程》课程知识体系分为基础、应用、实践三个部分。
基础部分为理论教学,根据教学目的和教学要求,采用案例及问题驱动等教学方法,讲解软件工程的理论基础知识,包括软件生命周期各个阶段、软件质量和软件项目管理等核心内容,通过案例的分析,促进学生的独立
思考,提高其对理论知识的理解和掌握。
应用部分是以当前流行的统一开发过程、面向对象技术和uml语言为核心,融入实际案
例,rational rose、visio、project、svn、loadrunner等软件工程工具和环境,使学生掌握当前先进的软件工程方法与技术。
实践部分要求学生分组组建团队协作完成一个软件系统的开发,让学生
从“可实践”软件工程的角度学习和运用软件工程的思想和现代技术解决软件开发问题,拥有识别、分析和解决具体问题的能力。
《软件工程》课程知识体系如图1所示。
单纯地讲授《软件工程》的理论和方法显得枯燥且难以理解,若能通过一些软件开发案例对理论知识进行形象的表述,不仅能让学生易于理解这些理论和方法,亦能建立软件开发的系统化与工程化观念和质量意识。
那么如何收集经典案例以及采纳何种教学方法是关系理论教学成败的关键因素。
首先案例的选择与设计要有针对性,如结构化和面向对象,这两种方法侧重知识点不同讲解所贯穿的典型案例应不同,其次案例的选取应是学生熟悉的领域且它的实用性能激发学生的求知欲和兴趣。
如在软件工程技术方面,作者结合学生成绩管理信息系统、宿舍水电费管理系统、教学管理系统等,论述需求分析、软件体系结构设计、用户界面设计、详细设计和软件测试等内容,重点讨论基于案例的面向对象方法和组件技术。
采用何种教学方法应根据具体的知识点而定,如以ibm初期系统开发失败的缘由为例利用问题驱动法引出软件工程的概念和原理;对于软件开发工具rational rose的介绍则采用项目驱动法。
因此,在理论教学中,把抽象的知识尽量形象化、案例化,采用引导式、探索式、讨论式和交互式等教学方式营造融洽轻松的学习氛围,鼓励学生独立思考,查阅资料,细心体会当前软件工程的精髓。
2 实践教学内容创新模式
应用部分和实践部分均属于实践教学,在此教学过程中,实施项
目驱动教学法,实验设计以项目开发为主,模拟企业软件的项目管理和开发过程,碰到问题困难,进行师生互动讨论寻找解决方案,开发完成通过成果展示来进行教学评价,整个过程使学生初步体验到一个软件项目开发的全过程。
实践教学活动的流程具体如下。
(1)分配任务:第一次课,要求学生以项目小组(一般5~6人,自由组合,每个成员扮演项目开发过程中的不同角色)的方式组建开发团队协同开发一个规模及难度适中的完整项目,要求按照正规软件开发流程组织实施,完成项目开发过程中形成的分析、设计、编码和测试文档,同时将rational rose、visio、project及loadrunner等软件工具在实施过程中进行有效地应用。
(2)组建团队:学生自愿组建团队,选出组长,每组角色包括项目经理、系统分析员、软件设计师、软件开发工程师、软件测试工程师等,组员项目角色可随项目开发进度而调换。
项目实施过程中采取组长负责制,负责小组的讨论和项目实践的安排,分配组员任务,各小组查资料,自选软件项目,分析开发的各项任务的安排和沟通,制定项目的开发计划。
(3)计划可行性评定:授课教师审核各组项目及项目计划实施的可行性,不行则指导小组重新选定软件项目和制定项目计划。
符合要求,方可进入实施阶段。
(4)项目实施阶段:小组成员根据各自的任务查找资料,收集解决方法,定时讨论交流,各个模块间相互配合协调完成任务。
包括软件分析设计阶段,完成软件需求规格说明;设计软件系统的总体结
构;对功能模块进行编程测试,完成项目实现编写所有相关文档,测试和调试代码。
整个实施过程由授课教师控制项目的进度和质量,同时,教师要充分发挥引导作用,让学生在实践软件设计和开发技
能的同时,通过协作培养学生多人之间的沟通能力和团队协作精神。
(5)项目验收:根据软件开发流程的各个阶段成果包括可行性分析报告、需求规格说明书、项目计划书、总体设计报告、详细设计说明书、软件测试报告、项目开发总结报告等。
项目验收采用阶段验收分析设计文档,每次均以小组的形式提交作业。
教师根据提交的材料结合学生是否熟悉软件常用技术和工具按照软件工程管理
方法进行评审,还要求各组之间互评,发现不足之处进行讨论,提供给大家一个互相交流的机会。
项目结束后,每组要组织答辩,先由小组长对项目基本情况及组员作简要介绍,然后让各组员对自身完成的任务进行ppt答辩,教师和其他同学针对该成员实际负责的部分进行提问。
最后项目组提交系统和所有文档。
3 教学评价体制改革
教学评价是课程教学的必要环节,在本次教学改革实践中,将课程学习评价分成3个组成部分:理论考核占50%,项目实践成绩占30%,考勤、平时作业、实训练习等占20%。
项目实践成绩的评定包括小组成绩和个人成绩两部分,各占50%。
小组成绩为小组中所有成员开发项目的考核成绩,包括各阶段成绩的平均值与最终答辩成绩;个人成绩为小组成员在项目开发过程中个人的考核成绩。
度量因素
包括个人分配工作量及难易程度、平时工作态度及项目汇报时表现等。
这种评价体制充分调动了学生学习的主动性和合作精神,教学效果明显。
4 结语
本文对《软件工程》的课程教学进行了探索和改革,以ieee公布的软件工程知识体系为基础构建了软件工程课程知识体系,提倡理论教学与实践教学并重。
理论教学着重于经典案例的选取及教学方法的采纳,理论教学不再是抽象的讲授,而是贯穿案例的具体实
践操作,达到了理论与实践的紧密结合。
实践教学以项目为驱动模拟企业软件的项目管理和开发过程,引导学生积极思考和参与讨论,教师由知识的灌输者成为学习的引导者,学生由被动地接受教育变成主动地探索知识。
实践证明,本课程极大地提高了学生的学习兴趣,取得了良好的教学效果。
在今后的教学工作中,将进一步完善和实践教学改革的内容,逐步使这门课程规划化、工程化,取得更好的教学效果。
参考文献
[1] 张海藩.软件工程导论[m].5版.北京:清华大学出版社,2008:5-7.
[2] 董跃华,杨书新,李淑芝.软件工程专业多元化实践教学
体系研究[j].江西理工大学学报,2009,30(3):53-55.
[3] 霍英.项目驱动教学法在软件工程课程中的实践[j].计
算机教育,2010,17:123-125.
[4] 杨文君.软件工程实践教学改革探讨[j].计算机工程与科学,2011,33(a1):55-57.。