应用型本科的软件工程实践教学

时间:2024-02-17 点赞:48344 浏览:96395 作者原创标记本站原创

本文是一篇软件工程论文范文,软件工程方面毕业论文模板,关于应用型本科的软件工程实践教学相关开题报告范文。适合软件工程及实践教学及软件开发方面的的大学硕士和本科毕业论文以及软件工程相关开题报告范文和职称论文写作参考文献资料下载。

摘 要:软件工程是指导软件开发和维护的一门工程学科,是一门理论与实践并重的课程.该文分析了软件工程教学中存在的问题,结合软件工程课程的特点,提出了一个从项目选题、团队建设、教学过程管理到课程考核的软件工程实践教学改革方案.

关 键 词:软件工程;实践教学;项目驱动;团队协作

中图分类号:G642文献标识码:A文章编号:1009-3044(2014)32-7700-03

软件工程是由软件开发实践和相关管理学理论发展而来的一门工程学科,主要研究如何利用工程化思想来进行软件开发、管理和维护,具有很强的综合性、时效性、实践性等特点,是计算机软件专业的一门重要的专业必修课.其教学目标除了要让学生掌握计算机软件项目从开发过程到管理维护的基础理论和一般过程之外,更重要的是培养学生把科学的管理方法和优质的开发技术结合起来,采用工程化的原理、技术和方法进行软件的开发和维护,提高学生的工程实践能力、综合应用能力和职业素养,为日后的就业和实际工程研发打下良好的理论和实践基础.

“工程性”和“实践性”是软件工程课程最大的特点,如何将理论知识转化为综合应用能力是实践教学的重要目标,培养目标能否实现关键在于实践教学环节的质量,实践教学质量的高低也将直接影响到学生今后的就业.因此,软件工程课程应该把实践教学放在重要位置[1].那么,在高等院校中,如何组织和开展软件工程实践教学,如何在实践教学过程中,面向就业市场,突出学生能力和职业素质的培养,使学生具备较强的工程实践能力,能更好地适应市场需求和社会需要,是摆在我们面前的一项非常紧迫的重要课题.

1存在的问题

当前高校软件工程教学大都存在着“说”的多、“做”的少的问题,在课程教材方面,内容陈旧,重理论、轻实践,只强调软件工程的基本理论,而忽视了实践应用和管理维护的重要性,脱离市场和行业的实际情况,难以培养出具有良好的软件开发技能的学生.虽然有些教材也有大量案例来对相关理论做支撑,但由于缺乏实用性、时效性和综合性,案例之间没有连贯性,很难让学生对软件项目的整个开发和管理过程以及各个环节的任务和实施方法进行全面和深入的了解.在教学方法方面,很多院校还是采取传统的以教师讲为主,学生听为辅,教师布置并指导学生完成相关课程内容的实验,学生基本上没有主动性,处于一种被灌输的被动接受状态,这样培养出来的学生往往缺乏自主学习和解决问题的能力,缺乏创新和实践应用能力,难以将知识转化为能力.在课堂教学方面,虽然也引入了项目教学和情境教学,但仍然沿用了传统的理论教学模式,学生难以积极主动地参与其中,而且项目教学也仅仅是处于一种离散式的“项目教学”方式,案例之间没有连贯性,甚至毫不相干,最终导致教学内容发散,无法保证教学过程的整体性和连贯性,使学生无法对项目开发和管理过程有一个整体性的理解.在教学效果上,由于上软件工程课程的学生几乎没有参与过软件开发的具体过程,没有软件开发经验,教学难度本来就大,而目前很多院校软件工程课程教学,又过分注重基本概念和理论,教学内容理论多、实践少,缺乏具体的、能贯穿整个软件工程过程的案例分析,学生“听”的多,“做”的少,理论与实践脱节,对课程中讲述的开发模型、分析和设计方法等内容很难深刻理解和掌握[2].导致学生普遍感到这门课内容抽象,枯燥无味,无实际用途,进而失去学习积极性和主动性,甚至不愿意来上这门课.


这些问题直接导致了学生的就业问题.虽然就业市场对中高级软件人才的需求量很大,并随着计算机软件产业的快速发展在逐年增加,但还会出现学生就业难的问题,究其原因主要是培养模式问题,采用传统的理工科人才培养模式来进行计算机软件教学,无法体现软件工程的“工程性”,没有形成软件企业特性的实战教学模式,培养出的学生实践能力差,综合应用能力匮乏,脱离于软件产业界中工程应用方面的实际需求,难以快速融入到现代软件企业中,出现了“毕业生就业难,企业才难”的怪现象.因此,在就业形势每况愈下的大环境下,计算机软件专业如何有效开展软件工程教学,如何立足就业市场,培养出能适应市场需要的应用型人才,是我们应思考和探索的问题.

2改进措施

实践教学是对学生工程应用能力和问题解决能力进行培养的重要方法和途径[3].软件工程教学要面向就业,以学生能力培养为导向,以项目开发为主线展开教学,整个教学过程以学生为主体、教师为主导,教师主要负责提供真实的项目开发“情境”、提出各阶段的具体目标及要求、讲解所需理论和技术,启发和引导学生解决实际项目中需要解决的问题,让学生明白“要做什么”、“能做什么”、“怎么做”.这种教学法的主要特点是始终以项目中的任务展开教学,既注重项目的开发和管理过程,又注重最终的实践结果.通过教师指导和学生讨论,让学生完全融入到任务完成的过程中,积极主动地学习,以达到培养学生的创新能力、协作能力、分析和解决问题能力的教学目标.

为达到课程教学目标,可以选取一个能贯穿课程始终的实际工程项目,并把项目按软件工程过程划分成若干阶段任务,然后把相关的知识点融入到这些阶段任务中去,从项目开发的前期准备到系统分析和实现过程以及最后的系统维护,随着课程进展布置任务,把所学的理论知识应用到项目开发的实践过程中.同时,引入团队协作和考核评估体系,模拟软件企业的做法,对每个团队在每个阶段的工作通过上台演示、提问答辩、评价对比等方式进行评价打分并作为课程期末成绩的评定依据,以充分调动学生的学习积极性,增强学生的责任感和团队荣誉感.

具体改革措施可以从以下四方面进行:

1)项目选题

由于计算机软件产业发展迅速,所以软件工程教学必须时刻关注主流的开发技术和开发方法,以此来决定课程内容的设计.项目的选择直接决定着实践教学的质量,这就要求,要以来自软件行业或工程领域中具备较强的综合性、实践性、时效性等特点的实际软件项目为题,通过一个能贯穿整个课程的始终的具体项目,将软件生命周期从系统分析、系统设计到最终的系统实施和维护的整个过程的各阶段讲透彻,使学生能全面地、系统地理解和掌握整个软件工程的全过程以及当前流行和开发方法和开发技术,这样有利于学生建构系统而完整的知识体系.2)团队建设

软件产业非常强调“团队”,计算机软件的开发离不开团队合作.团队协作作为软件人才的基本素质,在软件工程教学的一开始,就应先普及团队建设和团队协作以及团队管理方面的知识,使学生了解团队在软件项目开发过程中的重要性,同时,让学生根据自身的知识和能力弄清自己在团队中的定位以此来提高各成员在团队中的协作能力.

项目选题完成后,可以按照项目开发的实际需求,将学生组建成若干软件工程开发团队.由于高校教学与企业生产有着显著差异,不能生搬硬套,可以在保证项目开发过程完整且团队分工和主要职责相同的前提下,进行适当调整,具体如表1所示.

1)能力互补.团队成员不能随便拼凑,在知识结构和个人能力特长等方面应能够互补,团队角色要完整,既要有擅长界面设计的,又要有善于编码的,还要有擅长管理的和文档编写的.

2)职责清晰.团队成员的职责要清晰,工作要规范,既要注重工作效率的提高又要注重职业素质的培养,团队中的每一个成员都要对团队的整体目标负责,只有依靠团队的共同努力才能保证项目的成功.

3)教学过程管理

软件工程实践教学要体现“以学生为主体,教师为主导”的教学思想,整个教学过程是一个阶梯式逐步渐增的过程,课程有总目标,每一阶段又有具体的阶段目标,针对该目标,教师先进行案例演示,勾起学生兴趣,然后进行案例分析和相关理论讲解,再由学生进行实践,最后学生和教师再一起进行阶段成果验收和总结,之后就进入下一阶段,如此逐步递进,直到课程总目标全部完成为止.具体实施步骤如下:

1)任务分解、建立目标

首先,教师要将贯穿于整个学期的一个大型项目分解为:学期总目标、阶段目标、课时目标.学期总目标是指通过完成一个大型项目使学生掌握软件项目开发的基本理论、实施过程、管理方法和开发技术,由于覆盖的知识量大,要完成该目标需要较长时间的讲授和实践.阶段目标是指在完成学期总目标时,根据工作量和时间限制将其划分为若干阶段,并通过对这些阶段具体目标的实施来体现学期总目标,通常花费较少的时间即可完成.课堂目标是将每阶段的任务和目标再进行分解,使得能够在若干课时内完成.

2)理论讲解、案例分析

有了阶段具体目标和要求后,按照阶段任务需要,教师可以先讲解基础理论,阶段目标的实现方法和所需技术,并通过一些能激发学生兴趣的典型案例的演示和分析,一步步引导学生,让学生知道“要做什么”、“怎么做”,弄清“哪些通过已有知识可以做”、“哪些需要进一步学习才能做”,充分调动学生的好奇心和操作欲.

3)教师引导、学生实践

目标和要求提出后,在教师引导下,组织团队讨论,明确任务目标,制定任务实施计划,并根据团队成员的知识和技能进行分工,然后开始练习,让学生在练中学、学中悟.对于练习过程中遇到的问题,可以先由团队内部讨论解决,解决不了的可以进行团队之间的相互讨论和学习,仍解决不了的,再由教师进行辅导.对于一些共性问题,还可由教师进行统一示范,集中解决.

在学生练习过程中,对于方法独特、技术突出的学生,老师要给予表扬和加分,来进一步激励学生的斗志和学习积极性,还可让其上台演示,给其他学生一些启发.对于积极性差、表现落后的学生,教师要给与鼓励和支持,引导其向积极方向发展.

4)阶段总结、评价验收

按要求,每个团队都要按照软件工程理论组织自己的工程开发,并且建立关键开发的过程管理.为防止某些学生“跟着混”,从而造成学生成绩两极分化,对于软件开发的各个里程碑,将组织学生进行技术评审.对于学习能力差的学生或操作有疏漏的学生要采取教师鼓励引导和团队成员帮扶双管齐下的策略,使其能跟上教学进度,全面掌握知识点,达到教学要求,实现教学目标.

通过阶段总结和评价验收,教师可以较为准确地了解到学生对知识的掌握情况和对任务的完成情况,及时地、有针对性地对教学的进度、内容和难易程度等进行适当调整,以保证教学的质量和效果.

4)课程考核

评估体系是保障实践教学质

本文是一篇软件工程论文范文,软件工程方面毕业论文模板,关于应用型本科的软件工程实践教学相关开题报告范文。适合软件工程及实践教学及软件开发方面的的大学硕士和本科毕业论文以及软件工程相关开题报告范文和职称论文写作参考文献资料下载。

量的基础和驱动力,可以从学生的专业技能、综合应用能力和职业素养等多个方面入手,既要进行团队评估,又要进行个人评估,既要有阶段评估,又要有终结评估.具体的做法是:在每个阶段,都要对学生团队在项目进度、编码和文档质量、团队协作和遇到的问题以及问题的解决情况等方面进行检查和评价.在课程结束时,模拟软件企业的做法来组织项目验收会,要求每个团队都要上台从团队分工情况、项目总体的完成情况、采用的技术、创新点和优势及存在问题和不足等面对项目成果进行汇报,然后对项目成果实现的各项功能进行现场操作演示,并对老师的提问进行答辩.然后根据课程目标和考评体系要求对团队进行绩效考核,对团队成员量化评分.对于答辩良好者还可另设附加分.这种考核方式不仅能对团队和成员进行全面的能力考核,而且能训练学生的表达能力和汇报技能.

3对教师能力的要求

由于软件工程实践教学的“工程性”和“实践性”特征,要求任课教师既要理论基础扎实、实践能力强、开发经验丰富,又要熟知当下软件项目设计的新技术和新标准.为达到教学目标,授课教师不仅要能“讲课”,还要能“开发”,这样才能确保授课项目能得到很好地完成,教学目标能得到很好地实现.因此,对于讲授软件工程实践教学的授课教师的选择,最好是独立承担过或是与软件企业合作过实际软件工程项目的教师,如有条件,也可直接从软件企业聘请一线的软件工程师参与教学活动或是教师.

4结束语

软件工程是一门随软件产业不断发展而变化、理论与实践并重的课程,培养符合市场需求的软件工程专业人才最重要的环节就是实践教学.

本文对当前软件工程教学过程中存在的问题进行了分析,结合软件工程课程的特点,提出了一个从项目选题、团队建设、教学过程管理到课程考核的软件工程实践教学改革方案,希望能对软件工程实践教学起到一定的促进作用.

相关论文