首页 > 文章中心 > 软件工程专业课程

软件工程专业课程范文精选

开篇:润墨网以专业的文秘视角,为您筛选了十篇范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

软件工程专业硬件课程改革的探索

【摘 要】软件工程专业重软件而轻硬件,随着信息技术的飞速发展,计算机软、硬件结合越来越紧密,因此对软件工程专业加强硬件课程教学改革十分必要。本文结合我校软件工程专业硬件课程教学实践,探讨在软件工程专业中如何改进计算机硬件课程的教学,提高教学质量。

【关键词】硬件课程 软件工程 课程改革

【中图分类号】G642 【文献标识码】A 【文章编号】1006-9682(2011)11-0011-01

一、引 言

计算机学院从2005年开始招生软件工程专业的学生,现在软件工程专业学生已达到我院学生总人数的70%以上。“培养学生成为基础扎实、知识面广、实践能力强、综合素质高、能适应信息产业和软件产业需求的系统设计和开发的高级人才”是我院一直以来对软件工程专业学生的根本要求。这里的“基础扎实、知识面广”包括软件和硬件两个方面。特别是现在的软件开发越来越偏向不同的硬件平台做专业开发。而作为系统开发的人员必须掌握一定的硬件知识。对于完全不懂硬件的软件工程学生来讲,就业前景和发展都会受到极大的制约。

但是,我院硬件课程相对较薄弱。具体存在以下问题:①课程的内容深、难且不实用。学生理解计算机硬件较困难,学到的知识停留于空洞的概念,没有得到技能的提高。②技术发展迅速,硬件课程教材和实验设施严重滞后。现在的硬件教学教材还停留在70年代8086/8088阶段。③实验困难。与软件实验不同,硬件实验需要一定规模的计算机设备,同时课程教学上也没有足够的课时进行实验。④培养目标与社会需求存在差距。计算机硬件教学已严重脱离了硬件技术的发展实际,学生学习计算机硬件的基本原理的基础知识,不会开发电子产品,不会做工程项目。⑤学生的兴趣和教学的内容严重脱节。现在学生对于计算机硬件的最新技术比较感兴趣,但是硬件课程讲授的是过时的知识,学生无法在课程中体会到硬件的好处,感觉硬件课程像“鸡肋”。

基于以上分析,对计算机科学学院软件工程专业硬件课程进行改革已迫在眉睫,要培养适应社会要求的软件人才,应该而且必须加强相关硬件课程的建设,这样才能培养出全面的人才。所以,经过两年的教学实践,对于软件工程的学生应该掌握哪些硬件知识、软件工程中的硬件课程如何设置等进行了一定的探索,下面就相关内容进行简单探讨:

二、硬件课程改革的措施

全文阅读

高职高专软件技术专业《软件工程》课程教学探究

摘要:《软件工程》知识抽象和具有较强的实践性,高职高专软件技术专业学生难以从实践中体验知识,文中对软件工程概念、软件开发模型和需求分析等方面的教学方法进行了探讨,方法具体、形象,具有实践性,能提高教学效果。

关键词:软件技术;《软件工程》;教学;高职高专

中图分类号:G712 文献标志码:A 文章编号:1674-9324(2014)25-0189-02

《软件工程》是高职高专软件技术专业一门必修的专业课程,涉及计算机、数学和管理等多个学科领域的知识,是在软件开发实践中总结经验的理论课程。《软件工程》课程在软件技术专业课程体系中占有重要地位,它的作用是使学生了解软件产品的研发过程和开发规范,提高软件质量意识,掌握基本的开发方法、技术和工具等内容。但该课程具有较强的抽象性和实践性[1,2],学生很难参与到具体的工程实践,无法体验实践中的概念、原则、开发模型、开发方法和开发技术等内容,教师也很难把握住课程把抽象的知识转换成具体的实践,让学生在具体的实践中去体验知识。张振琳[3]等人对软件工程课程实践教学进行了探索,李金靖[4]对软件工程的格罗SSDL模型和建构主义两种教学方法进行了探讨,杨洋[5]等人对软件工程课程中的概念、教学方法、团队合作设计和实践教学等进行了探讨。笔者依据软件工程的多年教学经验,对软件工程中抽象的概念、开发模型和需求开发等教学内容进行了探讨。

一、概念的抽象和混淆

通常软件是由程序、数据和文档等构成的。从未学习过《软件工程》课程的学生往往认为程序即是软件,这种看法是严重错误的。如果不区分这种基本概念,学生会认为软件只需要编程而忽视需求分析、设计和测试等工作任务,而这些任务却是开发软件的重要任务,其比重远远高于编程。在教学中可以借助比喻、案例和启发式等多种教学法避免概念抽象和混淆。教师先用电饭煲产品作比喻,可把程序看成是电饭煲,程序具有“煮饭”等功能;把数据看成是电饭煲要加工的各种饭菜,数据是要程序处理的;把文档看成是电饭煲说明书和设计图等资料;把软件看成是电饭煲+饭菜+说明书等。通过比喻,学生初步认识了软件、程序、数据和文档的概念和彼此之间的关系。然后教师用学生熟悉的暴风影音等软件作为案例进行演示和分析,其程序是指暴风影音图标所对应的“.exe”文件,通过该程序可以打开播放界面实现各种功能,其数据包括影碟文件和在线影视数据等,这些数据被程序加工才显示出丰富的影视效果。由于用户会遇见播放等问题,暴风影音提供了在线帮助文档。通过这个案例学生能把软件概念和真实的软件建立起联系,深化了学生对概念的认识。最后学生根据自身体验分析一款熟悉的软件并指出软件中的程序、数据和文档文件。学生会依据之前对概念的认识主动思考“软件中的什么文件是程序?什么文件是数据?什么文件是文档?”等问题,学生互动带来了良好和轻松的学习气氛,之后教师再进行点评,包括对问题分析和学生表现等方面进行点评。经过上述教学,学生能较好分析游戏软件,能把存盘文件和存储用户名和密码的数据库归类为数据,能把游戏密技说明书和游戏教学视频文件归类为文档,能找出游戏对应的“.exe”程序文件。

二、细化软件开发模型

同任何事物一样,一个软件产品或软件系统也要经历孕育、诞生、成长、成熟、衰亡等阶段,这称为软件的生命周期。生命周期模型规定了生命周期划分成哪些阶段及各个阶段的执行顺利。典型的软件生命周期模型特点是模型数量多、知识抽象性和模型工作任务多等,这使学生很难区别各个模型的特点,很难激发学生的学习兴趣,很难让学生参与模型工作任务的实践,以及很难弄清彼此间的关系。把抽象知识适应性地转化为具体的和容易实践的任务能降低学生的学习难度。在教学中,可先让学生以团队的形式讨论分析软件工作任务的开始时间和工期等内容细化软件开发模型,再绘制出细化后的软件开发模型,最后比较和讨论分析各种软件开发模型,这能使学生更加深刻地认识软件开发模型。以增量模型教学为例,先让学生团队在课堂上召开会议,讨论软件立项和以头脑风暴法粗估计系统功能。讨论软件立项是让团队成员提出软件项目交给团队共同讨论,其目的是统一成员意见和激发学生的学习兴趣,它是后继工作的基础。要召开好会议要把握好会议时间和系统功能规模等几个要点,会议时间要短,以5~10分钟为宜,时间过短就会有成员没有机会参与讨论,时间过长会议效率将降低。团队成员都要熟悉已立项的软件系统,这样所有队员才能积极参与到会议中,这样的软件可以是寝室管理系统或教务管理系统等。系统功能规模以4~6个主要功能为宜,功能过少就不能很好地仿真真实的系统,很难激发学生兴趣,功能过多则很难在规定的时间内完成任务。然后再让学生团队讨论估算每个功能的开始工作日期以及需求分析、设计、编码和测试等任务的工期,功能的开始工作日期按业务紧急优先度安排,开始工作日期应安排在前序功能的编码或测试阶段,功能的工期取各个成员估计工期的平均值。这样做能避免学生感觉知识抽象,让学生感觉到事物较具体且容易实施。最后要求学生应用Excel软件制作表格填写系统各个功能的开始工作日期和需求分析等任务的工期,并依此生成甘特图。由于学生在计算机文化基础等课程中未绘制过甘特图,因此教师要演示操作如何绘制表格和生成甘特图。该教学法能让学生全程参与实践,从而强化了对增量模型的认识,学生能通过甘特图较直观地观察到工作任务间的关系以及功能之间的关系。通常学生都较好地完成工作任务,但存在工作任务开始工作日期安排不合理等问题。例如,某功能的开始工作日期安排在前序功能测试工作任务之后,教师可以组织学生讨论这样的安排是否会导致开发人员无事可干,让学生更加深刻认识模型。

全文阅读

高职软件工程专业软件测试课程教学改革探讨

摘要:高职院校软件工程专业的软件测试技术课程大多形同鸡

肋。针对目前学校课程设置现状,从课程建设、教学内容,实践训练,师资引进等方面进行分析,提出了改革课程教学的具体实践性和可行性的措施和建议,以便更好的提高测试类课程的教学效果。使软件测试能真正成为高职学生职业能力培养的一个重要技能。

关键词:高职 软件测试 课程建设 实践

1 概述

随着国内软件市场不断扩大,软件企业也越来越规范,软件产品正逐渐成为软件企业生存和发展的核心。人才市场需要大量的软件测试人才。高职软件工程专业毕业的学生也绝不仅仅只限于从事低端程序,在软件工程专业,软件测试逐渐成为一个新的就业方向和就业趋势。凭借软件工程专业,加大建设软件测试课程的力度,同时对软件测试的投入力度也要加大,进而使得培养出的软件测试人才都具有扎实软件测试理论知识,同时掌握测试软件的方法,并且具有一定的测试软件的经验。

2 高职院校软件测试课程现状分析

多年来,软件测试技术课程一直按传统的教学方法以讲授为主进行教学,学生缺乏学习动力,依赖性强、易受外界环境的干扰,工程意识、工程素质没有得到有效锻炼,不能利用所学知识和技能对软件项目进行测试实施。软件测试技术方面的教材近年来出现了一些,但质量也良莠不齐,高职的软件测试课程大多设置为选修课或者考查课,课时相对较少,并没有作为重点内容来要求。软件测试课程的教学目前大致为两种状态,一种测试理论和测试方法是高校教师授课的重点,在软件测试案例和软件测试经验方面比较匮乏,在教学过程中很少涉及重要的实践环节,系统的训练相对比较缺乏。与软件公司的测试人员相比,学生还有很长的路要走。另一种是从软件公司聘请多年从事测试的高级人才来任教。他们直接用企业的测试项目对学生进行讲解,但高职软件工程专业的学生之前都很难完成实用性的具体项目,更没有扎实的测试理论和方法做依托,不能将实用的测试技术深入的消化理解,灵活运用。如何将这两种教学现象很好的融合,是软件测试课程能否使高职软件工程专业学生成为软件测试实用人才的关键所在。另外,学生对软件测试技术的掌握程度直接受到对软件测试认识的影响。不懂编程的人才从事软件测试这是所有学生的共识,在一定程度上影响了软件测试技术的学习。恰恰相反的是,能做测试的高端人才,正是对编程有着深刻理解的全能型人才。

3 教学方法

全文阅读

软件工程专业程序设计课程群创建

摘要:程序设计课程群是软件工程专业系列课程的重要组成部分,建设该课程群有利于提高学生程序设计能力,进而提高就业竞争力。分析了学生在学习程序设计课程中的一些问题,提出了程序设计课程群的主要知识和能力体系要求,通过精讲课程主要内容、大规模开展程序设计训练、课程设计、改革考核与评价方式等方法进行课程群教学改革,取得了较好的教学效果。

关键词:软件工程;程序设计;课程群;建设;实践

软件工程专业的培养目标是面向我国软件产业培养急需的工程应用型人才。软件产业的发展要求学生具备较强的系统分析、设计、开发与维护能力[1]。为培养学生软件系统方面的相关能力,许多高校的软件工程专业都设置了系列课程模块,如程序设计课程模块、网络技术课程模块、计算机体系和操作系统课程模块、软件工程课程模块等,这些模块往往是一些单独课程的组合,有很多学生学了这门课程,又忘记了那门课程,到毕业时专业能力达不到社会所要求的层次。程序设计课程群是软件工程专业系列课程的重要组成部分,其承载的技能培养目标是专业培养的子目标[2],处于非常重要的地位。课程群建设是专业建设的一部分[3],有利于打通课程知识脉络,避免课程内容重复或前后脱节,使前后连贯,内容融合,进而获得整体优势[4]。程序设计课程群主要培养计算思维能力、算法设计与分析能力、程序设计与实现能力和系统分析开发能力[5]。学生通过程序设计课程群的学习,可掌握1~2门程序设计语言,更进一步理解程序设计方法,熟练掌握常用的数据结构和算法,形成良好的程序设计风格,可独立分析、设计和开发中小型软件系统。所以对程序设计课程群进行研究并积极实践对专业培养目标的实现具有重要现实意义。

1问题分析

目前,大多数高校信息类相关专业都开设了程序设计系列课程,一般为C语言程序设计、数据结构与算法、java程序设计等。许多高校都将C程序设计作为第一门程序设计课程[6],一般安排在第一学期或者第二学期,学完C语言之后,再学其他程序设计课程,如数据结构等。由于C语言本身比较灵活且语法内容比较多,对于初学者来说并不太好掌握。一些教师在授课过程中,没有站在软件设计的高度思考教学内容,往往过多地强调语言成分的语法和语义,而忽视了计算思维能力[7]的培养,使学生从开始就扎进程序设计语言的细枝末节中去,忽略了软件工程思想的渗透,到最后学生掌握了一些语法,却不能写出较为优美的程序或没有形成较好的程序设计思维和风格。算法是程序的灵魂,数据结构和算法在课程群中具有基础和核心地位[8]。在实际教学过程中,学生普遍反映数据结构和算法课程抽象难学,在学习和实际应用中出现的问题比较多,很难写出能正确运行的程序,学习过程中成就感不强,学完之后还是不知道如何应用,很难达到预期的效果。由于在前期的学习中,程序设计基础没有打牢,对常用的数据结构和算法没有真正掌握,模块化程序设计思维没有有效建立,良好的程序设计风格没有形成,导致后续的高级面向对象语言程序设计学习很难深入,最终导致软件分析与设计能力得不到有效的提升。

2程序设计课程群建设

我校软件工程专业采取校企合作办学模式,由吉首大学和中软国际共同建设,企业参与人才培养的全过程,在具体实施过程中,学校侧重于理论教学部分,企业侧重于实践教学部分[9]。程序设计课程群是软件工程专业课程体系的重要组成部分,企业参与讨论与建设,确定该课程群以软件设计能力培养为主线,以C语言程序设计、数据结构、面向对象技术、算法设计与分析几门课程为基础组建课程群,C语言程序设计开设在第一、二学期,数据结构、面向对象技术、算法设计与分析分别开设在第三、四、五学期,第六学期可开设JavaWeb程序设计或Web程序设计,使课程群在能力构建和开设形式方面形成一个不间断的体系。

3程序设计课程群实施

全文阅读

软件工程双专业“软件体系结构”课程改革

摘要:为适应软件工程双专业复合型人才培养模式和就业市场的需求,在武汉工程大学“E+”国家级人才培养模式创新实验区下设的英语+软件工程双专业经过探索和实践的基础上,探讨了作为软件工程专业主干课之一的“软件体系结构”课程的教学改革,提出了一些内容剪裁和教法改进。

关键词:双专业;软件体系结构;教学改革

作者简介:刘玮(1973-),女,湖北武汉人,武汉工程大学计算机科学与工程学院,讲师;何成万(1967-),男,湖北荆州人,武汉工程大学计算机科学与工程学院,教授。(湖北武汉430073)

基金项目:本文系2010年湖北省高等学校省级教学研究项目(项目编号:2010243)的研究成果。

中图分类号:G642.0     文献标识码:A     文章编号:1007-0079(2012)17-0059-02

推进和加强跨学科复合人才培养,既是科技、经济与社会发展的迫切需要,也是世界各国高等教育界的共识。培养特色型复合人才是高等院校在激烈的市场竞争中求生存、促发展的必然选择。近年来,各大高校开始探索以优势学科为依托,根据就业市场的供求关系调整办学思路与培养途径,致力于构建优势学科的双专业人才培养模式。[1]软件工程专业具有构建双专业培养模式的基础,目前可分为两类模式:第一类,软件工程专业与同属于工科的其他应用领域(如机械工程及自动化、环境工程等)相结合,使用计算机科学技术和具体领域技术解决相关领域问题,毕业生适宜该环境领域或其他部门从事软件开发、研制和管理工作。例如,大连交通大学开设的信息管理与信息系统+软件工程双专业同属于工科的双专业类型。[2]第二类,软件工程专业与外语专业(如日语、英语)相结合以满足软件服务外包或地域性软件产业的需要。武汉工程大学“E+”国家级人才培养模式创新实验区(以下简称实验区)提出的“E+”模式既可以通过外语教学的通识教育作用提高学生的人文素养,又可以使学生避免当前纯语言类人才的需求下降而面临就业难的困境,更能满足其他行业对毕业生外语水平的高端需求。实验区开设的英语+软件工程双专业属于第二类的软件工程双专业培养模式。

根据《计算机科学与技术本科专业规范(软件工程方向)》,“软件体系结构”是软件工程方向专业重要的专业核心课程之一。从2010年起,武汉工程大学将“软件体系结构”课程作为学校重点课程由计算机科学与工程学院进行建设,目前处于专业课程建设的起步阶段。为满足软件工程双专业建设的要求,“软件体系结构”课程的开设和建设需要做哪些调整呢?本文在总结软件工程双专业对“软件体系结构”课程的具体要求的基础上,结合武汉工程大学的实际教学情况,对该课程的内容剪裁和教法改进提出了一些建议。

一、软件工程双专业“软件体系结构”课程设置

全文阅读

软件工程专业软件设计课程群的教学改革研究

摘要:软件设计课程群在软件工程专业中起着重要的作用,但在教学过程中并没有很好实现理论与实践相结合。从理论教学内容、实践

>> 软件工程的课程教学改革与研究 软件工程课程教学改革的研究 卓越软件工程师Java课程群教学改革研究 软件工程方向基于课程群的实践课教学改革 软件工程专业教学改革研究与探索 《软件工程》课程教学改革研究 软件工程课程教学改革研究 软件工程课程教学改革研究与实践 基于CDIO的软件工程专业教学改革 高职《软件工程》课程教学改革的探讨 关于《软件工程》课程教学改革的探究 《软件工程》课程教学改革的探索 《软件工程》课程的教学改革探索 “软件工程”课程教学改革的探讨 电大“软件工程”课程教学改革的探索 软件工程专业Java语言系列课程教学改革研究 软件工程专业面向对象程序设计教学改革研究 基于团队学习的软件工程专业课程教学改革探索 高职软件工程专业软件测试课程教学改革探讨 关于《软件工程》教学改革的研究 常见问题解答 当前所在位置: [EB/OL], May 2013.

[3] 李慧仙.论高校课程群建设[J].江苏高教, 2006(6):73-75.

[4] 张怡文,贺爱香,王美荣.基于软件课程群的合格课程建设——《C++程序设计》合格课程建设[J].电脑知识与技术, 2012(5): 46.

[5] 肖宿.软件工程课程教学方法初步探索[J].电脑知识与技术, 2012, 8(14).

[6] 李兆翠,乔京涛.软件工程课程教学方法研究[J].电脑知识与技术, 2011(2): 090.

[7] 王健,张静.大学英语课堂沉默现象的解析与对策[J].中国大学教学, 2008(1): 81-84.

[8] 夏磊.基于CDIO的软件工程教学改革探讨[J].电脑知识与技术, 2011, 7(25).

全文阅读

软件工程专业课程建设协同创新研究

摘要:现代日常生活中人们的学习工作都离不开计算机,计算机已经对现代人们的日常产生了深远的影响。市场需求与学校培养的人才不相适应,导致出现了企业所需要的优秀毕业生人才缺失,毕业生所学无所用的尴尬局面。这就是说在大学期间,软件工程专业的课程体系并没有完全提升学生的实践操作能力,大学生毕业后根本与市场所需要的应用型人才不相适应。如何改变这种现状,这就需要我们针对软件工程专业所学知识与企业需求的应用型人才进行协同创新性实践教学研究。计算机软件工程专业旨在培养各类具有实践创新能力和团队精神的应用型人才,下面就软件工程专业课程建设的协同创新性研究进行简要论述。

关键词:软件工程;协同发展;课程建设

软件专业课程体系建设是深化计算机软件工程课程改革、提高软件工程教学质量必经之路。从协同创新视角而言,计算机软件工程专业的大课程体系是一个协同体系。在实践操作层面,软件工程专业体系的每一个内容模块都会影响软件工程专业大课程体系的建设成效。软件工程专业的大课程体系每个内容模块可以构建相应的创新平台,通过各内容模块的创新与发展,能有目标、有步骤地推进软件工程专业的大课程体系建设。

1国内外研究现状

根据年度毕业生就业数据报告显示,在就职业过程中,计算机软件工程专业的毕业生适应性差,课程与市场需求脱节,实践与理论脱节,工程实践与技术应用脱节等方面,大部分无法满足企业对于毕业生的需求。这是目前计算机软件工程专业教学中亟待解决的问题所在。软件工程专业的人才培养方案是使得培养的学生能够适应社会主义经济社会发展的需要、能够在德智体美劳等五个方面进行全面的发展、能迅速掌握计算机科学与技术等计算机专业方面的基本理论和基本技能,能进行计算机软件设计开发和应用,还会具有较强实践操作动手能力。学生学会软件的设计方法、学会软件的开发方法以及学会软件工程管理方面的基本训练方法[1]。除此之外,学生还会学会软件系统的研究和开发的基本能力,能壮大软件工程师的队伍,还可以在相关的信息产业部门、企事业单位从事软件工程项目的分析、设计、开发和管理工作,为我国软件产业持续、健康、高速的发展贡献微薄力量。

2协同创新体现在软件工程专业课程建设中的两大模块

大学校园为现在的科技社会输送了许多的人才。一个学校的创新能力是与社会的发展息息相关的。在学校里开展协同创新的专业课程建设有助于提高学生的创新能力的培养。目前,学校的软件工程专业的人才培养方案目标就是培养学生的实践动手能力和自主创新能力以及团队合作意识,明确自己的专业发展方向,了解社会对人才的需求,开展实训教学、实训室建设等一系列协同教学模式,教师提升自己的教学水平,努力开发软件工程专业学生的实践动手能力,协同创新以适应社会的发展需求[2]。2.1软件专业课程体系教学软件工程专业的课程教学首先需要了解课程设置问题。课程的设置需要从三个方面来进行设置,分别为职业技能结构、专业知识体系和课程教学模式3个维度。这三个维度是围绕遵循软件工程规范和研究职业技能结构的课程建设思想以及构建以核心技能为主题的3个层次的专业课程体系为中心的。专业知识体系包括基础课程、核心课程、方向课程、技能课程等。开展职业技能是为了让学生多多了解验证性实验课程、熟悉综合性实验项目、掌握课程设计。在上完理论课之后,验证性实验课程的开展会让学生加深理论课所学到知识的理解过程。开展综合性实验项目,是为了让学生的设计能力和综合能力有所提高,学生应用理论课知识,根据实验研究目的和要求,自行设计实验方案。课程设计最能体现团队合作精神,课程设计的开展,是为了培养学生的综合知识运用能力,以及团队意识和创新能力培养的重要手段[3]。教师的课程教学要注重改革教学方法和教学内容。采取多种考核方式,如课程设计答辩、课程设计成果验收、课程案例分析等方法。改革传统的刻板单一的教学方法,缩小教师与学生之间的距离感,激发大家的学习兴趣,共同探讨知识。最终,学生知识的运用能力得到提高,,学习环境和学习氛围得到改善,实践创新能力也会得到了提高。软件工程专业课程建设也可在协同创新平台的建设上去完善软件工程专业人才培养目标,进而去探索软件工程专业协同创新性实践教学体系。从课程实验教学、实训平台建设、创新训练、协同培养等方面来开展软件工程专业多维实践教学模式。其中,课程实验包括了验证性实验、综合设计性实验和课程设计三个方面。实训平台建设包括了建设软件开发实训室、软件研发中心、校外实训基地。创新能力训练包括了开展各类科研训练和学科竞赛[4]。2.2软件更新管理,建设实训基地开展实践教学,软件要更新,实训基地要建设。目的都是为学生搭建实践动手能力的操作平台、为学生创建发挥创造能力的锻炼平台。作业计算机专业的学生,尤其是软件工程专业的学生,首先要攻克程序关。也就是说,学生应该多多编程上机实现。因而在人才培养方案中的重中之重便是要求软件工程专业学生进行项目实训,提高动手实践编程能力。编程是将所学的抽象专业知识具体化。因则,学院要高度重视实训基地的建设,要努力搭建好实训平台,多多培养学生的动手实践操作能力。学校还可以与企业共同合作来搭建实训的基地,引导学生自主创新,发挥自身的潜力和特长。除此之外,我们还应该来共同来树立协同创新观念,规范软件工程专业的管理制度,整合资源,优化资源,建设学院素质教育实践基地和课程的评价机制,以构建利益共享机制[5]。

3协同创新在软件工程专业建设中的应用

全文阅读

软件工程专业课程体系研究与实践

摘要:本文从软件工程专业课程体系设计策略入手,采用“夯实基础教育、提高系统认知、强化软件开发、推进工程实训”为主线的设计思路,构建了“分层次、互动式、工程化”的课程体系架构模型,对软件工程专业核心课程设置进行了说明,并提出软件工程专业培养方案制定与实施的具体措施。

关键词:软件工程;课程体系;培养方案

软件工程教育兼属科学教育和工程教育范畴,软件工程的科学教育属性主要是引导学生对人类意识与智慧进行科学理解、增强运用软件本质特性(构造性与易演化性)和解决具体问题的能力;而软件工程的工程教育属性主要是引导学生综合应用计算机科学、数学、管理等科学原理,借鉴传统工程的原则、方法,提炼和固化知识,通过创建软件来达到提高质量、降低成本的目的。然而,McKinsey Global Institute2005年10月发表的一份报告称,我国2005年毕业的60多万工程技术人才中适合在国际化公司工作的不到10%,主要原因是中国教育系统偏于理论,学生在校期间几乎没有受到Project和团队工作的实际训练,这对我国高等院校工程教育改革与创新提出了挑战,也为软件工程专业建设指明了方向。

合理的课程体系是高等院校保证培养目标和形成办学特色的重要手段。目前,我国1900多所普通高校中虽有100多所院校开设了软件工程专业,但与当前软件工程技术发展差距较大。为了培养出既有理论知识又有应用技能的工程型实用软件人才,软件工程专业课程体系必须进行改革。对此,本文结合CC2005、SE2004、SWEBOK、国内软件工程专业课程设置现有的研究成果,探索软件工程专业本科教学课程体系建设问题。

1 软件工程专业课程体系设计策略

计算学科本科教学常用的课程体系设计策略主要划分为:课程启动策略、课程组织策略、特色课程设置策略。课程启动策略主要包括:1)围绕算法设计展开的算法优先策略;2)自底向上展开的硬件优先策略;3)从计算机导论展开的广度优先策略:4)强调编程能力的程序设计优先策略;5)强调系统使用命令优先策略;6)从面向对象展开的对象优先策略。

课程组织策略主要有:1)基于主题的组织模式,它把知识体系中的每个知识域组织成一门或几门课程;2)基于系统的组织模式,它把每类计算机软硬件系统设置成一门或几门课程;3)混合模式,在课程设计时不考虑区分前两种方法,兼而有之。特色课程设置策略主要依据本校办学特色和研究专长来确定。

由于软件工程教育兼属科学教育和工程教育范畴,其科学属性和工程属性决定了软件工程专业本科教学课程规划,一方面要强调工程性、技术性、实用性、系统性、综合性和复合型,另一方面要强化基础软硬件知识在解决复杂软件构造和应用方面起到的关键作用。对于课程启动策略而言,传统计算机科学专业的课程启动方式并不适合于本专业,但工程优先策略似乎也不适合于没有任何计算机基础的本科生;同样,在课程组织策略上,基于主题的组织模式更多地具有科学研究属性,而基于系统的组织模式又不利于基础知识强化;此外,特色课程设置时,有时会缺乏全面综合考虑,因人设课会造成特色课程系统性差问题。因此,在软件工程专业课程体系设计策略方面,应根据软件工程学科自身属性,综合考虑以上各种策略特点,全局思考,统一规划,避免课程系统性差、教学内容重复和遗漏并存等现象。

全文阅读

软件工程专业课程建设的思考与实践

摘要:针对软件工程专业的课程设置问题,从职业技能结构、专业知识体系和课程教学模式3个维度对专业的课程建设工作进行总结,提出遵循软件工程规范、研究职业技能结构的课程建设思想,构建以核心技能为主题的3个层次的专业课程体系。

关键词:知识体系;技能标准;教学模式;课程体系

课程建设是专业建设的核心内涵,课程设置及其教学质量反映了一个专业的教育理念、办学特色和人才培养质量。我国软件工程专业教育可以追溯到2001年底国家推出的示范性软件学院计划,该计划中的专业定位是面向软件产业培养高素质的工程型软件实用人才。2011年2月,国务院学位委员会正式公布修订的学科目录,把软件工程新增为一级学科,这充分说明了软件工程学科在国家战略层面上已经提升到一个新的高度。虽然,我国1900多所高校中有近200所院校开设了软件工程专业,但是,软件工程的专业教育现状与软件工程的技术发展差距较大,市场对人才的需求仍存在较大缺口,适应产业市场不断发展的软件工程专业建设工作依然任重道远。

1 职业技能结构分析

软件工程专业教育同样面临着两个问题:一是培养什么样的人(即市场需要什么样的人才),二是怎样培养人(即高校的教育内容和培养模式)。在软件产业迅猛发展过程中,虽然高校招生规模不断扩大,但是制约企业发展的人才问题并没有得到有效缓解,尤其是中高端人才的矛盾还很尖锐。究其原因,一方面,大型软件企业对中高级技术和管理岗位人才需求量很大、要求也很高,这类人才通常需要3-5年的工作经验,有两个以上的项目经历;另一方面,高校教育和市场需求脱节,每年大量进入就业市场的计算机类毕业生很难直接符合企业要求,有些毕业生需要经过社会培训机构或者软件企业培训,有些毕业生甚至放弃了本专业工作。

在软件企业中,合理的软件人才结构应该是金字塔型的,塔的顶部是高级开发和管理人员,中间是相当规模的系统分析和设计人员,底部则是大量的基础程序员(也称软件蓝领)。这样一种合理的人才结构是软件企业的期待,更是对教育部门提出了人才培养的具体要求和明确目标,毕竟大量的软件人才是需要经过高等学校的学历教育。一个软件专业毕业生走出学校之后,其成长过程基本上遵循学习实践再学习再实践的模式。进入软件企业,在初始的工作岗位上,首先通过短期培训,从事初级的技术开发工作;经过一段时间的技术实践,逐步提高其职业技术水平,成为中高级工程师;通过更高级别的培训,使其承担更为重要的技术和管理工作。可见,大学生在校期间除了专业知识学习外,从事职业的技术能力和适应工作的职业素养培养十分重要。

软件工程是指导软件开发和维护的一门工程学科,换言之,采用工程的方法、技术、工具和管理手段,以期开发出低成本高质量的软件产品。从这个定义可以看出,软件人才大致可以划分为技术型和管理型两类。从产品的技术角度看,不仅有产业标准和行业规范,而且项目的施工和管理有一套技术文档,这就是软件工程规范。从项目的管理角度看,分工协作是软件产业市场的总趋势,项目团队的分工合作是现代软件工程的一个重要职业特点,因此,软件工程专业的人才培养不仅要求具有专业知识,还需要有职业技能和职业素养。

软件工程专业的专业知识可分为基础知识、专业知识和专业理论,职业技能可分为基本技能、专业技能和综合技能,职业素养可分为基本素养、职业素养和综合素养。在专业教学中,强调专业知识中的核心基础知识,不求全面知识,知识教学内容必须与技术发展同步更新。把职业技能分为特定技能、通用技能、核心技能3个层次,其中核心技能具有普遍适用性,在职业生涯中受益终生。在职业技能训练中,按照软件的阶段划分,制定不同阶段所要求的职业技能。如编码阶段,要求有规范代码书写、单元测试能力,教师或项目经理要善于观察、发掘、培养新人;根据学生的各自特点,通过固化训练或交叉培养其设计、编码、测试、文档书写等能力。在学生的职业能力成长过程中,关注哪些学生是技术型的,哪些是项目管理型的,哪些是技能操作型的。由于高校不是企业,企业也无法承担高校的职能,通过校企合作的项目实训,围绕学生职业能力训练,明确企业和高校的职责分工边界。在职业素养训练方面,着重训练学生的交流表达、文档写作、分工合作、敬业奉献等能力和精神。在教学过程中,明确软件工程专业的职业素养边界,坚持“任何人都有用”的原则,关键是用到何处。比如刁钻苛刻的人用到测试上,勤奋好胜的人用到技术攻关上,豁达人缘好的人用到项目协调上,条理规矩的人用到设计上去。

全文阅读

信管专业软件工程课程教学策略

一、信管专业《软件工程》课程存在的问题

1.课程定位不明确

在信管专业中,软件工程主要指导学生进行管理信息系统的分析、设计、实施及维护,侧重系统的研发和维护的原理和方法。管理信息系统课程则是让学生全面认识管理信息系统,涉及的知识面广,但内容浅显。两者在系统开发和维护部分的内容上存在交集,部分院校因此未将软件工程加入专业培养计划。另外一些院校为强化学生的系统开发能力,将“软件工程”与“信息系统分析与设计”课程同时开设,出现课程重复的现象。这些都是软件工程定位不清晰的结果。

2.课程时间安排不合理

信管专业中的软件工程与诸多信管专业基础课程联系密切,需要较强的专业基础知识,但目前部分院校的课程体系将软件工程与管理学、程序设计等专业基础课程安排在同一学期显然不合适,教学安排缺乏层次性。

3.师资力量存短板

信管专业教授软件工程的教师几乎都毕业于计算机专业,不仅缺乏管理学相关知识且在教学思想上沿袭了理工科的风格,偏重程序研发流程,忽略管理信息系统开发过程的多学科交叉特点,导致学生把管理信息系统等同于一般的计算机软件,使得学生对管理信息系统的内涵认识不足,甚至产生误解。此外,大多数教师并没有实际参与大型管理信息系统项目的开发,缺乏实际的研发经验,故难以全面、深入地介绍管理信息系统研发过程和特点。

4.适用教材缺乏

全文阅读