当前位置:主页 > 科技论文 > 软件论文 >

软件工程教学若干问题的思考浅研

发布时间:2016-06-29 04:02

  本文关键词:软件工程教学若干问题的思考,由笔耕文化传播整理发布。


当前位置: 【中国硕士论文网】 >> 工程硕士论文 >> 软件工程硕士论文 >> 软件工程教学若干问题的思考浅研

软件工程教学若干问题的思考浅研

来源:   

  【摘要】文章分析了《软件工程》课程及教学的特点,讨论了目前《软件工程》教学过程中几个比较突出的问题,提出了提高软件工程教学效果的几点建议。
  
  【关键词】软件工程;UML建模;案例教学;CMM
  
  (一)引言
  《软件工程》是计算机科学与技术及相关专业必修的一门重要的专业课程,作者根据教学过程中的体会分析了《软件工程》课程及教学的特点,讨论了目前《软件工程》教学过程中几个比较突出的问题,提出了提高软件工程教学效果的几点建议。
  
  (二)软件工程课程教学的特点
  1.软件工程课程特点
  《软件工程》是计算机专业的一门工程性课程,是计算机科学与技术领域的重要学科。本课程主要讲述建造软件系统的方法、技术、流程、工具及规范等。通过学习可以使学生掌握软件工程的基本概念、基本原理、实用的开发方法和技术;了解软件工程各领域的发展动向;如何用工程化的方法开发软件项目,在开发过程中应遵循的流程、准则、标准和规范。作为一门实践性和综合性很强的课程,它是各种开发经验的总结与提炼。该课程对培养学生的软件素质,提高学生的软件开发能力具有重要的意义。
  
  2.软件工程教学特点
  软件工程是一门教学难度比较大的课程。主要原因有以下几点:第一,软件工程作为一门指导计算机软件开发与维护的工程学科,研究的范围很广,包括技术方法、工具和管理等许多方面;第二,软件工程是一门边缘学科,涉及的领域很多,如计算机科学、系统工程学、管理学、经济学等,内容十分丰富;第三,软件工程是一个年轻的领域,尚未形成成熟的教学模式,教材也少有提供较为成熟的设计训练实践内容。因此,教师往往把重点放在课堂教学上,同时应加强软件工程教学中的实践环节,让学生真正能够学以致用。
  
  (三)软件工程教学中几个比较突出的问题
  1.课程方面存在的问题
  (1)对软件工程人才培养模式与目标认识存在偏差
  印度、美国、以色列等软件强国的成功经验表明,合理的软件人才结构应成高、中、低的金字塔型,即处于高端的软件项目经理和系统分析师,位于中间层次的项目管理人员和软件工程师,处于低端的程序编写人员。而中国的软件人才则呈明显的橄榄形,高端人才和低层人才都大量匮乏。我国高校计算机本科教育所培养的大都是处于中间层次的软件人员,系统分析和项目组织管理做不了,基础的代码编写又不愿意干。笔者认为,当前高校计算机教育应实行“层次发展”战略,一流综合性大学主要承担计算机科学与技术研究方面高层次人才培养任务,一般院校更多立足低端计算机人才培养任务。
  
  (2)教学内容与实际相脱节
  自1968年提出“软件工程”这个词以来,30多年来软件工程的发展已经历了四代。“第一代”是传统的软件工程,体现的是结构化的分析与设计方法, “第二代”是面向对象的软件工程, “第三代”是引入“软件过程”概念的软件工程, “第四代”是基于构件开发方法的软件工程。软件工程的发展速度是惊人的,但是许多院校现有教学内容相对陈旧,仍然以传统的软件开发方法为主。原因是考虑到知识的延续性,由于学生从结构化的程序设计语言开始学习,这类传统的知识比较容易被接受。而现代的软件工程内容丰富,不断涌现新的开发方法与技术,如构件技术、UML建模等。这些知识实用性高,但受到学生知识结构和实践经验的限制并不容易被接受,同时也不可能在软件工程这一门课中完全讲授,这样势必造成学生的学习时效性差,跟不上信息产业技术发展的步伐,造成学非所用。
  
  (3)教学安排方面存在的问题
  软件工程教学内容上较少体现软件工程与其他计算机课程的综合。软件工程与其他计算机课程,如程序设计语言、数据结构、编译原理、数据库以及操作系统等课程都是相互作用和影响的。因此,在教学内容的安排上应该注意其它相关课程内容的相互渗透。
  
  教学时间跨度上,学生接触这门课的时间不够。软件工程课一般只有一个学期,而且在这一个学期里学生不只学这一门课,同时还有不少其他课程。不容易满足软件工程课对实践的长期要求。软件工程课程与其他课程衔接得不是很理想。软件工程的学习应有一些先修课程如程序设计、数据结构;还应具备操作系统、数据库、编译原理的一些知识。哪些课程应先学,哪些课程可以并行,并行的课程在时间上如何与软件工程课程衔接等,都是课程安排时需要考虑的问题。
  
  2.学生方面存在的问题
  (1)学生对软件工程的抽象理论容易感到枯燥乏味
  这门课不涉及具体软件项目及软件算法。不像程序设计课程能带给学生智力上的快感,激发学生的兴趣和热情。而且由于开发经验所限,学生很难在头脑中将软件工程的抽象理论和实际联系起来,因此较难对这门课程产生兴趣。在接受抽象的理论时,容易产生枯燥乏味的感觉。
  
  (2)实践环节比较薄弱
  在课程的教学中,如果只是一味地进行枯燥抽象的课堂讲授,而较少给学生提供实验尤其是项目实践的体验,学生则很难理解,觉得用处不大,因此极易产生厌学情绪。产生这种现状的原因是课程的总课时不充足,缺乏相应的软件工程实验软件,学生上机实验比较困难;而且有些实践内容显得太复杂太耗时,对教师和学生的要求都很高,不太适合初次接触软件工程的学生。
  
  (3)学生难以参与软件开发的全过程
  例如,学生很少有机会去参与真正的软件维护。可维护性是软件工程一项重要的质量指标,可维护性的保证依赖于维护阶段前面的各阶段。但学生开发的系统大多只是给任课教师大概地检查一下,一般不会交付使用,没有经受用户的真正严格的检验,代码里面的很多错误被隐藏起来了。这些错误可能来源于编码前面的各个阶段,可能来源于需求分析、设计或编码阶段等等。但如果学生看不到错误,也就不能对这些错误进行维护修正,不能体会到自己前面各阶段工作对可维护性造成的影响。
  
  3.教师方面存在的问题
  (1)教师的业务素质有待提高
  从授课教师的角度来讲,要讲好这门课也是有一定难度的。首先教师对软件工程本身要有深刻的理解,有一定的软件开发经验,最好有一定的项目和工程背景,这样教师能从自己的开发实践中理解软件工程的基本原理与方法,讲授时就能结合实际,可操作性强,学生能直观地感觉到该门课程的重要性,从而产生强烈的学习兴趣。因此从教学上来说需要从实践的环节出发,以开发实例来讲清楚理论,而不是照本宣科,这就对授课教师提出了较高的要求。
  
  (2)教学方法不能适应人才培养的需要
  软件工程学是软件开发、运行、维护的系统化方法学。该课程的实施应是理论与实践密切结合,在实践中使学生对所学的软件开发理论加以理解、通过实践对软件的开发技术有进一步的认识和掌握。然而在国内的绝大多数院校的教学过程中,以及相关的教材中都未提供规模适度且适于学生进行工程实践的例程。另外,我们的许多教学环节,如课程体系构建、教学内容设计、实践环节及内容安排、师资队伍素质及配备等,都比较忽视程序设计、软件工程规范化教学和训练,致使培养的学生制作开发的程序风格迥异,缺乏规范。这些都影响软件人才的质量。
  
  (四)提高软件工程教学效果的几点建议
  以上分析了软件工程课程及教学的特点,列举和说明了在课程的内容设置、教学安排、学生学习、教师授课方面存在的不足。概括地讲,这些不足可归结为四点:第一,教学内容和教学安排不甚合理;第二,学生兴趣和热情不高;第三,学生实践经验缺乏;第四、授课教师缺乏经验。要改变现状、提高教学效果,笔者认为应该改进教学内容和教学安排.激发学生学习兴趣和热情,加强教学实践环节,提高授课教师业务素质。下面提出了提高软件工程教学效果的几点建议。
  
  1.提高对软件工程课程重要性的认识
  从目前软件应用层面上看,随着经济和科技的深入发展,对新的软件的需求以及对已投入运行的软件进行维护的需求正在急剧膨胀,但迄今为止,开发及维护软件的成本仍然居高不下,软件质量无法得到可靠的保证,软件的生产率尚无法跟上时代的要求,并且已经成为不仅是计算机系统开发而且也是计算机应用发展的瓶颈。
  
  从软件工程技术本身看,在计算机系统研究及软件开发的早期所形成的一些错误概念和做法, 已严重地阻碍了计算机软件的开发。软件工程学即是研究软件开发与维护的普遍原理和技术的工程学科。美国计算学会ACM在2001年2月制定的CC2001草案中,再次将软件工程列入计算机专业中的14大知识点之一,由此可见软件工程在计算机学科中的地位。软件工程是一门十分重要的计算机专业课程,当务之急是提高在计算机学科中的地位,具体应体现在课程的修读类别及教学时数上,将该课程作为计算机科学与技术专业的必修课程,学时数宜控制在5O学时左右。
  
  2.促进教学内容与实际相结合
  通过建设精品课程搞好教材建设,选择最先进、最权威的教材,编写吸收最新科研成果的教材。不论采用校内外优秀出版教材还是国外教材,都会建设一批配套的教学辅助材料。例如,编写或介绍一些参考书、实验指导书、外文读物等等。此外,特别强调要指导学生查阅文献、阅读大量与课程教学内容相关的参考资料,以培养学生掌握学科最新发展动态和开拓知识的能力。精品课程的建设,力图形成立体的课程结构,集教学平台、实践环节、学习专栏、学科前沿、学科专题等于一体,代表了最先进最全面的教学内容和方法,使教学跟上软件工程发展的步伐。
  
  3.激发学生学习兴趣和热情
  这可以从课堂气氛、内容选择、语言表达三个方面入手。课堂气氛方面,应鼓励学生多参与,不能总让学生被动地听,在讲解时应尽量营造探究气氛,增强教师与学生的交流互动。内容选择方面,可以选一些容易引起学生兴趣的素材。例如,笔者在课堂上讲到编码风格这一章时,拿了一个自己编写的俄罗斯方块游戏程序给学生看。由于这种游戏学生普遍都感兴趣,因此在讲解这个程序中的编码风格时,学生注意力都很集中,收到了较好的教学效果。语言表达方面,可以在讲课时多用一些形象、有趣的事例或类比来说明或代替那些抽象、枯燥的理论陈述。
  
  4.加强和重视案例教学
  通过工程实践掌握软件开发、维护的理论和技术,既快捷又简单易懂,将复杂抽象的概念用具体生动的实例进行诠释,能够收到事半功倍的效果。精心设计规模和难度适当,符合教学要求的案例,是这门课程的教学活动中一个重要环节。具体案例的选择最好是一个实际的工程项目实例,有成功的经验,也有失败的教训。以实际工程项目需求为背景,可以将学生分为多个项目小组,各小组应独立完成项目的需求调查、需求规范说明、系统分析设计、直至最终提交产品等各阶段的任务。要求各个小组严格按照软件过程规范,设计需求调查提纲,编写详尽的需求规范说明书,选择恰当的符合本项目实际的软件过程技术、工具,制订出完善的项目管理措施,合理配置项目组的成员,层层推进,,按时提交产品以及相关的文档资料。
  
  5.不断提高教师自身的理论水平
  计算机技术的发展非常迅速,理论知识的更新频率越来越快。 《软件工程》既包括原理、方法,也包括技术和管理。软件工程的方法从传统的结构化方法和面向结构的Jackson方法,发展到面向对象的软件工程方法,进而到基于Web技术的软件工程方法,变化很大。在技术方面,软件复用、构件接口等新技术也逐渐发展和完善,成为传统的结构化技术之后的主流技术。此外,为了保证软件的质量,软件工程领域中项目管理这一部分,也越来越受到重视,在CMM(软件能力成熟度模型)指导之下的软件开发的过程管理方法越来越科学,软件质量和开发过程的评估体系也逐渐完善。这些新的理论、方法和技术都需要该门课程的教师不断学习、更新和实践,以提高自身的理论和科研水平。
  
  (五)结束语
  以上是从课程的内容设置、教学安排、学生学习、教师授课等方面考察分析了软件工程教学中存在的不足。要改进软件工程课程的教学,除了要遵循教育学的普遍规律,合理安排课程内容外,还要培养学生的学习兴趣,重视理论和实际相结合,注重提高授课教师自身的业务素质。

中国硕士论文网提供大量免费工程硕士论文,如有业务需求请联系客服人员

您现在阅读的文章:《软件工程教学若干问题的思考浅研》由提供,转载请保留链接。

前一篇:    独立学院软件工程教学方法谈说

后一篇:    软件工程课程群设计浅说


  本文关键词:软件工程教学若干问题的思考,由笔耕文化传播整理发布。



本文编号:63067

资料下载
论文发表

本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/63067.html


Copyright(c)文论论文网All Rights Reserved | 网站地图 |

版权申明:资料由用户eef94***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱bigeng88@qq.com