王颖 吴雅琴
摘 要:《软件工程》是高等学校计算机相关专业的一门重要的专业必修课,该课程涉及面广、内容丰富,其自身特点决定了该课程的知识不是完全可以从书本和课堂上学会的。要想达到这门课程的教学目的,就必须同时加强课堂教学和实践教学两个环节。
关键词:软件工程 课堂教学 实践教学
中图分类号:G642 文献标识码:A 文章编号:1672-3791(2014)07(a)-0157-01
《软件工程》是一门理论与实践结合紧密的计算机专业的课程,以软件的说明、开发、维护和管理为主要内容,使学生能够熟练掌握软件工程的基本原理、技术和典型的方法,并为今后参与大型软件开发项目打下坚实的基础。
《软件工程》与其他的计算机专业课有很大的区别,它并不是一个完全的计算机的概念,该课程涉及多个领域的知识,如计算机科学、工程学、经济学、管理学等,内容非常丰富。因此,该课程除了针对计算机专业的学生,在很多领域也都有所开设,比如我们学校的理学院,为金融、数软、信软专业的学生也开设了该课程。
1 《软件工程》的教学现状
《软件工程》是一门理论性和实践性都很强的课程,具有很强的综合性和时效性。但是传统的教学方式就是以教师课堂授课为主,学生被动地听课;而且重理论、轻实践,主要给学生讲解许多理论知识,但没有说明如何将理论知识与实践相结合,学生难以参与软件开发的全过程;教学中所举的案例相对独立,前后没有衔接,缺乏完整性、实用性,常常让学生感到迷惑不解。没有任何软件开发实践经验的学生会对软件工程的抽象理论容易感到枯噪乏味,上课积极性、主动性不高,甚至对软件工程的用途产生困惑,因而产生厌学心理。同时,学生的情绪反过来会影响老师的积极性,使课堂气氛非常沉闷,导致课程的教学目的很难达到。
2 《软件工程》教学的改进对策
为了改善《软件工程》的教学效果,充分调动学生的积极性,改变以往难学、难教的局面,必须在教学方法等各方面上进行相应的改进。
2.1 教学方式的改进
在《软件工程》教学中,理论课应当采取案例教学模式,实践课则采取项目教学模式,也就是案例教学和项目教学相结合的一种综合教学方法,因材施教,会收到事半功倍的效果。案例教学法应贯穿于理论教学的全过程中,以教师的讲解为主,按照知识点把课程独立划分成一个个典型案例,引导学生进行分析与讨论,提高学生的参与性。这种方法是将基本原理、实际案例(教务管理系统、图书管理系统、通讯录管理系统等)、关键技术与工具等有机结合,可以将复杂抽象枯燥的概念变得生动有趣。
要想达到《软件工程》的教学目的,就必须让学生亲自动手参与软件的分析与设计,实践环节必不可少。除了课内实验外,在课程结束后还安排综合设计的环节。实践教学中就要采取项目驱动的教学模式。把一个项目划分成若干个子项目,然后把相关的知识点融入到这些子项目中。实践活动应以团队小组合作的形式进行,每个小组要完成一个子项目,需要5~6人分工合作,分别扮演项目经理、系统分析员、程序员和测试员等不同角色,然后运用软件工程中的技术、方法,并按照软件过程规范分阶段实施,逐步完成项目的开发计划、可行性研究、需求分析、概要设计、详细设计、编码、测试、用户手册和总结报告的书写。通过这种方式,充分调动学生的学习积极性,锻炼学生的分析问题、解决问题,合作交流、表达写作等综合能力,提高了实践能力和创新能力。
2.2 教学内容的改进
教学内容是教师和学生交流的信息承载,教学内容的表述程度直接影响教师和学生对这门学科的把握程度。
目前,《软件工程》课程教学大多数采用是以结构化方法为主要内容的面向过程的教材,这里面涉及很多抽象的高深理论,但是学生所学习的大多数程序设计语言都是面向对象的,如C++、JAVA等,《软件工程》教材理应与时俱进,教学方式应以面向对象为主,使学生掌握从OOA、OOD到OOP软件开发的基本过程,掌握面向对象的建模工具Microsoft Visio或Rational Rose和建模语言UML等内容。
另外,软件工程是一门边缘学科,涉及的领域很多。但就目前诸多的《软件工程》教材来看,在内容取舍、知识结构、章节安排、实践环节等多方面存在严重缺陷,其教学内容上较少体现软件工程与其他计算机课程的综合。因此,在教学内容的安排上应注意与其他相关课程内容的相互渗透。
2.3 学习时间的保障
《软件工程》这门课在我们学校的旧版培养计划中,被安排在大四的第一学期开设,只有40学时的授课,对于这样一门理论性和实践性都很强的学科来说,实验环节的缺失是软件工程课程所面临的一个很大的挑战。另外,一般大四的本科生一边要做毕业设计,一边要准备考研,还要找工作,甚至一些学生干脆就到某些公司上班实习,这也就导致安排在大四的课程出勤率不高,学生的学习积极性不高,当然学习的效果就不好。在近两年执行的新版培养计划中,《软件工程》这门课调至大三第一学期开设,首先保证了出勤率,而且增加了16个学时的实验学时,后续还有为期两周的《软件工程实训》,实现了理论与实践的相结合。当然,要想学好《软件工程》这门课,这些实践时间还是有限的,因此,延长实践课的时间是非常必要的。
2.4 考核手段的改进
《软件工程》原有的考核方式就是理论考核,因为早期没有实践环节,课程结束后只能给学生出份试卷,考查一下理论知识的掌握程度。为了增强软件工程课程的教学的有效性,增加了实践环节,实践环节的成绩也应该算在总成绩中,因此,应该把考核方式调整为理论知识加实训考核方式。必要时也可采取软件工程建模、完成开发文档、结合软件工程知识答辩这种以实验为主的新的考核方法,该实验性考核方法以考促学,效果也是值得肯定的。
总之,在上述方式得以实现的基础上,我们还准备建立《软件工程》课程的专业网站,给学生学习提供一个网络教学资源和平台。在该网站上可以进行课件下载、习题布置、网上答疑、学生社区等功能,为学生学习该门课程提供了更好的条件。學生可以利用这样一个平台完成网上自学、讨论交流、提交作业、在线测试、教学效果评价等功能,充分发挥学生在学习过程中的主体作用。
参考文献
[1] 程线,李功网,戴国梁.《软件工程》课程探究式课堂教学的实践与思考[J].中山大学学报论丛,2005,25(1):172-175.
[2] 刘强.“软件工程”课程教学改革的探索与实践[J].理工科通讯,2008(8).
[3] 于国树,严志安.如何把握软件工程课的课堂节奏[J].学园,2013(22):81.
[4] 孙知信.软件工程课程模块化教学改革的实践与思考[J].南京邮电学院学报:社会科学版,2004,6(2):39-42.
[5] 赵辉,李万龙,郑山红,等.“项目导向案例驱动”的软件工程教学模式[J].计算机教育,2012(10):89-92.