HI,欢迎来到学术之家,期刊咨询:400-888-7501  订阅咨询:400-888-7502  股权代码  102064
0
首页 精品范文 软件工程专业论文

软件工程专业论文

时间:2022-08-06 08:20:41

软件工程专业论文

第1篇

在应用型本科院校中,尤其是软件工程专业,毕业设计作为教学计划的重要组成部分,是实践教学中的最后一个环节,也是对学生在校期间所学知识的一次综合、全面的总结、应用和提高。由于毕业生数量的不断增加和软件行业的迅猛发展,导致就业门槛越来越高,就业压力也越来越大,通过毕业设计过程中的训练,能有效提高学生的工程应用能力,使学生得到一定的实践经验,有利于学生从学校向工作岗位的平稳过度。因此,毕业设计质量的好坏,不仅反映了一所高校的教学质量,也会直接影响到学生的就业竞争力和就业后的职场适应能力。

2存在的问题

1)思想认识上不够重视学生方面:有些学生存在完成任务式的应付心里,避重就轻,能简就简,敷衍了事。有些学生则只重视找工作而轻视毕业设计,不愿在毕业设计上花费太多时间和精力,甚至有些学生还以找工作为由,完全依赖于导师,向导师索要源代码,甚至花钱在网上购买来交差。已经找到工作的学生,更是认为毕业设计做的好与不好对自己没什么影响,对待毕业设计也更加心不在焉。导师方面:大多数指导教师除了要指导学生毕业设计之外,还要承担大量的教学和科研任务,在毕业设计指导工作上能够投入的精力和时间非常有限,致使有些导师对毕业设计的指导工作不太重视,对学生放任自流,不管不问,或者是直接将相关源代码发给学生,以“简化”指导工作。由于思想上的不重视,学生学习态度不认真,导师指导工作不到位,造成毕业设计流于形式,疏于管理,效果较差,使得学生白白浪费了毕业前的一次综合训练机会。因此,如何充分认识毕业设计的重要性,并进行相应的教学改革是软件工程专业毕业设计必须要面对并解决的问题。

2)时间安排上不够科学毕业设计一般安排在第八学期,这期间刚好是学生求职和考研的黄金时间段,由于目前就业形势的日益严峻,学生就业压力越来越大,当求职和考研时间与毕业设计时间发生冲突时,学生都会选择将主要精力投入到求职和考研上,有些还要去外地求职、应聘考试、面试等,毕业设计自然是无暇顾及。而且,学校方面,为了保证就业率,往往对学生毕业设计的质量也是睁一只眼闭一只眼,这又在无形中鼓励了学生消极对待毕业设计的态度,毕业设计质量下降也就成为必然结果。

3)题目设置上不够合理由于毕业设计在高校各类教学活动中是最具综合性和独立性的,相对于常规课程而言,对指导教师要求也就更高,尤其软件工程专业,工程实践性比较强,但每年真正来源于实际工程项目的题目所占的比例较小,很多题目都是虚构出来的,导致有些题目不是理论性太强,就是缺乏具体需求的支撑,使学生很难从毕业设计过程中真正领悟到真实的软件工程方法。而有些指导教师自己都没参与过实际的工程项目,本身就缺乏实践经验,对学生毕业设计的指导只是凭着自己的感觉来进行,缺乏系统性、整体性、科学性和严谨性,学生遇到问题后,难以得到及时的解决,导致抄袭现象时有发生,甚至有些学生直接照搬往届毕业生的设计成果。毕业设计的主要目的在于通过毕业设计的训练来提升学生对所学知识的综合应用能力以及创新能力,从而实现学生从学校到工作岗位的平稳过度。但由于题目设置上的不合理,题量太少,层次不清,导致选题匹配效果差。在选题时,部分能力差的学生所选题目难度太大,造成毕业设计很难完成,而有些能力强的学生所选题目难度过小,达不到能力提升的目的。

4)过程监管上不够到位众所周知,对于软件工程项目而言,过程控制与管理是项目执行的关注点,毕业设计也当如此。虽然学校也会在毕业设计过程中组织对各阶段的工作情况进行检查,但执行检查工作的不一定是专业教师,使得这种检查大多只是对指导老师所填写的各种表格和文档等表面内容进行检查,对毕业设计的过程起不到实际的监督作用,再加之有些学生在校外求职或实习等原因造成指导教师与学生无法定期见面和沟通不畅等问题,使得指导教师难以用软件工程方法对学生进行指导。毕业设计虽然启动较早,但实际上很多学生前期在毕业设计上很少投入时间和精力,只是在答辩前为了完成任务而赶工应付,这样的毕业设计质量自然也就不佳。

5)量化考核上不够严格毕业设计成绩一般由平时成绩+论文成绩+答辩成绩三部分按一定比例构成,平时成绩由指导教师自行把握,论文成绩则由其他有经验的教师进行评阅,答辩成绩由答辩委员会老师按照相关评分标准打分并取平均分,这样虽然基本可以保证成绩的公正性,但成绩构成太简单,未显示地将开题报告、文献翻译、分析和设计过程以及总结等纳入到考核范围,对毕业设计的前期和中期工作没有约束力。在成绩评定时,有些导师要求不严,采取宽容迁就的态度。答辩时,通过门槛较低,造成大部分学生仅以答辩及格为目标,在思想上不重视,答辩准备工作不扎实。同时,学校为了提高学生毕业率,在最终答辩时,对毕业设计的质量要求也有所放松,这也是导致毕业设计质量难以保证的一个重要原因。

3采取的对策

时间安排上,可以提前启动毕业设计工作,将原来的第八学期开始提前到第六学期中后期,此时学生已经学完大部分课程,具有了一定的知识基础,而且学生都在校,可以随时与导师见面,指导教师也有充分的时间对毕业设计项目随时跟进,随时指导。导师资格审查上,对于软件工程专业来说,学生毕业设计的导师,应该由长期从事实际工程实践或者有较好科研成果的“双师型”(双师即“教师”、“工程师”)教师来担任,也可以聘请校外科研单位或企业中水平较高的工程师来担任企业导师,这样不仅可以减轻指导教师短缺的压力,也能促进指导教师队伍多元化模式的形成。题目设置上,要求题量要充分,使得水平层次不同的学生都能选到合适的题目;难度和工作量要适中,且要有一定的创意,使学生通过毕业设计的训练,在综合应用能力和创新能力上都能够得到有效的提高。有课题的指导教师要尽量结合自己的课题来设计题目,没课题的指导教师可以从与学校有合作的企事业单位中获取有实际意义的题目。鼓励学生根据自己的兴趣点和就业取向自拟题目,允许学生到实习企业中根据企业的实际工程需要选题和实施毕业设计,这样既能解决实际问题又可完成毕业设计。过程监管上,首先要在指导教师和学生之间建立有效的沟通联系机制和问题讨论的例会制度,充分发挥指导教师的引导作用,在毕业设计过程中,坚持每周师生沟通一次。学生提出问题,指导教师引导和总结,鼓励学生发挥主观能动性和创造力。同时,学校要成立由领导牵头、具有一定工程实践经验的专业技术人员组成的督导组,对毕业设计过程包括选题、开题、中期检查、答辩和成绩评定等各个环节实施有效的监控和督导,加强管理学生的同时也要加强对指导教师工作质量的检查,确保毕业设计工作能够有序、有效的实施。量化考核上,要对毕业设计从前期的开题、文献查阅,到中期的分析、设计、实现,再到后期的总结等各个阶段的进行量化考核,前一阶段的成绩考核不合格者,不能进行下一阶段工作,必须加以整改,直到整改合格后才能进入下一阶段。对于未能按要求如期完成毕业设计的可以推迟答辩,对于首次答辩不合格的可以进行二次答辩,仍不合格的,可以缓发毕业证。只有建立严格的考核制度,才能对学生有约束力,让学生从思想上重视毕业设计,进而保证毕业设计的质量。

4结束语

第2篇

[关键词]软件工程 课程体系 构建 实现

[作者简介]李泽平(1971- ),男,布依族,贵州贵定人,黔南民族师范学院计算机科学系,副教授,研究方向为软件工程和计算机教育。(贵州 都匀 558000)

[基金项目]本文系2009年贵州省教育厅自然科学类科研项目“贵州省中小学信息技术教育的现状调查与对策分析”(项目编号:黔教科20090048)和黔南民族师范学院2011年院级教改项目“民族地区高校应用型计算机人才培养实践教学体系构建研究”(项目批准号:jg-11-02)的研究成果。

[中图分类号]G642.3 [文献标识码]A [文章编号]1004-3985(2012)23-0128-02

2011年,软件工程学科经国务院学位委员会关于印发《学位授予和人才培养学科目录》的通知(学位[2011]11号)文件确定增设为一级学科(080835),同年5月,教育部组织开展第四次《普通高等学校本科专业目录》修订工作,软件工程专业被列为目录内专业(080902),而后由教育部高等学校软件工程专业教学指导分委员会编制的《高等学校软件工程专业规范》随之印发,标志着软件工程专业进入了一个规范发展的崭新阶段。软件工程专业在人才的培养目标、培养规格,教育内容、知识体系、课程体系等方面的界定已非常明确,教学方法也比较成熟。本文探讨了软件工程专业本科课程体系的构建,力求既能符合黔南民族师范学院的实际,又能凸显贵州省的地域和行业优势,培养符合社会需求的应用型软件工程人才。

一、培养目标

课程体系的构建必须以人才培养的目标为核心,使学生能依据个人的职业规划,在教学活动中自主地制定个性化的学习计划,主动地开展学习活动,最终实现人才培养目标。黔南民族师范学院(以下简称“我校”)将软件工程专业本科人才培养的目标确定为重点培养软件工程学科的基础知识和基本实践能力,培养德、智、体、美全面发展的,掌握自然科学和人文社科基础知识、计算机科学基础理论、软件工程专业及应用知识,具有软件开发能力、软件开发实践的初步经验和项目组织的基本能力,具备初步的创新、创业意识,具有良好的英语运用能力,能适应技术进步和社会需求变化的高素质软件工程应用型专门人才。

二、知识体系

软件工程教育兼具的科学教育属性和工程教育属性为课程体系的构建提供了指南。通过对SWEBOK、CCSE2004和《高等学校软件工程专业规范》的研究我们发现,软件工程学科与计算机科学、数学、工程学、管理学、经济学、系统工程学等有着密切的联系。软件工程专业本科课程体系的构建应注重发展交叉学科,以思想政治教育、自然科学、人文社科、经济管理、外语、文艺、体育、科技活动等通识教育和综合教育为基础,以软件工程学科专业知识、软件工程专业实践训练为核心设计课程体系,着重培养学生“软件需求、软件设计、软件构造、软件测试、软件维护、软件配置管理、软件工程管理、软件工程过程、软件工程的工具和方法、软件质量”10个知识域中的一个或多个,使之在软件工程理论与方法、软件工程技术、软件服务工程、领域软件工程4个研究方向上有所侧重,并体现出明显的特色,提高学生的就业竞争力,适应软件产业的发展和社会的需求。

三、课程体系

根据知识体系的要求,结合我校的办学条件、就业情况,贵州省的地域和行业优势、生源素质等实际,设计出以工程专业课和工程实践课为主体,以自然科学为基础,以人文、社科、经济管理类课程为有益补充的软件工程专业本科课程体系框架(见129页图1)。

1.理论课程。贵州作为全国“欠发达、欠开发”的省份之一,软件产业起步较晚,与发达地区存在较大差距,软件人才更为紧缺,目前在应用领域的需求比较旺盛。我校在软件工程理论研究和领域软件工程方向的办学条件尚不成熟。因此主要以软件工程技术、软件服务工程作为专业方向,设计课程体系。课程体系由公共基础课、专业基础课、专业核心课、专业拓展课、素质拓展课和实践教育课六大部分组成,具体内容和相互关系如图1。

第3篇

【关键词】软件工程;专业建设;课程群

0 引言

作为一个新兴的学科,软件工程涉及计算机科学、数学、管理学等领域,是一个综合叉学科。同时,软件开发技术得到了飞速的发展,云计算、移动互联网络、手机系统和APP软件、物联网以及互联网+概念的提出,对计算机行业,特别是软件工程专业的发展产生了深远的影响。

如何利用现有技术,对软件工程专业的人才培养模式进行改革,从而培养出适应社会需要的高素质、实用型、具有竞争能力的软件工程高级应用型人才是摆在软件工程教育工作者面前的一个重要任务。

本文以河南城建学院“人才培养模式改革”为契机,结合软件工程专业的学科特点及现阶段的教学困境,提出了软件工程专业课程群建设方案,旨在为课程体系与教学内容整体优化提供有益探索。

1 软件工程专业认知与定位

对比计算机科学与技术专业,软件工程专业侧重于用工程化的技术和方法,应用计算机科学、数学、及管理科学等原理来开发软件。其中,计算机科学、数学用于构建模型与算法,工程科学用于制定规范、设计范型、评估成本及确定权衡,管理科学用于计划、资源、质量、成本等管理[1]。软件工程包括十大知识领域:软件需求、软件设计、软件构造、软件测试、软件维护、软件配置管理、软件工程管理、软件工程过程、软件工程工具与方法、软件质量。

立足于计算机工业和软件产业的人才需求现状,高等院校的软件工程专业人才培养模式不仅要注重学生基础知识和动手能力的培养,同时也要注重学生工程能力和职业素质的培养。我院软件工程专业人才培养目标为:培养适应我国社会主义现代化建设需要,德、智、体、美全面发展的,掌握自然科学和人文社科基础知识、计算机科学及软件工程专业基础理论知识的,熟悉软件开发相关理论和知识的,具有软件开发实践和项目组织的初步经验和能力,具有创新和服务意识,具有熟练的外语运用能力,能在企、事业单位和行政管理部门从事科学研究、开发和应用的,能适应技术进步和社会需求变化的高素质、实用型、具有竞争能力的软件工程高级应用型人才。

2 现有人才培养模式存在的教学困境

现有人才培养模式存在的教学困境究其根源是由软件工程专业的学科特点决定,即软件工程学科涉及到理论、方法、工具的综合交叉;软件项目的过程、组织和管理涉及面广;同时软件工程专业的方法、技术和知识更新快、使用周期短、国际化程度高、应用范围广、服务性强以及软件使用的不连续性和不确定性[2]。

现有人才培养模式存在的教学困境:

1)专业核心课程工程化的原理贯彻始终,理论性强,理论指导实践的意义重大,但部分学生专业基础不牢,软件开发经验不足,无法把理论教学的知识与实践结合,课堂教学效果不好。

2)软件开发技术发展迅速,特别是云计算、物联网、移动互联网以及互联网+等技术的发展,使得学生在校学习的专业理论和技能素养跟不上社会对于软件工程专业技术人才的要求。

3 软件工程专业课程群建设

本文提出的软件工程专业课程群建设是在河南城建学院“人才培养模式改革”大背景下,结合软件工程专业的学科特点及现阶段的教学困境,提出了软件工程专业课程群建设方案。

需要强调指出的是,课程群建设并不是机械地进行课程排列组合,它应该是把一批具有相同认知结构和培养目标的本专业或跨专业课程的知识、方法、问题及解决方案有机地整合形成的课程体系[3]。课程设置要体现与时俱进,且要和当前高校的教学方法改革相结合,旨在为人才培养模式改革在系统化、理论化、工程化、实践化等方面提供建议,针对专业特点构建工程化实践教学体系,形成一个融基础理论、实验教学、工程实践为一体的整体化培养机制,使学生各方面的能力都得到全面均衡的发展。

按照循序渐进的教学指导原则,本文提出的软件工程专业课程群建设,主要从课程群建设和实践能力培养两个方面进行阐述,从而形成一体化培养机制,使学生在打牢专业基础知识的同时,在实践技能方面得到全面均衡发展。

1)软件工程专业课程群建设

软件工程专业课程群建设从理论基础课程群建设考虑。其中,理论基础课程群建设可以细分为四个课程子群,分别为:公共基础课程群、专业基础课程群、软件工程专业课程群和专业方向课程群。

具体来讲,四个课程子群的包含的课程如下。

(1)公共基础课程群。包含思想政治类(具体包含课程:思想道德修养与法律基础、马克思主义基本原理、思想和中国特色社会主义理论体系概论和中国近代史纲要)、大学英语(一、二、三、四)、高等数学(上、下)、大学体育(一、二、三、四)和计算机科学导论等课程。

(2)专业基础课程群。包含高级语言程序设计、大学物理(一、二)、硬件类(数字电路、模拟电路、计算机硬件技术基础)、线性代数、离散数学、概率论与数理统计、软件工程导论等课程。

(3)专业课程群。包含程序设计语言类(具体包含课程:面向对象程序设计、Java基础、网站建设)、数据结构、计算机组成原理、数据库原理、计算机网络、操作系统类(操作系统和Linux操作系统),面向对象分析与设计(UML)、软件工程过程与管理、软件质量与测试、软件系统设计与体系结构、计算机安全和编译原理等课程。

(4)专业方向课程群。包括限选课和任选课两类。其中限选课分为两个方向:.NET方向(具体包含课程:C#程序设计、网站建设和 .NET企业级开发)和Java方向(具体包含课程:典型数据库、Java Web应用开发和J2EE企业级开发)。任选课具体包含课程:算法分析与设计、人工智能、平面设计、Android技术应用和绘画鉴赏等课程。

2)实践能力培养

实践能力培养主要从上机实验、课程设计、实习实训和毕业设计四个方面入手,着重培养学生的实践动手能力。

实践能力培养以“四面一体”为原则,着重培养学生的实践动手能力。所谓“四面”,是指实践环节从上机实验、课程设计、实习实训和毕业设计四个方面进行理论知识的深刻理解和熟练运用,从而使学生打下坚实的理论基础知识,并运用到实践。其中上机实验主要是对相关课程的理论知识点进一步理解和掌握;课程设计则是以小项目为基础,使学生对课程总体把握和熟练运用,把所学知识运用到实践中去,理论联系实践;实习、实训环节是让学生对新技术、新知识的学习,同时进一步提高学生的动手能力;毕业设计注重对理论知识和实践能力的综合运用,形成全面的专业技能。

“一体”是指“四面”的最终目的是为学生的实践能力服务,在毕业设计环节实现四面归一,提高学生从整体把握并综合运用所学的理论、实验、课程设计、实习、实训中的知识,知识归一、动手能力归一,形成全面的专业技能,使学生在进入社会工作后,有很强的实践动手能力,适应工作的需要。

4 结束语

本文依据我校软件工程专业认知与定位和现有人才培养模式存在的教学困境,提出了软件工程专业课程群建设方案,旨在为课程体系与教学内容整体优化提供有益探索,从而培养能适应技术进步和社会需求变化的高素质、实用型、具有竞争能力的软件工程高级应用型人才。

【参考文献】

[1]张效祥.计算机科学技术百科全书[M].北京:清华大学出版社,2005,11:183.

第4篇

1构建软件工程硕士课程体系框架

哈工大软件学院软件工程硕士的培养目标是培养学生掌握软件工程领域的基础理论、先进技术方法和手段,具备独立承担软件工程技术工作的能力、组织和管理专门技术工作的能力,同时具有较丰富的、与国际接轨的学习训练经历,工程实践经验,企业经历和良好的职业素质;使其树立科学的世界观与方法论,品行优良,身心健康,成为具有国际竞争力的软件产业高级人才,为进一步成为软件产业领军人物(高层技术人才与管理人才等)奠定坚实的基础。面向企业,综合考虑软件系统分析与设计能力、项目管理能力、企业管理能力、组织与沟通能力、团队合作能力等方面的需求,根据学科专业方向的设置,按照“模块化知识体系与能力体系相结合,体现国际化与工业化特色”的原则,我们制订了软件工程硕士课程体系框架结构,如表1所示。软件工程硕士课程体系框架针对培养目标和企业的需求,对能力培养的具体目标进行模块划分,横向构造“6个能力层面”;纵向根据专业方向划分为多个能力域,形成多个能力培养模块。软件工程硕士的专业方向应紧跟行业需求,灵活设置。近几年,哈工大软件学院先后设置了网络与信息安全、语言处理与信息检索、数字化企业与电子商务、嵌入式系统与软件、物联网工程和移动互联等专业方向。在专业要求方面,全日制学生必须修满32学分;在职学生必须修满35学分。软件工程硕士研究生学制2~4年,在校学习1年,修满规定的学分,包括参加企业实训3周;实习基地实习1年,结合企业项目,完成学位论文。企业实习期间实行双导师制,校内导师和实习单位导师分别指导项目开发和学位论文撰写工作。校内学习与企业实训交叉进行,校企合作,产学研结合,联合培养软件工程专业硕士。

2组建专兼职结合的国际化、工业化高水平师资队伍

构建3支师资队伍,每支队伍30人左右。建立以工业型师资为核心的专兼职师资队伍,形成工业型专职教师、校内及国内外兼职教师相结合的师资队伍结构,是实现国际化、工业化培养目标的重要保证。第一支是以工业型师资为主的专职教师队伍。这些专职教师多数来自工业界、国外著名大学或国内外IT企业等。其中除任课教师外,还设若干专职实验教师岗位。实验教师主要负责专业课的实践环节教学,包括实验设计与指导、上机指导、课程设计和毕业设计等实践教学环节,同时实验教师还负责TA(实验辅导教师)的培训及管理工作。第二支队伍由计算机科学与技术学院和管理学院认证并聘请的校内兼职教师组成。他们主要负责软件学院的基础课、计算机专业基础课和管理系列课程的教学任务。第三支队伍由来自国外高校或国内外知名IT企业兼职教师构成。他们来自行业前沿,掌握国内外最先进的软件开发技术和人才培养经验,了解企业最新的技术需求。他们在承担软件学院的软件工程类、软件工具平台类的课程部分教学任务的同时,作为双导师制的企业导师,在研究生的工业实践、毕业设计、学位论文的指导中发挥重要的作用。以工业型专职教师为主、校内兼职基础型教师为辅、国内外兼职教师相结合的师资队伍结构,可以满足软件工程硕士国际化、工业化的人才培养需求。

3校企合作,加强企业实践教学

建立完善的工业型软件人才培养体系,包括工业型人才培养方案、课程体系与教学大纲、质量保证体系、工业化教学方式、技能实验与大作业、综合设计与企业实训、工业实习与学位论文、校企联合实验室与实习基地建设等环节,将“工业化,个性化,精英式”的办学理念贯穿于人才培养的全过程。在校软件工程硕士第1学年寒假要到企业参加为期3周的实训。实训由学院统一带队组织,实行半封闭式管理。期间接受企业培训,在企业导师的指导下分组完成指定的项目。通过强化训练,学生可以了解企业的项目开发流程,学习运用所学理论解决实际问题的方法,发现学习中的不足和技术上的差距,对后续学习起到引导和促进作用。第2学年,学生到实习单位实习并根据实习期间的实践工作内容撰写学位论文。对硕士毕业论文的要求是:具有系统性和完整性,能表明作者具有一定的独立工作能力;理论联系实际,应用所学的理论知识解决实际工作中的关键问题;具有实用性且必须包含一定的工作量。取得的成果要有一定的先进性,要能表现出学生具有综合运用所学知识解决工程实际问题的能力。从2002年至今,哈工大软件学院建立了完善的工业实习管理制度,在国内外建立工业实习基地70余个,实际接收学生实习的企业达200余家。工业实习基地的建设有效保证了工业化人才培养的质量。为加强与企业界的沟通,了解企业需求,完善培养体系,提高学生工业实习质量和加强工业实习管理,学院定期举办“工业化人才培养与企业合作高级研讨会”,与企业界人士研究和探讨工业化人才培养中的合作问题,企业参与意识很高,取得了较好的效果。

4与国外大学合作,联合培养软件工程硕士

通过对软件工程国际化人才特点及成长规律的研究,我们对软件学院国际合作办学模式开展了学科专业、教学体系、合作形态、组织方式、国际文化交流等层面的前瞻性研究,率先提出并建立了特色鲜明的多国联合办学、多学科交叉渗透、多国文化融合的,培养高层次、复合型软件工程人才的国际化联合教育模式。哈工大软件学院与法国波尔多第一大学、法国克莱蒙-费朗第二大学、德国柏林工业大学、爱尔兰都柏林工业大学、爱尔兰国立都柏林大学、美国Embry-Riddle大学、意大利帕维亚大学、瑞典林雪平大学、日本会津大学等合作,采用哈工大软件工程硕士专业学位(MSE)+合作方硕士学位(X)的“MSE+X”模式,联合培养硕士研究生。培养过程共分4个学期。第1学期,学生在各自学校学习;第2学期,外国学生来哈尔滨工业大学,与哈工大学生合班学习;第3学期,中外学生一起去合作方学校学习;第4学期,学生自选在国内、外企业实习、撰写学位论文、答辩毕业,哈工大与国外大学分别颁发硕士学位证书。跨国联合培养班的全部课程采用英语教学,实行三导师制,由国内、国外大学和企业导师共同指导。为加强交流,每年举办一次“中欧软件工业教育国际研讨会”,来自海内外的高校教师、企业界朋友在一起交流经验,共同探讨国际环境下人才培养的相关问题。多国联合培养软件工程硕士实现了国际化与工业化办学理念的教育模式与教学体系的设计与实践,软件工程国际化人才的跨国联合培养模式及实践,面向企业人才需求的教学与工业实习,国际化师资与专家队伍建设,教育质量保障体系建设与管理及跨文化的融合等目标。

5完善质量保障体系,加强过程管理借鉴

欧美教学质量保证的成功经验,哈工大软件学院建立完善且适合自身特点的国际化、工业化人才培养质量保证体系。学院成立教学指导委员会和教学督导委员会,在各个培养环节上严把质量关,把规定、培训、预防、跟踪、反馈、控制等质量保证活动渗透到教学执行过程中的每个环节。加强实践教学环节的监督检查,有效保证教学质量和人才培养质量的稳步提高。为提高软件工程硕士的指导质量,学院成立了若干个指导教师组,每个指导教师组负责一个专业方向的硕士指导,设组长1人,负责本组指导教师的组织和督导。每名硕士研究生指导教师每年指导的硕士研究生不超过4人。学院组织专家组审核学位论文。只有通过了专家组的审核,学生方可申请学位论文答辩。另外,硕士研究生开题、中期检查和结题验收、论文等环节也有详细的规章制度、严格的过程管理,这是提升硕士研究生培养质量的有效手段。

6成果与特色

在软件工程硕士研究生培养的实践中,哈工大软件学院在以下几个方面取得了优异的成绩,形成了自己的特色,积累了丰富的经验。(1)面向软件产业的人才需求,校企合作,形成较为完善的应用型硕士研究生的工业化人才培养体系,开展多种形式的校企合作,建立有自身特色、符合国际化标准、满足软件企业需求的工业化人才培养计划。(2)创立软件工程国际化人才培养模式和教育体系;实现“跨学科融合,双边对等招生,联合培养,融合文化”的“MSE+X”软件工程硕士跨国联合培养模式,为学生提供国际化学习环境。(3)建立与国际接轨的办学机制和教育质量保证体系,实施课程考核累加计分制等教学管理新制度。(4)培养了一大批具有国际竞争力、满足企业需求的高级软件人才。

7结语

第5篇

关键词:校企合作;软件工程人才;培养模式;创新能力;实践教学;国际交流

中图分类号:G642

文献标识码:B

文章编号:1672-5913(2008)21-0029-04

软件产业既是我国重点发展的具有战略性质的基础产业,又是能将现代IT技术与我国深厚文化底蕴融合的创意型产业。软件产业的发展是推动经济发展、保障国家安全的决定性因素,对促进国民经济增长、国防建设现代化、社会信息化,推动新技术的发展和新产业的产生,推进经济结构调整、转变经济增长方式,促进经济、社会协调发展和先进文化的传播具有重要的战略意义。

软件是信息产业和传统产业的核心和灵魂,我国虽然是软件应用大国,但目前还不是软件产业大国。为此,我国近年来了一系列政策和措施,扶持软件产业的发展,如《关于鼓励软件和集成电路产业发展的若干政策》(国发[2000]18号文件)、《振兴软件产业行动纲要》(2002至2005)[2002]47号文件等。随着政策环境不断改善,我国软件产值增长速度明显加快,从1998年的325亿增长到2005年的3900亿,软件技术渗透到各行各业、各个领域,促进了新学科的发展和新产业的建立。但与发达国家速度相比,我国软件产业仍有较大的差距。

目前,制约我国软件产业品牌化、规模化和多元化发展的主要瓶颈是软件人才结构性矛盾突出,具体表现为:

(1) 高端人才供给匮乏,缺乏高层次、高素质、创新型人才。即缺乏能够紧跟世界前沿技术动态和趋势,掌握符合国际标准的软件工程规范和技术规范,具有大型系统的开发管理经验,熟练运用一门以上外语,具有良好的团队协作能力,进而能够参与国际软件发展与竞争的高层次软件工程人才;如成都市软件协会分布的《成都市软件从业人员2007年上半年供需报告》称,2007年成都市软件从业人员缺口约8900人,而其中的高端人才缺口约6900人。软件产业的迅速发展对软件行业从业人员提出了更高的要求,尽管国内高校软件工程人才的培养数量日益攀升,但是高端软件工程人才的匮乏却严重阻碍了我国IT企业的发展。

(2) 人才规模不足,离产业发展需求还有差距;现在我国共有一万多家企业在从事软件开发及相关业务,而目前全国的软件工程人才总量与之相差甚远,缺口很大。

(3) 人才知识结构不合理,目前我国的软件工程人才主要集中于编程人员,而软件架构师、项目管理、文档管理、测试等等人才比较缺乏。缺少面向产业、适应企业需求、工程能力强的人才,学生进入企业要“转型”,形成企业人才的“滞后”现象。

1面向校企合作,优化和完善知识结构和课程体系

相对于计算机科学与技术专业而言,我们认为软件工程专业应重点培养工程与技术方面的人才,更强调软件设计与开发过程中的系统性、可操作性和可重用性。

为此,我们参考和借鉴IEEE在2003年推出的软件工程课程大纲以及IEEE/ACM软件工程学科组于2004年5月公布的软件工程教育知识体系(CCSE2004 SEEK),认为软件工程人才的合理知识结构应包括通用的软件工程知识、软件应用领域的专业知识和具体软件工具和环境的知识几个方面。其中通用的软件工程知识应涵盖软件工程基础知识和技能,而软件应用领域的专业知识指还应该具有行业领域的知识,如嵌入式软件工程硕士必须具备特定行业,如移动设备、数字家电、数控机床、汽车电子、医疗电子、航空航天、工业控制等领域的相关知识,才能胜任工作。

为此,在进行软件工程教学方案与课程内容体系改革的过程中,我们根据软件产业发展的需求,动态调整课程设置,逐步加大选修课的比例。从学校来讲,要从企业的实际需要和IT发展出发,制定适应企业需求的培养方案及人才培养模式,为企业发展提供更为广泛的服务体系,也为学生提供良好的就业环境。在多模式校企合作中,我们提出了一种定制式课程建设框架。即将选修课划分成若干模块,以适应不同企业需求。同时, 由于不同层次软件工程人才的定位不同, 相应的课程设置与教学方法也应有明显的区别。其中软件工程本科教育定位在以技术能力培养为主,本科生在校期间计算机软硬件基础学习较多,形成思维定势,但开发大项目实践经验很少,没有切身体会,如果没有经常性的编程练习,学习兴趣逐渐消失,因此对本科生而言,重点应放在编程与系统设计能力的培养上。基于此,我们开设的软件工程核心课程包括软件工程概论、软件测试技术、人机交互技术等课程。软件工程硕士教育定位以工程能力培养为主,注重软件工程方法与系统开发能力的培养。特别是在职工程硕士,他们在工作中有很多机会接触项目,参与程度较深,工作经验丰富,深感系统开发中方法和管理的重要性,对研究开发方法、过程、工具有实际需求,深感软件工程对于解决实际开发中遇到的问题很有帮助,他们希望对新技术、新方法有更多的介绍,希望通过课程能够互相交流,共同提高。对于他们,应以实例学习和管理为主线,介绍软件系统开发的实例和软件项目管理的基础。其课程的设置要注重专业知识的前瞻性和国际性,基于此,我们开设了软件项目管理、软件体系结构、系统分析与设计等高级课程。

对软件工程教学方法与课程体系进行改革,还应根据软件产业发展的需求以及与企业接轨,动态调整课程设置,逐步加大选修课的比例,其中部分课程(如软件项目管理、软件体系结构、人机交互技术等)尝试实施双语教学,通过引进国外软件工程经典和优秀教材,从使用英文教材、中英文结合教学入门,逐步增加英语授课比例,最后过渡到全英语教学。

2改革实践教学,构建适应企业需求的立体化实践体系

实践教学是实用性软件工程人才培养的重要环节,也是创新能力培养的关键环节。必须建立多层次立体化实践教学体系,才能达到全面培养学生创新能力的目的。

2.1在理论教学中培养学生的实践能力

变理论教学与实践教学的分离为融合,实践教学与理论教学并重,组织和鼓励师生参加实践教学改革。在课程教学内容的选择上,注意采用最新、最有用的知识,紧跟社会潮流;对课程实验、课程设计,要求授课教师既讲授理论知识,又指导上机实验,充分体现理论教学与实践教学为一体的教育思想。同时,在教学计划的指定上,加大实验学时比例,理论教学精讲,实验教学多练,加强实验教学改革,建立企业实际项目库,以企业实际项目开发为背景,科学设置实验题目,通过实验促使学生将所学理论知识转化为分析与解决问题的能力。

为了培养学生的创新意识,提高学生的创业能力,必须重视课内外实践教学环节对培养和发展学生能力素质的不可替代的作用,加强课内和课外实践教学的整合,在培养计划中进行统筹安排,形成完善的实践教学体系。在实践教学的环节中,加大综合性、设计性实验的比例,加强实习、工程实践、课程设计、毕业设计(论文)环节中的工程训练,把提高学生的创新能力和实践动手能力贯穿于培养计划的始终。

2.2在课题研究中提高学生的实践能力

引进软件企业的实际项目,让学生结合实际项目进行软件开发综合训练。软件开发实训严格按照软件工程开发流程进行,聘请企业资深技术人员进行指导,通过软件开发实训,既培养学生的实战能力,同时又培养学生的沟通协调能力和团队合作精神,为毕业设计和就业打下良好的基础。

目前,我们和摩托罗拉中国有限公司、苏州国芯科技有限公司、紫金电子有限公司等多家单位联合建立了苏州大学摩托罗拉单片机实验室、江苏省嵌入式软件技术中心苏州大学分中心等具备一定科研能力的实验室,从而为学生创新能力的提高创造了条件。同时,学院成立了自己的开放实验室,主要为学院学习成绩优异且有较强科研能力的学生提供了进行创新性实验的条件,并制定了完善的开放实验室条例,规定了其运行机制及运行模式。如进入开放实验室的学生必须结成科研小组,采用自主选题、指导教师指定课题或企业提供课题等方式,经开放实验室评审委员会评定后才能进入开放实验室。科研小组必须在一定时期内完成一定的科研任务,并提交课题总结报告或论文。由于开放实验室必须以课题小组形式申报课题,开放实验室在培养学生创新能力的同时,还培养了学生的团队开发能力。因此,开放实验室为广大学生提供了自由发展的空间,大大激发了学生的学习热情、创造激情,为其成才创造了有利条件。

2.3在各种专业竞赛中增强学生的实践能力

为培养学生的实践能力,学院经常组织开展各种软件设计程序竞赛,支持学生参加国内外举办的各种软件设计大赛,培养学生的创新精神和迎接挑战的能力。近年来,多次组队参加ACM/ICPC(国际大学生程序设计竞赛)并获得铜奖。参加省程序设计大赛获一等奖,参加微软“创新杯”全国大学生软件开发大赛等。这些专业竞赛促进了学生实践能力的提高。

3加强校企合作,构建与产业水平同步的工程实践环境

工程实践环境是教学体系的重要环节,其重点在于构建一个和产业技术水平同步的高水平的学生工业实习基地。为学生提供实际项目开发机会,使得学生能在毕业前深入体会企业文化,完善自身职业素质和工程能力。

3.1加强实习基地建设,提高学生工程实践能力

目前,我们已在苏州工业园区、苏州新区的摩托罗拉、A M D、罗技、旺宏等世界知名I T 企业建立了软件工程专业教学与实习基地,并与中创软件工程股份有限公司合作在昆山成立了苏州大学中创软件工程学院实习基地,与福华先进微电子(上海)有限公司联合招收嵌入式软件工程硕士。在实践中教,在实践中学,使得软件工程专业学生实践能力明显增强。我们将企业实习划分成三个阶段。一是认知实习,时间一般为一周,主要让学生全面了解企业的运作模式、各企业主要研究方向以及当前流行的开发工具和软硬件平台。二是暑期社会实践,时间为50天,主要让学生利用暑假深入企业,参与企业的一些小型项目或一些模块的开发,甚至是文档的整理工作,目的是让学生知道所学知识到底能如何运用、并初步具备运用所学知识进行一些实际项目开发的能力。三是毕业实习,时间为一学期,主要让学生综合利用所学知识进行较为完整的项目开发,目的是让学生毕业后具备独立胜任项目开发与设计的能力。在实习基地建设中,应注重学生管理与质量监控。以毕业设计为例,我们制定了一系列有关毕业设计的规章制度,如毕业设计计划、毕业设计选题原则与类型、毕业设计的步骤、校外毕业设计试行办法等条例,并发放企业严格执行。对于安排毕业实习生多的企业,我们还专门安排指导教师长驻企业,从而确保了毕业设计和论文的质量。

3.2聘请国内外著名企业的高水平专家,拉近学生与社会、企业之间的距离

我们聘请企业授课教师、高水平企业技术骨干作为学校课程指导小组顾问,并定期聘请国内外有丰富实践经验的企业家、技术骨干为学生开设相关专业课程,最大限度地拉近了理论与实践的距离,拉近了学生与企业之间的距离。我们还定期举办专场讲座或技术报告会,请一些著名IT 公司的高级技术、管理专家给学生作专题讲座,让学生及时了解最新的业界动态,跟踪I T 领域的最新研究成果,从而保证了学生既能掌握软件工程领域坚实的基础理论和宽广的专业知识,又能掌握解决工程问题的最先进技术方法和实用的技术手段,让他们有较强的知识、能力和素质去适应多变的社会需求。每位软件工程硕士生除了配备双向选择的校内指导教师以外,还配备由实习单位推荐的一位具有丰富工程经验的企业人员作为校外企业指导教师。企业导师着重对实习和毕业设计的各个环节进行具体指导和严格把关,校内导师则是对学生进行设计思想的理论指导和毕业论文的指导。同时,学院还设专人对学生实习过程进行跟踪、指导与控制,在双导师之间积极促成沟通,共同完成对软件工程研究生的指导。

3.3搭建学生与企业双向选择的交流平台

由于学生在兴趣、专长和职业规划上的差异,因而他们对实习企业有各自的选择标准,但同时企业也要选择适合本单位要求的学生,为了使学生更好地找到适合自身特点的实习单位,企业能招收符合自身要求的学生,学院通过网上公布实习单位及其相关信息,学生自主报名、学院推荐,实习单位进行笔试、面试等考核程序,确定学生的实习单位。通过这种选择,企业与学生之间一开始就有了很好的信任度,双方都能最大限度地发挥主动性、积极性和创造性。

4结束语

信息化需要大批软件工程人才,各高校软件工程人才的培养应该有自己的定位和特色,目前要特别重视软件工程能力和素质的培养。实践能力是学生综合素质的重要组成部分,本文针对当前国内高校软件工程人才培养机制存在的主要不足,从改革实践教学、加强校企合作、开展国际交流合作等方面,阐述了如何加强学生的实践创新能力,培养适应企业需求的高素质的软件工程人才的几点做法,为高质量、实用性的软件软件工程人才培养作出了有益的探索。

参考文献

[1] 教育部高等学校计算机科学与技术教学指导委员会.高等学校计算机科学与技术发展战略研究报告暨专业规范(试行)[M]高.等教育出版社,2006,9.

[2] 教育部软件工程学科课程体系研究课题组.中国软件工程学科教程CCSE2004[M]. 清华大学出版社,2004,11.

[3] 杨芙清.中国软件工程二十六年.2006中国计算机大会特邀报告[R].北京,2006,10.

[4] 骆斌. 软件工程专业工程化实践教学体系的构建与实施[J]. 计算机教育, 2005,(4): 25~28.

[5] 张广泉,杨季文. 多层次软件工程人才培养的探索与实践[J]. 计算机教育,2005.(12):40~41.

第6篇

关键字:互联网+;特色专业;软件工程;培养体系

一、特色型软件工程专业培养体系的建设思路

随着“互联网+”时代的到来,推动传统产业升级转型,走创新之路,这其中,人才是关键。传统学科领域的数字化、信息化、智能化呈现出的加速变革是创新驱动、“中国制造2025”“一带一路”“互联网+”等国家战略的驱动力。这些学科的发展日益依赖软件及其相关技术。在特色型专业为主的高校中,建设特色专业领域软件工程专业已成为学科建设与发展的共识。特色型软件工程专业培养目标是:充分发挥特色学科人才培养经验,培养兼备软件工程与领域专业知识,具备特色领域软件设计、开发与应用有较深见解,具备利用软件技术解决特色领域专业问题的软件工程人才。以地学学科为例,对软件技术依赖度较高的专业有地理信息科学、测绘工程、勘探技术与工程、环境工程、水文与水资源工程、石油工程、地球物理学等。随着地质大调查的深入开展,国内外地学相关应用软件得到了迅速发展,这些专业软件具有软件种类繁多、专业性强、开发周期长、投资巨大、利用率低等特点[2],主要表现在:海量地学信息远远超过了人工所能处理的范畴;地学信息的采集、处理、展现分别由不同的部门进行处理,越来越呈现信息集团化处理的趋势。“互联网+”时代,地学的发展离不开计算机技术的进步和应用软件的发展。随着互联网、人工智能、大数据技术的发展,如何快速开发满足领域要求的软件显得越来越紧迫[3]。由于在软件工程专业建设与培养过程中普遍存在轻视领域背景知识的问题,导致具备地学与软件工程专业背景复合型人才稀缺。在实际工作中,软件技术人员会遇到不同领域之间知识鸿沟,从而引起交流障碍。特色型专业高校的软件工程专业建设过程中,知识体系构建的关键是培养规格问题,主要体现在培养标准和总体知识结构的设计与制定上。

1.特色型软件工程专业培养体系构建目标与原则

在日新月异的“互联网+”时代,特色型软件工程专业应坚持以工程教育思想为核心的专业培养模式,使之满足未来企业、新兴产业、经济社会对工程技术人才的需求,坚持在软件(包括领域软件)开发过程的管理、开发方法、开发工具和关键技术等方面,培养面向软件产业和专业领域实用型软件工程高级人才。为此,应着重从如下四方面构建特色型软件工程专业培养体系。(1)国际型。借鉴和引进国际先进教学经验,优化教学模式、教学内容、教学方法、课程体系,制定系统化的人才培养计划和课程体系。(2)创新型。优化基础理论知识的教学内容,包含新理念、新模式、新方法、新内容。培养学生创新、创造、创业和跨领域学习能力。融合学生的学习能力、工程能力和综合素质,帮助学生“发现问题、分析问题、解决问题”能力的养成。(3)工程型。依据学科的工程特性,有针对性地设计通识基础课程、将专业主干课程与工程实践结合。优化实践教学,强化工程能力培养,培养学生针对软件产品质量、开发效率、工程度量、知识产权保护等方面的分析、设计、开发、测试和维护能力。(4)复合型。结合特色型高校的专业优势,加强以目标为导向的一体化培养、增强学生的领域知识背景,培养学生的学科知识交叉与融合、技能与管理相结合、团队合作、软件研发能力与领域知识素质相结合的复合型专业人才。基于上述原则构建的特色型软件工程专业培养体系,除了培养学生软件工程基本理论和开发技术,还培养学生软件需求分析、架构设计、度量与测试、系统设计能力,这些能力是学生分析与解决问题、沟通与协调、项目管理、工程实践和参与国际竞争能力的途径,也是培养学生持续学习能力的基础[3]。

2.特色型软件工程专业培养体系的架构设计

2014年,IEEE协会发布了《软件工程知识体系》指南第3版(SWEBOKV3,SoftwareEngineeringBodyofKnowledge)[4],该指南将软件工程专业知识体系划分为15个知识域,其中包括11个软件工程实践知识域,分别是软件需求、软件设计、软件构造、软件测试、软件维护、软件配置管理、软件工程管理、软件工程过程、软件工程模型和方法、软件质量、软件工程职业实践,以及4个软件工程教育基础知识域—软件工程经济学、计算基础、数学基础和工程基础。以中国地质大学(北京)软件工程专业为例,依靠地学领域的学科优势,该专业明确以“建设特色鲜明、培养体系现代化、国内先进的行业型软件工程专业”为专业建设总目标。在设计基于SWEBOK设计软件工程专业培养体系的教学内容时,由于该指南涉及知识内容繁多,因此遇到很大的挑战。为此,只有加强课程体系的系统性和开放性,采用通识与专业结合、科学与人文结合、理论与实践结合的培养体系,才能做到有的放矢,抓住软件工程本质。基于这一原则,构建了由“通识基础+学科基础+专业核心+实践创新”四个模块构成的系统化、层次化的软件工程专业培养体系,最终目的是使学生“理论上有深度、实践上有招术”.在这一体系的通识模块和学科基础模块中,除了设置软件设计与开发相关基础课程以外,还设计了含有地学领域相关基础课程和地学信息工程领域知识,为学生熟悉地学相关领域软件的需求和业务逻辑的软件实现的方法打下基础。为了进一步加大实践课程的力度,突出学生在专业教学过程中的主体地位,在培养学生计算学科基本概念和技术方法的前提下,增加了以培养学生专业素养为目的的软件工程专业导论课、现代软件工程简史、软件工程新技术与新思维、新生研讨课、学科前沿课、地球科学概论等开放型课程,这些课程采用开放式教学内容,重点考虑与特色型专业领域紧密结合,为学生搭建领域知识与软件工程学科结合的信息传授平台。目的是培养学生良好的领域软件研发、设计与实现能力、良好领域创新与竞争能力、良好的项目规范管理能力、良好的沟通、交流与组织协调能力。最终达到特色型专业领域高层次、复合型、国际化的软件工程专业高级人才的培养目标。

二、特色型软件工程专业培养体系实施途径

在特色型软件工程专业培养体系的实施过程中,应遵循软件工程专业人才培养的基本原则和方向,充分发挥特色学科的优势,坚持走“特色学科+软件工程”的道路,强化实践环节,实现特色学科与软件工程学科的交叉与联合。

1.坚持“特色+软件”的综合能力培养

特色型软件工程专业是采用软件工程的方法和技术解决特色型专业领域的问题,解决特色专业领域信息处理流程的自动化和智能化问题。因此,必须有针对性地对学生的特色专业领域背景知识加以科学设置[5]。构建领域基础知识教育,就要坚持走“特色学科+软件工程”的道路。以地学学科为例,结合国土、地理信息、环境、地质、工程、能源等领域,在新生研讨课、学科前沿课、专业导论课等课程的设置上,每一个方向都包含了相关领域的基础知识,软件工程专业的学生可以根据自己的兴趣爱好选择一个地学领域为方向,修习相关的通识课程。通过对地学领域知识的学习和实践,培养学生广阔的地学知识。在进行地学领域软件设计研发时,达到和专业领域的需求的最合好契合。只有坚持“特色学科+软件工程”学理念,在世界上有特色学科领先的技术理论与领域软件,才能在特色学科领域的数字化、信息化发展趋势下处于领先地位,从而提升特色学科的综合实力。

2.增加项目驱动的实践与创新能力培养

软件工程是实践性特别强的学科,特色型软件工程专业应将软件工程和领域知识有机结合,让学生真正参与到项目中,通过项目来推动学生不断的实践与锻炼,使学生不但具有软件工程专业素质,还具备广阔的领域知识。以中国地质大学(北京)软件工程专业为例,为提升学生实践能力,我们优化实践教学课程体系和教学内容,构建课程设计、科研创新训练、软件项目实践(实习)、毕业设计为主要内容的“实践和创新”体系,包括社会实践、科研训练和创新创业活动3大类。在学生的整个培养过程中,采用了“2+1+1”培养模式,即:2年基础知识,1年专业课程的学习,1年实践训练。学生在前2年期间选择1个领域背景知识学习的方向,并且选修2~3门有关领域专业通识课程。学生有近1年的时间是在各类实践、实验环节中完成的。在现有学时学分框架内,实践教学(实验)教学环节的比重已占到整体学分的27.3%,如表3所示,其中实践创新模块主要包括的专业实践性教学环节有:软件工程实习(1~3学年)、面向对象程序设计课程实践、数据库系统原理课程实践、面向对象分析课程实践[6]、Oracle数据库应用课程实践、网页程序设计课程实践、毕业设计等。为确保实践教学体系完善,在实践基地的建立过程中,还要加强与先进的软件企业、开发园区合作办学力度,与领域相关专业共建实践基地,共同设置和开发课程。做到专业建设目标明确、培养方案先进,课程体系与教材与时俱进。

3.夯实软件的工程化思想教育内涵

目前,“互联网+”已成为国家经济社会发展的重要战略。许多颠覆传统服务行业的互联网服务公司,其运作的基础、内核本质都是软件。随着“互联网+”行动计划的实施,软件人才的需求量会急剧增加[7]。要充分利用综合优势和办学资源,注重学科的交叉与融合,注重软件工程化的教育,从软件工程、领域信息工程、领域应用工程技术三个方向,在领域软件与通用软件机研发两个方面,强调软件工程专业教育、领域背景知识教育和项目驱动的实践教学,建设以软件工程技术为基础的多学科交叉的、创新型的研究平台。

三、结语

“互联网+”的背景下,软件工程专业的理论与技术的发展日新月异,复合型软件人才的社会需求量剧增,与此同时对软件人才的素质也有了更高层次的要求。软件工程专业的教学必须着眼于行业的需求,培养出具有较强工程能力、实践能力和创新能力的符合时展要求的综合型软件人才。目前,软件工程与领域学科交叉人才是非常缺乏,坚持“特色+软件”的培养理念,培养具有宽阔领域背景的软件工程人才,只有坚持专业理论与专业技术并重、基础与实践统一、坚持课程体系、教学内容和教学方法创新,在培养方案、合作办学机制、课程体系建设、教学设施完善、专业办学条件等方面不断改革创新,才能做到与时俱进,增强软件工程专业学生的综合竞争力,培养出以业界需求为导向的创新型、工程型、实用型、复合型的软件工程人才。培养出符合领域需求的“互联网+”背景下的软件工程专业人才。

参考文献:

[1]李克强.政府工作报告[EB/OL].(2015-03-16).[2017-10-22].

[2]冯居易,罗养霞.“互联网+”背景下的软件工程专业实践教学改革研究[J].高教学刊,2016(19):133-134.

[3]于德福,朱月琴.地质调查步入“云时代”[EB/OL].(2017-11-16).

[5]教育部高等学校软件工程专业教学指导分委员会.高等学校软件工程专业规范[M].北京:高等教育出版社,2011.

第7篇

关键词:双师型;软件工程专业;应用型人才;转型

地方应用型本科院校的软件工程专业人才培养要求学生掌握软件项目的需求、分析、设计、实现与质量保证和项目管理等理论和技术,综合运用专业知识、技术和方法,解决软件领域的复杂工程问题[1],成为适应地方产业和经济发展需求的高素质应用型人才。高素质应用型人才的培养离不开专业化的教师队伍[2],特别是具有良好的教学能力、工程实践经验和专业操作技能的专业队伍,即“双师型”教师。国内学者从高等工科教育、高校转型、专业建设等方面开展“双师型”教师建设的研究。简文彬提出“先期介入式”、企业兼职教师、改善教师队伍结构等培养“双师型”教师的方法[3]。张应语和王磊从“双师素质培养”“双师结构改善”和“组合教学团队”等方面对“双师型”教师建设模式进行了探索[4]。蔡海云和熊匡汉以行动学习为理论,探讨制度支撑、专业引导、平台打造、自我提升等培养“双师型”教师的举措[5]。王辉认为法学专业“双师型”教师建设思路,应建立“双师型”教师的法律制度、考评机制、校内外互聘机制和教师队伍保障机制[6]。王少怀、刘羽和黄培明等将“双师型”专业教师建设的对策归纳为建立考核机制、提高待遇、专兼结合、搭建校企科技合作平台[7]。杨琳琳认为“双师型”专业教师建设路径,应走加强指导、合理安排培训时间、校企共建专业和课程的路径[8]。刘彦峰、李梅梅和周春生等提出转变观念、完善“双师型”教师规章制度、构建专兼职师资、加大培养力度等举措,推进“新工科”背景下“双师型”专业教师队伍建设[9]。目前已有侧重于本科院校“双师型”教师队伍建设的研究,但涉及到以软件工程专业为背景开展“双师型”教师队伍建设的研究仍较少。本文从地方经济发展对软件工程专业人才需求角度和教研室层次,阐述软件工程专业的“双师型”教师内涵,提出加强师德建设、提升教师实践能力的多种策略,以期对地方本科院校开展软件工程专业“双师型”教师队伍建设发挥一定的借鉴作用。

一、软件工程专业“双师型”教师的辨析

伴随着地方经济和产业的转型和升级,各用人单位对应用型人才的需求也不断扩大[9],同时,软件行业对人才需求也呈现出多样化特点,如要求软件工程专业毕业生能够承担软件测试师、软件工程师、数据库工程师、互联网软件开发工程师、项目管理员、系统架构师、系统需求分析师、技术支持工程师等多种岗位角色;此外,软件工程专业是一个专业性、综合性和实践性较强的工科专业,以笔者所在德州学院软件工程专业的人才培养方案为例,该专业的毕业生应具有如下专业素养:针对具体软件项目,能够撰写可行性方案;针对用户需求或者变化的需求,能够采用专业知识进行描述和管理;熟练地阅读项目需求分析报告,选择合适软件架构和方法进行系统分析与设计;熟练掌握编译和测试工具,编写代码实现项目功能,能够设计相应的测试用例进行项目质量检测;针对整个项目,能够理解实施的过程和人员分工与组织;能够根据自己兴趣选修相关课程,如前端设计、移动应用开发、大数据库应用开发等课程。毕业生专业素养的培养必然对软件工程专业的任课教师提出相应的要求,尤其是对教师实践能力的要求。专业课程一般可以分成公共基础课程、通识课程、专业基础课程、专业核心课程和专业选修课程。当然,讲授公共基础课程和通识课程的教师可以发展成为“双师型”教师,但是这部分教师对学生专业素养的贡献度低于专业授课教师;此外,软件工程专业是以计算机科学技术专业为基础,多门专业基础课程如离散数学、操作系统、数据结构、计算机组成原理等,虽然这些专业基础课教师对软件工程专业学生专业素养培养起着重要作用,但这些专业基础课程主要以专业基础理论为主,其相应实验或实践内容是为了更好地帮助学生掌握该课程的理论知识,这部分教师可以不达到“双师型”教师的要求。笔者所指“双师型”教师是专业核心课程和专业选修课程的授课教师,这部分教师对软件工程专业学生专业素养的培养起着关键作用,因为专业核心课程的授课教师讲授的主要是专业核心知识,如软件项目需求分析、设计、测试和项目管理等,学生可以运用这些专业知识解决实际软件项目遇到的工程问题,同时,专业选修课程的授课教师讲授的知识内容可以扩展学生的知识范围,对学生毕业后向前端设计、移动应用、大数据应用等工作角色发展打下基础,更好符合地方软件行业对人才多样性的需求。应用型高校的“双师型”教师须具备相应的“优质理论教学”和“优质实践教学”,其内涵应从教师的专业知识、实践技能、对学生职业指导等方面进行界定[9],不应以教师拥有“双证书”来界定。一般来说,高校教师考取相关的职业技能证书是强项,但拥有职业技能证书并不代表教师具备一定专业实践能力,还需要从多方面进行界定“双师型”教师,因此,笔者认为软件工程专业“双师型”教师应具备计算机科学与技术或软件工程等学科专业教学能力、知识更新能力、工程实践能力、引导学生确定人生观的复合型教师。

二、软件工程专业“双师型”教师培养的探索

软件工程专业“双师型”教师队伍建设过程中需要符合所在地方本科院校发展规划的要求,教研室可根据专业发展的实际需求和现状,采取可行的措施促进专业教师向“双师型”教师转型,为培养高质量的应用型人才提供有力的师资支持。

(一)厘清“双师型”教师的组成,进行有针对性的培养

笔者所在单位的软件工程专业的专业教师主要由两部分组成:一部分是从事计算机科学技术专业教学工作转型过来的教师;另一部分是人事部门引进的高素质青年教师。前者虽然具备了比较扎实的教学基本功,但是缺乏软件工程专业的专业知识和素养,这部分教师需要增强专业知识和实践技能;后者虽然是软件工程专业毕业,但是专业知识和专业素养与实际专业教学要求之间存在一定的差距,教学能力较为薄弱,专业实践能力和教学责任感还有待加强。在厘清专业教师组成的基础上,才能对从事专业核心课程和选修课程的授课教师进行有针对性的培养,一方面培养转型教师的专业理论和专业素养,同时还需要注重引进教师专业知识的提升工作;另一方面需要增强教师专业理论与实践的对接工作,教研室根据专业教师的个人综合能力,有针对性地安排相应的专业课程和实践活动,从而更好地实施对接工作。“双师型”教师的专业理论与实践教学能力的整合提升不是一个短暂的形成过程,而是一个循序渐进和螺旋上升的过程,是可以提升和拓展的。

(二)注重培养师德意识,提升教师的教学责任感

师德师风建设是落实立德树人根本任务的关键,因此,在“双师型”教师培养方面需要把师德培养放在首要位置。此外,地方本科院校都采用了教师聘任制,由于教学与科研任务重、人才培养的工程化、应用型要求、教师主导地位缺失等因素的影响,专业教师更需要注重加强师德方面的建设。首先,树立正确的价值观。在思想层面上严格要求自己,要有积极向上、不畏困难的精神。其次,提升自己的职业观。要热爱自己的专业和职业,对此无怨无悔,服从专业建设的安排,提升自己专业理论和实践能力,逐步从教学型向教学实践型教师转变。最后,不断地提升自己的人才培养观、教学观,专业课的教学工作不能“窥豹一斑”,而要做到“一叶知秋”的境界,专业教师需要全面熟悉自己讲授专业理论和实践课程对本专业人才毕业要求的对应关系,不仅要在学业方面指导学生,而且要在学生的择业观、人生观和价值观等方面进行指导,只有这样专业教师才能成为具有良好师德和教学责任感的“双师型”专业教师。

(三)多元化培养策略,全面提升实践能力

软件工程专业的专业教师多数是硕士研究生,其成员组成属于不同的专业类型,为此,教研室可以采用校内外多种实践渠道,提升教师专业理论和实践能力,使其逐步转变成“双师型”教师。第一,采用在实践中学习策略。该学习策略是专业教师在解决实际项目过程中边学习专业理论边实践。多数软件工程专业的专业授课教师是由其他专业转型过来的,所有专业课程不是在同一学期开设,教研室可以利用寒暑假期或其他空闲时间,组织教师提前学习专业课程的理论和实践。以“软件需求分析”课程为例说明如何开展培训工作,该课程开设在第三期,教研室在第一和第二学期开始组织该课程教师的理论和实践的培训工作,采用类似项目驱动的策略,由有实际软件项目的教师提供已完成项目的需求资料,专业教师根据该项目的需求资料,一边学习软件需求分析理论知识,一边应用理论完成该项目的需求分析报告,项目的负责教师对这些需求分析报告进行评判并给出优良中差的结论,教研室从这些参与培训活动的教师中选择2~3名教师从事该课程的教学工作;如此经过多次培训,最后确定该课程的负责人,最后由课程负责人进一步开展课程的理论和实践建设活动。第二,抓住课题申报和学科竞赛等机会,促进“双师型”教师的个性发展。软件工程专业的专业教师实践能力是向“双师型”教师转化的基础,除了专业教师自主转型之外,教研室根据专业教师个人能力,分类组织教师参加各类课题的申报以及指导学生参加学科竞赛,教师可以申报教育部产学合作协同育人项目,指导能力、组织能力较强的教师可以指导学生参加国家级、省级和校级大学生创新训练计划项目。第三,联合IT实训教育机构提升教师实践能力。一些教育机构会主动联系教研室,为专业教师和学生开展免费的技术讲座、IT实训等活动,教研室需要及时地筛选这些活动信息并把信息落实到相应的教师和学生中,组织好每次活动。另外,专业教师从参加过毕业实训的学生手中获取实训资料,对这些资料进行提炼后可以补充实践教学案例。第四,教研室定期组织校友活动,也会给教师提供提升实践能力的机会。教研室主动联系从事软件行业的校友以返校、在线会议或参观其企业的方式进行交流,及时掌握软件企业在研发、项目实现、质量管理及对人才需求等,促使专业教师进行理论和实践教学的改革。第五,教研室鼓励专业教师以承担当地企业的横向课题或担任软件企业的技术顾问等方式提升教师应用专业理论的能力。专业教师通过主持或参与横向课题,提升自己解决实际问题能力和专业实践能力,并且在资料可以公开的情况下,将结题资料进行整理形成典型的教学案例以促进实践教学。第六,教研室搭建专业课程教学圈,助力“双师型”教师的发展。课程教学圈的成员包括专业教师、学院的“技术大拿”、乐于帮助教师成长的企业技术人员和校友等。在教学圈中,教师之间相互学习,分享经验,学会弥补专业理论和实践的不足,通过思想的碰撞产生新的解决问题的方法,激发教师不断提升专业理论和实践能力,更好地为应用型人才培养服务。第七,“双师型”专业教师队伍建设是实施“三个一”育人措施的基础。软件工程专业应用型人才的培养不仅要注重专业理论的传授,也要注重面向实践的过程培养。为了软件工程专业的毕业生将来有更好的职业发展,教研室制定了应用型人才培养的“三个一”的育人措施,该措施包括:一是要求每位学生需要熟练掌握一门新技术;二是至少参加一项学科竞赛项目;三是独立撰写一份软件项目申请书。落实“三个一”的育人措施必然需要“双师型”专业教师队伍的建设,教研室特为此建立相应的支撑体系,主要包括场地保障、软硬件平台搭建、教师团队组建以及部分经费支持等。这些支撑体系能够确保育人措施有效地落地执行,从而更好将专业教师的实践能力融合到提高应用型人才培养质量中。第八,教研室不断地研究与改进提升专业教师实践能力的策略。提升专业教师实践能力是一个较为复杂的系统工程,教研室需要不断地了解、掌握、分析和判断专业教师自身的实践基本情况,具体把握每一位专业教师对实践知识和能力的吸收消化程度、偏好、风格,摒弃简单的实践报告、观课、单打独斗的交流等不务实的途径,最终应该结合教师自身特点,采用成熟且有效的提升教师实践能力的途径,帮扶每位专业教师革新传授实践知识理念,提升自身的实践水平,从而服务于应用型人才的培养。

三、结语

软件工程专业应用型人才的培养需要“双师型”教师队伍的建设。该建设过程须结合人才需求特点和师资队伍的构成,从教研室角度对培养专业教师的师德意识、采用项目实践驱动方式、申报产学研课题、指导学生参加学科竞赛、搭建课程教学圈等方面进行一定探索,逐渐地推进专业教师向“双师型”教师转型。

参考文献:

[1]陈业斌.软件工程专业课程群及课程组建设研究[J].安徽工业大学学报(社会科学版),2019(1).

[2]徐金益,许小军.产教融合背景下应用型本科高校教师的转型路径探析[J].江苏高教,2019(12).

[3]简文彬.高等工科教育需要“双师型”教师[J].中国地质教育,2008(3).

[4]张应语,王磊.转型发展过程中应用技术大学“双师型”教师培养问题研究[J].山东高等教育,2019(5).

[5]蔡海云,熊匡汉.行动学习:应用型本科院校“双师型”教师教学能力的培养路径[J].黑龙江高教研究,2018(6).

[6]王辉.法学“双师型”教师队伍建设的思考[J].中国高等教育,2020(Z1).

[7]王少怀,刘羽,黄培明,等.“紫金模式”下“双师型”教师队伍建设的意义与思路[J].中国地质教育,2009(3).

[8]杨琳琳.应用型本科院校电子信息工程专业双师型教师队伍建设途径的探究[J].智库时代,2019(13).

第8篇

关键词:普通院校;实践教学体系;工程实践能力;路线图

软件工程专业在我国高等院校还是一个很不成熟的专业,比起传统的工科专业来说,软件工程专业有更多的技术成分,因此,我们的教学体系和模式就要有别于传统的教学体系和模式。实践教学体系是否合适将直接影响软件工程专业毕业生的质量。对于重点院校软件专业和软件学院实践教学体系已有很多专家学者进行了研究与实践[1-3],而普通院校无论是师资,还是其他教学资源,都不能与重点院校相比[4-5],应该有一套有别于重点院校的实践教学体系。本文将对普通院校软件工程专业实践教学体系的构建进行探讨,并结合我院软件工程专业实践教学体系进行总结。

1实践教学体系构建原则

软件工程专业实践教学体系构建原则可以从4个方面考虑:软件工程专业特点、教指委的软件工程专业规范、软件工程专业的职业定位、人类认识事物的规律。

1) 软件工程专业是一个综合性学科,既有科学的要求,又有技术的要求。从学生的培养目标来看,普通院校软件工程专业含有更多的技术要求。目前国内大多数普通院校软件工程专业还是按照传统的理工科人才培养方式进行学生的培养,忽视软件工程专业知识体系的特点,从而导致学校的学生大多数随能按照培养计划完成学业,成为一名合格的软件工程专业的毕业生,但与企业的要求相差甚远,企业找不到合适的人才的现状。

2) 软件工程专业规范给定的软件工程专业知识体系包括:计算机科学与技术知识、软件工程知识和领域知识。计算机科学与技术专业、软件工程专业是实践性、应用性非常强的学科,要使学生掌握好计算机科学与技术的基础理论知识,应用软件工程技术的基本技巧与方法,就必须确保实践教学的教学质量。

3) 按照现在职场流行的说法,人才分为3类:白领、灰领、蓝领。根据本地区和学校的特色,我院软件工程专业的定位是培养“灰领”人才,因此,学生除了学习传统的计算机科学与技术知识、软件工程知识外,还要学习管理学知识,同时根据我校的特色与定位,把汽车设计与制造过程中信息结构作为应掌握的领域知识。管理学知识将用于团队管理、软件开发过程管理以及信息结构建模等开发活动;汽车设计与制造过程中的信息作为软件开发实践的应用对象,是软件的加工对象。

4) 人类对事物的认识是一个由简单到复杂,由具体到一般的过程,是一个分析与综合的过程,将随着知识的积累逐步深入。这就要求实践教学要按照培养计划进度设置不同的实践内容,而且可以根据学生的个体情况进行少量的调整。

2实践教学体系构建方案

现在高等教育的教育方式正在从以教师为中心转变为以学生为中心,既以学生的目的需要为中心、以学生的能力拓展为中心、以学生的知识结构为中心开展实践教学。因此,我们在设计实践教学体系时,始终注重按照学生理论学习的进度和学生能力提高的需求,依据软件开发过程的特点,分层次开设不同的实践内容。

按照学生能力培养的路线图,实践教学体系始终围绕着培养知识应用能力和创新能力进行构建。能力培养方面分为3个方面,即程序设计能力、软件开发能力、工程实践能力。实践教学课程体系由5个层次的实验构成:课程实验、课程设计、项目实训、开发实践、毕业设计,如图1所示。

2.1课程实验

本类实验主要是加强学生对所学知识的理解,“听过的会忘记,看过的会记住,做过的会理解”。实验内容分为3类。第1类:掌握和运用工具,包括语言类,软件开发工具类等;第2类:理解所学知识,包括操作系统、编译原理、设计模式、计算机网络、数据结构与算法等;第3类:同时兼顾工具学习和知识理解,如数据库原理。这类实验主要是学生按照实验指导书完成规定的实验内容,但也有一部分内容只给出实验目的,让学生自己设计实验内容(设计型),以兼顾学生的不同层次与兴趣。

2.2课程设计

本类实验的目的就是培养和训练学生对所学知识的综合运用能力和学习新技术、新知识的能力,属于规范中的设计型与综合型实验。教师给出课程设计题目、相应的背景描述和课程设计要求,学生在教师的指导下独立完成课程设计项目,时间一般为1~2周。实验内容和要求根据学生的理论课进程安排,如VC++课程在数据结构与算法设计之前开设,因此VC++课程设计要求学生做好类的设计、界面设计,数据存储用文件形式,对软件的效率不做要求;数据结构与算法设计课程设计,除了VC++课程设计的要求外,要增加对算法的效率和存储空间的要求;设计模式与UML建模课程设计除了VC++课程设计和数据结构与算法设计课程设计的要求外,增加软件可靠性与高效的要求等。所有的课程设计都要求界面美观。同时鼓励优秀学生应用一些还没有开设的课程内容。

2.3项目实训

本类实验的目的主要是训练项目的组织能力、工程实践和团队协作能力,着重开发过程的训练,按照软件生命周期,完成各阶段的工作。项目实训放在软件工程和数据库原理等专业基础课程之后,软件体系结构之前。同时开展多个项目,把学生分成小组,在不同的项目中担任不同的角色,教师扮演客户和技术总监的角色,要求学生按时上下班,实验室允许学生加班,学生要负责实验室设备安全。要上交较完整的需求分析与设计文档,特别是各部分的公共信息要完整。可以只实现部分需求,时间安排为2~4周为宜。

2.4开发实践

开发实践在软件工程的专业实验室或校外实习基地进行。2008年我们与东风悬架弹簧公司和武汉天喻软件有限责任公司合作,利用武汉天喻软件有限责任公司的PLM软件,装入东风悬架弹簧公司产品开发的基础数据。学生通过该平台,可以了解企业产品的开发流程,不懂的地方随时可以向企业工程师咨询;可以选定一个模块,按照PLM系统接口规范进行设计开发,然后集成到PLM系统中去。可以是替换原来的模块,也可以是增加新的功能,进行集成测试检验程序的可靠性和效率。时间安排为4~8周为宜,由学校教师与企业工程共同指导。

2.5毕业设计

毕业设计是大学教学过程的最后一个环节,是一个学生自主开发的综合性实践教学环节。通过毕业设计,能使学生综合应用所学的各种理论知识和技能,进行全面、系统、严格的技术及基本能力的练习。我院毕业设计时间安排为16周,鼓励学生把就业与毕业设计结合起来。学生在企业实习阶段参与项目开发,由企业导师进行项目开发的相关指导,回校在校内教师指导下完成论文和答辩。

3软件工程专业实践教学的师资要求

软件工程专业的实践教学要求实践教师既是实践的指导者,又是直接的参与者。要对学生在实践中遇到的各种问题给予解答,包括编程语法、算法逻辑、软件体系结构设计、用户需求分析、团队协作方法等;在实践过程中更多地是站在用户的角度对学生的成果进行验收测试,使学生体会到在现实情况下怎样的软件才能被用户接受,体会到用户怎样检查软件的可靠性、可用性、正确性,用户怎样评价软件的优劣。

软件工程专业的特征要求从事软件工程专业教学的师资队伍是一支具有综合素质的队伍,既有专业理论基础,又要有企业实践背景;要充当软件开发过程的各种角色――投资者、使用者、组织者、设计者、编码者、测试员等。课程实验主要由理论基础扎实的教师担任,课程设计由理论基础扎实的教师和有企业实践背景的教师共同指导,项目实训和开发实践主要由有企业实践背景的教师完成。

4结语

本文介绍的软件工程专业实践教学体系是我校通过几年的不断摸索与改正后形成的。在探索过程中获得了湖北省教育厅项目(软件工程创新型人才培养研究)和学校的支持(2007年软件工程特色专业建设费15万元)。该实践教学体系利用一些基础实验帮助学生理解和掌握专业理论知识,为今后的发展打下坚实的专业基础,同时通过参与各种项目,提供了发展其动手能力的环境,贴近了企业需求,提高了就业率。2009年我校软件工程专业的一次就业率达到了90%。由课程设计、开发实践和毕业设计构成的创新训练体系,使学生获得了科学研究方法和软件开发活动的工程化的经验。

参考文献:

[1] 李红梅. 面向能力培养的软件工程实践教学体系[J]. 高等工程教育研究,2009(2):84-87.

[2] 董玮. 引入实训体系,培养应用型软件人才的探索与实践[J]. 计算机教育,2007(23):10-19.

[3] 董玮,邱建华,杨英鹏,等. 培养应用型软件人才的实践教学体系的研究与实践[J]. 计算机教育,2008(10):16-18.

[4] 郑耿忠,刘秋梅. 地方性院校软件工程专业建设探讨[J].电脑知识与技术,2009,5(30):8477-8478.

[5] 郑耿忠,刘秋梅. 软件工程专业实践教学体系构建探索[J]. 电脑知识与技术,2009,5(27):7690-7691.

[6] 白伟华. 软件工程专业应用型人才培养模式的思考[J]. 计算机教育,2008(22):35-37.

Practice Teaching System of Software Engineering in General Institutes

FU Yong-zhi, WANG Wen-yan, SHI Lü-hua

(Department of Computer Science School of Electrical & Information Engineering Hubei University of Automotive Technology,

Shiyan 442002, China)

第9篇

关键词:TOPCARES-CDIO;软件测试;人才;培养模式

随着我国软件产业规模逐渐壮大,软件的复杂性越来越高,软件产品难以把控,软件测试工程师成为软件企业不可缺少的技术人才。企业对软件测试工程师的需求不断增加,但高校对培养软件测试人才方面的课程及专业设置不能满足市场需求,软件测试人才供需失衡。大连东软信息学院计算机科学与技术系于2004年开设软件测试课程,2008年构建软件工程专业软件测试人才培养方案,至今已为社会输送软件测试人才近千人。

1、TOPCARES-CDIO

CDIO工程教育模式是近年来国际工程教育改革的新成果。CDIO代表构思(Conceive)、设计(Design)、实现(Implement)和运作(Operate),其教育理念是让学生通过主动、实践与课程有机联系的方式进行学习,培养学生“做事”与“做成事”的能力。TOPCARES-CDIO是大连东软信息学院基于CDIO工程教育理念,构建具有特色的“能力”教育指标体系,即技术知识与推理能力、开放式思维与创新、个人职业能力、沟通表达与团队协作、态度与习惯、责任感、价值观、实践应用能力。

2、软件测试方向人才培养现状

IT企业需要大量具有创新精神和实践能力的软件测试人才,但现阶段的人才培养模式在学生工程能力培养方面存在薄弱环节,软件测试方向教学体系普遍存在以下问题。

1)培养计划滞后于社会岗位需求。

目前,软件测试方向的人才缺口突出,IT行业亟需具有实践能力、创新能力的测试人员。软件测试工程师要熟悉主流测试工具的使用,具备测试文档编写能力,熟练使用主流开发工具及语言,熟悉软件业务流程并能独立制定测试计划,独立完成自动化测试脚本等。当前计算机应用专业或软件工程专业在软件测试工程师方向的培养计划滞后于社会岗位需求,传统以理论为主的教育体系培养出的人才不能完全满足岗位需求。

2)实践教学与理论教学脱节。

学生在理论课上只学习理论知识,不能动手实践,上机实践安排在理论课之后,造成实践教学滞后于理论教学,学生通过上机实践不能达到实践效果。如何开展实践教学,缺乏从专业人才培养角度考虑,没有结合社会岗位的需求状况。因此,建立独立、层次化的实践教学体系,提高学生工程实践能力是改革的关键。

3)缺乏对学生工程能力、创新能力的培养。

计算机相关专业院校在培养计划中设置了扎实的理论基础课程,但没有建立增强学生创新能力的培养机制。学生能够掌握专业的相关理论知识,但与IT岗位所需的实践能力脱节,其工程实践能力、创新能力没有得到充分培养。

3、TOPCARES-CDIO引导的软件测试方向人才培养模式

2008年大连东软信息学院提出TOPCARES.CDIO工程教育思想,其核心是一体化教育。在人才培养上强调以能力为本,在专业建设方面,借鉴国内外先进教育理念与工程人才培养方法,采用CDIO工程教育模式,以学生实践能力与素质能力的培养为重点,突出专业特色,面向软件测试行业的职业需求,构建以TOPCARES-CDIO为引导的软件测试方向人才的培养方案。对于本科学生来说,本专业采用的是“3+1”教学模式,在大学4年中,前3年进行专业理论学习与实践学习,第4年进行项目实训及毕业设计。该教学模式保证学生在扎实的理论基础下,得到充足地实践锻炼,使学生能够很快地进入工作角色。此外,本专业的学生采用“1321”教学模式,每学年分为3个学期,其中,2个理论学期,1个实践学期,实践学期在理论学期所学知识的基础上进行。通过教学改革,将软件测试方向人才培养与现有的教学资源相结合,培养学生的专业技能、工程实践能力、职业素质,使学生适应IT行业发展的需要。

3.1 培养方案

大连是软件服务外包型城市,针对大连的区域经济发展需要,面向软件测试行业的需求,大连东软信息学院构建了以TOPCARES-CDIO为引导的软件测试方向人才培养方案。

首先,学校以学生为中心优化组织结构,取消教研室建制,将各系学生由原来按年级横向管理变为按专业纵向管理,实施以专业为基本教育单位的一体化管理模式,设置专业教育管理团队,让专业教师参与到素质教育与学生工作中,辅导员参与到专业教学工作中,从而实现辅导员队伍与专业教师队伍融合,形成全员育人的工作机制。

其次,软件测试方向以培养软件测试工程师为目标,以TOPCARES为核心,采取“133”的培养模式,即1个培养目标、3个能力层面、3条培养路线。1个培养目标指,以培养软件测试工程师为培养目标,培养以团队合作形式完成软件系统测试的系统构思、设计、实施、运行的软件测试工程师。3个能力层面指,专业能力,软件测试专业知识与推理能力的培养;素质能力,个人素质与职业素养;工程能力,在社会、企业环境下针对软件产品测试的构思、设计、实施、运行等工程全过程能力。3条培养主线指,课内1条主线,以项目为导向的一体化课程体系;课外2条辅线,贯穿课外实践环节辅线,针对专业能力的党建学团工作辅线。软件测试方向以项目为导向的专业主干课程能力培养设计,如图1所示。 3.2 专业课程体系

围绕软件测试方向人才核心能力培养目标,设计以项目为导向的一体化课程体系,包括学科基础课程、专业基础课程、专业技能课程及实践项目等。以某个项目为主线贯穿4年培养过程,围绕该项目在第1学期、第3学期和第6学期设置l级项目,在大学4年级设置1级项目,做到首尾呼应。培养过程中设置4个2级项目,为主线提供支持,设置10门核心课程和3级项目,使培养过程充实。课程体系与专业能力及就业岗位对应关系链路图,如图2所示。

3.3 实践教学体系

通过对IBM、东软、海辉、华信、松下等软件公司调研,建立以TOPCARES-CDIO工程教育模式为引导,设计面向岗位需求一体化、层次化的实践教学体系。以项目实训的1级项目为贯穿,以各学年实践学期的2级项目、课程中的3级项目为基础进行实践,各级实践项目循序渐进,相辅相成。

摒弃传统教育观念,改变以理论教学为中心,实践教学为理论服务的思想,构建与理论教学相结合,一体化、层次化的专业实践教学体系,根据岗位特点设置IT应用型人才培养的课程体系。只有建立相对独立的实践教学体系,使实验、课程设计、实训、毕业设计各环节循序渐进,才能以实践教学为中心,真正发挥其作用。软件测试方向实践教学体系架构,如图3所示。

3.4 面向就业岗位。改革教学内容

在教学改革中,将CDIO工程教育模式切实运用到专业建设及课程建设中,以项目驱动和“做中学”为方法提高学生的专业技能与实践能力。教学内容设置面向就业岗位,以“基于工作过程的课程观”为导向,融入产业、行业、企业、职业等要素,对软件测试行业进行调研,对软件测试工程师工作的流程进行分析,设计与应用能力培养目标对应的教学内容。

3.5 与企业合作,共筑实训平台

探索与企业合作的渠道和方式,采用校企合作共同开发实践项目的方式,建立软件测试人才实践能力培养的校内实训平台和校外实训基地。通过实训组织模式、实训教学资源及实训管理系统的建设与应用,提供规模化、企业化、系统化实践能力训练的平台,从根本上解决软件测试专业学生规模化参与企业真实项目训练的难题。

采用校企合作共同开发的方式,建设实训平台。2011年,与国内软件服务外包公司文思创新签署实践基地协议,为软件测试方向的学生定制实训项目,学生实训考核通过,获取文思创新实习生资格。

3.6 建立以TOPCARES-CDIO为引导的立体教学资源

以TOPCARES-CDIO为引导的立体教学资源包括,CDIO工程教育教材软件测试技术、实验项目指导书,CDIO指导的以项目为导学的电子课件与教案,教、考分离试题库、项目库,全程教学视频、Sovo工作室、软件测试社团等供学生课内外教学资源。

4、人才培养模式的成效

从培养制订计划到设置课程体系、教学计划撰写、项目设计、课程设计及课程知识点的讲解方法,以TOPCARES-CDIO教育思想为指导,将TOPCARES-CDIO教育理念融入应用型人才培养环节中。从目前就业情况及实习情况看,软件测试方向的学生就业相对容易。

1)2007级软件测试方向学生就业率达到96.55%,有4名学生在北京微软研究院任职。

2)2008级软件测试方向学生在大学4年级参加文思创新公司的企业实践项目,最终有23名学生获得文思创新实习生资格。

3)2009级软件测试方向毕业生共82名,其中73名顺利步入工作岗位。

第10篇

关键词:软件工程;课程教学;教学内容;实践开发

1教学理念

随着互联网络和IT技术的快速发展,IT技术的服务无处不在,软件开发已经成为计算机专业的大学生掌握的必须技能,能够更好地运用当今流行的软件开发技术手段开发程序,已经成为计算机专业的学生在激烈的社会竞争中能够获胜的关键。所以,在当今的IT技术时代,特别是大数据和云计算快速发展的时代,对于计算机专业的本科生来说,系统地掌握软件开发技术的各个环节并使其有机结合,同时运用软件工程开发过程的技术来组织软件开发过程的所有资源并综合地处理软件开发过程已经成为计算机行业的基础需求技能。所谓软件工程,是指系统地运用工程管理的知识来组织、运行、开发和维护有用的、高效的和高质量的软件学科。软件工程主要包括人员管理、项目管理、可行性与需求分析、系统设计、程序设计、测试和维护等过程。因此,对于计算机专业的学生来说,掌握必要的软件开发过程,了解和掌握软件开发过程的建模和管理技术不仅能够使自己在未来可以更轻松地应付多种复合信息的工作需求,给自己带来更合理的处理方法,而且也可以提高自己的软件开发效率。所以,对一些计算机专业的学生来说,通过系统地学习掌握软件过程开发技术,特别是一些新的软件开发动向,如面向服务的软件开发和集中式计算架构开发等,是十分必要的一项教学内容。目前,软件工程课程是计算机专业教学中的一门必修课程。以作者所在的教学单位为例,软件工程是计算机专业高年级本科生的一门必修课。该课程主要从软件工程基本理论出发,将软件开发技术的各个环节有机结合,全面覆盖软件开发过程,注重培养学生软件开发中的综合职业技能。主要讲授的内容包括软件开发规律概述、软件开发方法、软件开发平台与工具、系统分析与建模、IT规划与咨询、软件开发项目管理、软件开发案例分析等。同时该课程引入云计算和大数据对软件开发的需求,重点分析实际软件开发案例,使学生掌握软件开发的基本规律与实际管理方法。因此,软件工程作为一门专业必修课程,计算机专业的学生不仅能够通过这门课程掌握软件过程的必要技能,如RUP模型和UML等,而且通过实践的项目分析与设计,学生能够系统地掌握需求分析和软件设计的必要技术,如数据流图DFD如何使用等,使得学生掌握的知识不再停留在理论学习和应付考试上,为学生未来就业后进入企业快速融入开发团队提供了必需的知识基础。同时,该课程通过对一些热门开发技术的学习,不仅可以提高学生的兴趣,激发学生的潜能,加深学生对软件开发技术本质的理解,而且可以提高其相关知识的洞察力与研究能力。[1]

2教学方法和手段

软件工程课程的特点是知识内容多、内容实践性强,没有实践难以掌握,例如软件过程中的用例模型是通过角色、行为和场景来描述和分析软件开发过程的模型,因此不仅要求学生在课堂上需要了解什么是用例,掌握用例设计的基本规则,而且也需要安排时间给学生对于复杂的场景使用用例模型进行设计分析,然后进行课堂讨论,讲解自己的设计思路如何满足用户的需求等。所以,根据软件工程课程的特点,作者认为在课堂上宜采用“知识细化”、“精讲讨论”、“详细分析”等多种多样的教学形式。以作者所讲授的软件工程课程为例,本课程以计算机投影开展教学,配以适量的理论教学和知识点讨论,并以上机课来培养学生的动手能力,如要求学生使用Powerdesinger软件进行需求建模。本课程其中投影、理论和讨论教学为24学时,上机实验课为8学时(不含课外上机)。在讲授过程中,考虑到该课程注重应用的特点,遵循深入浅出的原则,对概念、原理的解释和描述尽可能地以日常生活所接触到的案例和图示加以对比说明,引导学生掌握软件工程的开发过程,建立概念之间和应用之间的联系。在讨论和上机过程中,以任务驱动方式要求学生完成讨论题目和上机实验,然后及时找出学生上机时遇到的问题,并归纳总结,提高学生相应的能力(教学学时分配见表1)。另外,作者为了让学生更好熟练地掌握软件工程的相关知识,通过网络收集了一些教学视频和PPT课件,在完成每个学时教学任务的课后都拷贝给学生,让学生课后回去自学这些知识。

3教学培养目标

软件工程课程是一门要求实践性较高的课程,对从实际的工程开发中掌握知识有较强的要求。因此,本课程主要介绍当前最流行的软件开发技术与环境,目的是使学生了解软件开发过程与组织等技术,掌握当前流行的软件开发方法与环境。本课程的教学目的是让学生初步地掌握从宏观和微观两个方面如何去开发软件系统。使学生学会软件开发的原理、技术和方法,提高学生的软件开发和软件工程管理能力:[2,3](1)培养学生的思考和动手能力。软件工程课程包含大量的建模知识,同时提供了一些软件去实践这些知识,因此这要求学生不仅掌握建模的基本原则,同时对于实际的项目需求,能够运用建模知识去分析建模,然后运用相关软件进行建模概念的设计。(2)培养学生系统的组织和管理能力。软件工程课程是一门工程性的课程,它来源于实践,并用于实践。软件工程的复杂性在于它是涉及软件开发的各种环节和资源相互协调工作的知识。因此,培养学生掌握好软件工程的知识,对于学生今后职业规划有重要的帮助,能够为学生往高层次的IT人才发展提供必要的知识储备。

4总结

本文结合作者的实际教学工作和在教学改革方面的分析与探索,从教学理念、教学方法与手段、教学培养目标等方面,对计算机专业的软件工程课程的教学改革进行了分析与探讨,提出了以实际项目驱动和课堂知识点讨论作为课堂教学手段,把软件工程相关理论知识学习作为实践的教学内容,注重实践为主、理论为辅的理念。目前,对于计算机专业的学生来说,软件工程课程的本科生教学改革有着十分重要的意义与作用,其教学内容与教学手段也应该要适应社会需求的变化。

参考文献

[1]许波,陈晓龙.UML结合软件工程教学改革探讨[J].计算机教育,2011(2):34-37.

[2]崔寅生.谈谈软件工程教学改革的实践[J].成人教育,2009(12):85-86.

第11篇

关键词:大数据时代;地方应用型高校;软件工程专业;课程体系

0引言

大数据作为继云计算、物联网之后IT行业又一颠覆性的技术,备受人们的关注,大数据技术正从概念转向实际的应用,涌现出越来越多的大数据技术应用成功案例,大数据的价值也在迅速增长。2015年,中国大数据市场规模达到115.9亿元人民币,增速达38%,预计2016~2018年中国大数据市场规模将维持40%左右的高速增长[1]。大数据时代的到来,使得软件行业对人才的应用能力和综合素质提出了更高的要求。咸阳师范学院作为咸阳市地方应用型高校以服务咸阳地区经济社会发展为己任,肩负着培养满足咸阳地方社会需求软件人才的使命,需要把培养面向大数据时代的软件工程专业人才作为战略任务来抓。而课程体系的建设是软件工程专业人才培养体系最重要的一个方面。本文通过分析我院传统软件工程专业课程体系,以及大数据时代下企业对软件工程专业人才要求,找出大数据时代下软件工程专业应用型人才中课程体系存在的问题,探索出我院面向大数据环境的应用型软件工程人才中课程体系的建设。

1我院软件工程专业传统的课程体系

自我院计算机系成立以来,软件工程专业一直是我院重点建设专业。2013年,“‘3+1’校企合作软件人才培养模式创新实验区”被确定为省级人才培养模式创新实验区。一直以来,该专业以培养“厚基础、强能力、高素质”应用型人才的为培养目标,以企业、市场需求为导向,重视实践、技能和应用能力的培养,与尚观科技、中软国际、华清远见、蓝鸥科技等西安多家企业联合,采取3+1嵌入式校企联合教育培养模式,将课程教学、工程实践、行业理念进行无缝结合。课程体系是一个专业所设置的课程相互间的分工与配合[2],主要反映在基础课与专业课,理论课与实践课,必修课与选修课之间的比例关系上[3]。地方应用型本科院校的课程体系设计既要体现基础知识的传授,也要体现实践能力的培养,同时还要考虑学生的职业能力规划发展问题。我院2013-2015级软件工程专业课程体系结构图如图1所示。图12013-2015级软件工程专业课程体系结构图从图1可以看出通识教育必修课程的教学阶段共3个半学年,主要涉及思想政治基础知识、体育、人文历史、外语应用能力等;相关学科基础类课程主要包括高数、线性代数、数字逻辑等数学类课程;本学科基础类课程主要涉及程序设计语言、计算机网络、操作系统、数据结构、计算机组成原理等;专业技能教学阶段强调对学生工程性、实用性、技术性和复合型能力的培养,主要安排专业必修课程和专业选修课程。专业必修课程包括面向对象程序设计、软件工程、数据库原理与应用、软件设计与体系结构、算法分析与设计等,专业选修课程包括Web软件开发、Linux系统应用程序开发、移动终端开发等。根据教育部专业教学指导委员会软件工程行业规范[4],本着“轻理论,重实践”的原则,我院在一定程度上压缩理论课课时,增加实践课课时,优化专业课程体系结构。我院2015级软件工程专业的人才培养计划中,各类课程学分设置与所占比例。

2大数据时代企业对软件工程专业人才的要求

大数据时代所需要的人才是一定拥有数据处理、分析技术的,也就是对数据有敏锐的直觉和本质的认知、能够运用统计分析、机器学习、分布式处理等技术,从海量、复杂的数据中挖掘出有用的信息,以清晰易懂的形式传达给决策者,并创造出丰富有价值的专业人士[5]。在大数据时代下,对软件专业人才培养,应具备以下四个方面的技能。(1)具有厚实的数学、统计和计算机学科的相关知识,能够根据具体案例大数据分析任务的要求,运用大数据处理、分析平台,收集整理海量数据并加以分析,挖掘出有价值的信息。(2)掌握大数据处理技术及可视化工具,能根据具体任务的需求,对数据进行选择、转换、加工等处理操作,采用有效方法和模型对数据进行分析并形成数据分析报告,用易于用户理解的方式,提供科学的决策依据。(3)熟悉行业知识、专门业务及流程,将大数据技术和企业文化相结合,充分利用大数据分析处理的结果,挖掘出海量数据中隐藏的价值并应用于企业市场领域。(4)团队合作精神,大量数据的收集整理、存储、分析和处理,一个人是很难完成的,需要一个由团队成员合理分工、共同协作完成。

3大数据时代我院软件工程专业传统的课程体系存在的问题

地方高校一直以来受传统的“学术型”、“研究型”人才培养模式的影响较大,形成了适合于“精英教育”为培养研究型人才的课程体系,无法适应以工程实践能力、创新创业意识、新技术新方向为目标的人才培养,课程体系中理论教学占主导地位,实践教学往往处于次要地位[6]。而目前处于大数据时代,信息技术的不断创新、企业需求不断变化、综合型人才需求巨大等因素的影响下,传统的培养研究型人才的课程体系,无法适应大数据时代以工程实践能力、创新创业意识、新技术新方向为目标的人才培养。通过了解大数据环境企业对软件工程人才的要求,分析我院2013-2015级软件工程专业人才培养课程体系结构,发现存在以下问题:(1)缺少大数据技术方面的课程。传统的课程体系中主要包括软件工程专业一些传统的课程,如数据结构、软件工程、软件体系结构等,而且课程内容较陈旧,所开设的一些应用软件的学习不能紧密贴合行业和技术发展,软件工程专业教育必须适应互联网时展和大数据技术的需求,关注企业发展及大数据系统的建设问题,以满足企业对应用型人才的需要。(2)实践类课程学时所占比例较少。我院2015级软件工程专业实践类课程占总学时的10.8%,是因为传统的课程体系注重知识传授,而忽略了学生解决问题、动手能力的提高。地方高校在人才培养中重视理论内容、计算机编程能力,而忽略学生探索能力的培养,这些都不利于学生对新技术、新方向发展的把握,学生难以应对各种层出不穷、错综复杂的海量数据,很难挖掘出隐藏的数据价值并有效利用。(3)课程体系结构设置方面,一是存在通识教育类课程教学阶段持续时间长,一直到第7个学期,这就影响了后面专业类课程的学习;二是专业基础类分为专业必修和选修,没有从课程教学阶段不同来划分,不能体现课程先后的衔接关系。

4大数据时代我院软件工程专业课程体系建设改革

在大数据时代,软件工程专业教育必须适应企业发展和大数据行业的需求。教学内容的设置应与行业需求接轨,根据我院学生特点调整2016级软件工程专业课程体系。具体做了以下几点的调整。(1)课程体系结构更合理。一是通识教育类课程的调整。一方面将教学阶段全部调整到第1、2学年完成,这样在第3学年学生就可以重点学习专业类技能课程;另一方面此部分增加了大学生心理健康和创新创业教育课程,主要可以加强学生团队合作精神的培养。二是专业类课程结构的调整。将专业类课程分为专业(学科)基础课程和专业技能课程两大类,专业(学科)基础课程主要包括数学类课程、计算机导论、程序设计语言、数据结构、操作系统、软件工程、运筹学、数据分析与处理。专业技能课程又分为专业核心课程和专业方向课,专业核心课程包括面向对象程序语言类、软件设计模式、算法分析与设计、软件测试等软件工程专业要求的核心课程,而专业方向课分为3个方向:大数据分析、Web技术应用、移动终端开发,鼓励学生在学好专业基础和核心课程的同时,发现自己专业类的兴趣,选择一个自己感兴趣的方向集中学习,大数据分析方向是重点向学生推荐。在教学阶段安排上,一般专业(学科)基础课程要优先于专业技能课程,这样可以让学生在掌握了学科、专业基础上,充分了解软件工程专业技能的训练。(2)增加了大数据技术方面的课程。在新调整的课程体系中,专业(学科)基础课程和专业技能课程都增加了大数据相关内容。基础课设置增添运筹学、数据分析与处理等,使学生了解大数据行业基础知识,激发学生对大数据行业发展及大数据应用前景的兴趣;专业技能课设置了数据仓库与数据挖掘、大数据统计分析与应用、数据挖掘算法与应用等前沿科学技术相关课程以满足大数据系统建设与应用的需要,培养更多企业需要的大数据管理分析软件专业人才。院级选修课鼓励研究大数据方向的教师积极申请大数据案例分析、大数据安全与隐私保护、HadoopMap/Reduce技术原理与应用等实用性强的课程,以补充对大数据方向特别感兴趣学生的学习内容。(3)增加实践类课程所占比例。相比较2015级,以培养地方应用型人才为总目标,实践类课程课时由19课时增加到28课时,所占总课时比例提高了约50%。实践类课程包括校内(课程设计和实训)和校外(见习、实习、实训、毕业论文),种类多样化,使得学生多方面提升自己解决问题和动手操作能力。针对校内实验我院教师结合大数据教学实验平台,根据课程内容设计实验项目,从初级到高级,安排合理的阶梯式学习,实验内容持续更新,加入最新、主流的分析建模工具和挖掘算法,学生在免费、开放的平台环境下进行大数据构建、存储、分析统计等实验内容,使学生熟练掌握Ha-doop、HBase、Spark等关键技术,提高大数据理论分析及技术应用的能力。做好校内实践的同时,校外实践更是尤为重要,首先在实习、实训企业的选择上,尽量选择“口碑好、技术强、理念先进”的单位,目前我院已与邻近城市西安与尚观科技、中软国际、华清远见、蓝鸥科技等西安多家企业联合,第四学年分批组织学生到合作企业的实训基地参加真实的实训项目,体验IT企业真实的工作环境、工作流程和企业文化,了解互联网大数据、零售大数据、金融大数据等领域知识,学习海量数据搜集、分析、存储技术,引导学生按照项目的需求、总体设计、详细设计、编码、测试等流程完成实践内容,规范化文档和代码的编写,培养学生的行业、职业素养。

5应用效果

目前应用此方案有2016和2017级两级学生,虽然这两级学生都还没有就业,但在创新应用能力方面都较2015级之前学生有显著提升。近两年有10余组学生团队获得国家级、省级、校级“大学生科研训练项目”立项资助,有8名同学获得“蓝桥杯”程序设计大赛国家级二等奖、三等奖,省级一等奖2项,二等奖、三等奖多项。2016年有两队学生获得陕西省高校“互联网+”创新创业大赛三等奖,一队学生获得咸阳市青年创业大赛二等奖。数十名学生在核心期刊上公开发表学术论文。从目前取得的成绩来看,课程体系结构的调整,使得学生不仅获得扎实的理论知识,而且具备了过硬的实践和创新能力,我院软件工程专业毕业生一定会深受用人单位喜欢。

6总结

针对大数据时代下地方本科院校软件专业人才培养中课程体系存在的一些问题,笔者分析了大数据环境对软件工程专业人才的要求,以地方本科院校咸阳师范学院为例,改革调整了课程体系,主要在在理论教学和实践教学中增加大数据相关理论及技术内容,通过近年来的探索与实践,此课程体系结构有效提高了学生的创新应用能力,为大数据时代企业发展培养了高水平、高素质的大数据分析人才,新的课程体系适应了大数据环境下软件工程人才的培养。

参考文献

[1]孙琳.大数据应用的创新路径[N].人民政协报,2016-05-17.

[2]潘正高.地方应用型高校软件工程专业课程体系的研究[J].西昌学院学报,2017,31(3):94-97.

[3]潘怡.应用型本科院校软件工程专业课程体系设置探讨[J].长沙大学学报,2008,22(5):98-100.

[4]教育部专业教学指导委员会.高等学校软件工程专业规范[M].北京:高等教育出版社,2011.

第12篇

关键词:软件项目实践;专业能力;软件开发;评价

1理论指导下的项目实践

理论知识可以让人站在巨人的肩膀上,并拥有一个智慧的头脑,同样,实践操作可以让人利用智慧的头脑,练就灵巧的双手,开创一个新世界。与传统专业相比,人们从事计算机软件开发的时间并不长,软件开发理论也正在成长过程中。但是,这并不是说软件开发就无章可循,在这短期的发展过程中,人们总结了从事软件开发的诸多经验,并借鉴其他行业(如建筑、管理等)知识,逐渐形成了一整套较为成熟的软件开发理论,软件工程专业也应运而生。

软件开发,实践操作固然重要,但我们应在软件工程理论和规范标准的规范下,培养和锻炼学生软件项目开发的实际工程能力。所以,在强调项目实践的同时,我们也应该把现代化的软件开发理论贯穿其中,让学生在实践的同时,有章可循、有据可依。

1.1软件开发理论

软件开发理论从项目实践中积累起来并用以指导软件开发。20世纪60年代出现“软件危机”,软件产品开发的复杂度提高了,开发周期也大幅度延迟,而且软件错误也在增多,可维护性降低[1]。由此出现了最早的软件开发理论,即结构化分析和结构化设计(SASD)。而后,随着“重用”的提出,出现了软件开发的第二大技术理论,即面向对象的分析和设计(OOAD)。1998年,在“基于构件的软件开发”国际专题学术会议上,人们一致认为软件开发技术离不开构件和体现结构,由此提出了基于构件的软件开发(CBSD)。目前,随着分布式应用的出现,又出现了新的理论体系,即面向服务的架构(SOA)。软件开发的理论是随着实际项目经验的积累在不断完善和发展的,在软件开发过程中应该遵循已有的开发理论。

1.2理论贯穿于实践

不管是哪种理论都是从社会实践中总结、抽象出来的,能够反映大多数的现实问题,软件开发理论也是如此。理论知识概括性强且抽象,如果单纯地以讲解的形式“灌输”给学生,效果不理想,学生对这种“填鸭式”的讲解也不能真正理解,只能是形式化的记忆,因为他们根本没有软件项目开发经验可以参考,因此也就无法更深层地理解理论知识。

听过的会忘记,看过的能记得,做过的才理解。软件开发理论虽然经典,但不应该将其变为单纯的讲解,而应该将理论贯穿于软件项目开发中。以实践项目为依托,在真正的开发中让学生去领悟软件开发理论。比如软件开发的MVC模式,很多学生刚接触时都会排斥这种开发方式,认为做了很多“无用功”,系统的结构和实现太复杂化。其原因在于,学生学习软件开发语言时,接触的都是针对性非常强的小练习、小实验,这些练习和实验不会存在重用、维护、 更新等问题。只有在真正的项目实践中,学生才会遇到软件理论中所提到的、引起“软件危机”的因素。学生遇到实际问题,原来固有的开发方式已行不通,此时,学生自然会接受软件开发理论所提出的观点,或在此基础上寻找到适合自己的软件开发方式。

2提升软件开发基本能力

软件开发最基本的要求是在规定的时间和资金内,完成用户要求的所有功能。具体来说,软件开发专业方向的学生在接触软件开发后,应该具备的基本能力包括以下4条。

1) 运用理论、模型和技术对具体问题进行识别和分析,可以进行软件分析、设计、开发、测试和文档化,交付高质量的软件产品[2]。软件开发是周期性较强的工作,在一个周期的每一阶段都有不同的要求,对应学生不同的专业能力。

软件项目分析是对用户需求进行去粗存精、正确理解的过程,其基本任务就是和用户一起确定要解决的问题,建立软件的逻辑模型,编写需求规格说明书,并最终得到用户的认可。这就要求学生具备很好的软件交流能力和系统分析能力,将非专业的需求叙述转变成专业的描述。软件设计要求学生具备系统设计能力,可以着眼于全局,然后将功能细化,将软件分解成模块,逐步求精;软件开发就是对于软件的实现,把设计转变成计算机可以接受的程序,这就要求学生充分了解软件开发语言、工具的特性和编程风格等;测试的目的在于以最小的代价发现尽可能多的错误,以求软件的稳健性,要求学生可以找出合适的测试用例;文档的编写可以有利于后期维护和更新,也是对所开发的系统是否符合软件规范的一次检验。

2) 理解各种工程设计方法的优缺点,根据情况选择符合安全和经济规范的合适方法。同一软件项目的开发可以有多种模式,比如瀑布模型、原型模型等。瀑布模型其优点在于有利于大型软件开发过程中人员的组织和管理,有利于软件开发方法和工具的使用;缺点在于软件开发初期阶段就要确定全部的需求。原型模型的优点在于可以很方便地统一客户和软件开发人员对软件项目需求的理解,客户可以很快得到其需要的软件模型。[3]

不同的工程设计方法,也决定了软件开发的方式不同,不好评价其优劣性,在开发不同应用场景中的软件项目时,最适合的开发模式可能只有一种。因此在项目实践的过程中,要尽量多地展示不同的软件开发模式,有了切身的体会,就可以通过不同类型实例让学生比对其优劣,自己得出这些开发模式最适合的应用场景。这样做的好处是避免讲解这些开发模式所带来的枯燥、乏味,同时,让学生理解得更加透彻,做到知道、理解、会用。

3) 重视产品交付期限、面对有限的资源、系统和组织能对各种矛盾进行协调、折衷和决策。在项目实践中,所有的工作都要有计划、有组织地展开,尽量避免一个学生同时参与多个实践项目,其目的在于让学生全身心地投入到一个项目实践中,完成一个项目周期的所有阶段,这样做可以让学生遇到、分析、克服一个完整项目应该遇到的所有问题,而不是每次都在原地踏步走。

在开发中,我们可能会遇到各种各样的问题,有的可解,有的不可解,其解决方法也多种多样。在解决这些问题的时候,我们应培养学生独立思考、独立判断、独立求解的能力,训练其自学能力(这也是软件开发人员最为需要的能力),而不是直接告诉其答案或解决方法。我们可以采用形式多样的方法进行求解,比如开讨论会、论坛求助、技术支援,等等。经过几次非传统课堂式学习之后,如果遇到新问题,大多数学生可以独立找到求解的方法。在整个求解过程中,教师只是起到引导和铺垫的作用,真正在解决问题的应该是学生。

4) 遵守纪律、交流和合作、能够评价人和团队的能力,了解团队和团队行为及角色。当前软件项目趋于复杂化、集成化,非个人可以独立完成,需要多人协作完成,需要组建专业软件开发团队。

团队成员之间的沟通和合作将成为影响软件开发进度,以及软件质量的因素。所以,沟通和协助也就成为软件开发人员必须掌握的专业能力之一,在沟通中了解彼此的职责,在协作中了解软件分层和分工协作的优点。在具体项目实践中,我们可以根据学生的特点,让他们自己先分工,找到自己最想要参与的部分,并确定负责制定,以培养其责任心。

3发挥项目实践的导向作用

选取实践项目要针对软件开发的专业能力,做到有的放矢,不要为完成项目而完成项目。项目实践的导向性就是要求每一个项目要有对应的专业能力要求,学生在完成该项目后,可以真正获取相应的专业知识,锻炼相应的专业能力。

3.1项目设计层次化

软件开发专业能力的培养和训练并非一两个学期就可以完成,而是要贯穿大学四年学习,因此,选取的实践项目要具有分层递进的特点。在每个课程模块邻近结束时,要组织相应的项目实践,以强化该课程模块的知识体系。[4]

由浅入深的项目可以将学生逐渐带入软件开发的世界,而不会让学生产生挫折感而惧怕参与实践项目。分层次实践项目的每一个层次都应该对应一个或几个专业核心能力,围绕该能力的训练,我们可以组织多个实践项目,供学生选择。具体层次的划分可以根据专业学生的实际情况而定,一般以三到四个为宜。

伴随层次由低到高,训练学生专业能力的重点也在转移,由开始的专注于属性的抽象、方法的实现、算法的设计,逐渐到模块的设计、分层的设计,最后到整个体系结构的设计。学生专业能力的成长也是从对系统的认知、设计,逐步发展到的最后开发。

3.2项目开发模块化

针对每一个实践项目,在选择的时候应该根据需要而定,选取结构清晰,模块划分比较明确的项目,这样有利于专项训练[5]。低层次项目参与的学生较少,不利于培养学生对系统体系结构的把握,也不利于训练其团队合作与沟通,因此,我们可以把重点放在对软件开发语言的训练上,而高层次的项目重点应该放在系统的设计思路、软件整体的把握、小组成员的沟通等方面。

针对每个具体项目,开发过程可以细分为多个功能模块,即可以按照模块化来开发,在模块内部应该具备较好的聚合,模块之间耦合度相对较低。选取这样的项目,可以培养学生在设计与开发软件时,结合“大事化小,小事化了”的原则来思考问题,这也是在解决复杂问题时普遍采取的策略,“分而治之,各个击破”。所以,模块化结构较好的实践项目,有利于降低设计难度、分工协作和对系统的理解与维护。

对于低层次的项目,我们不易将功能模块划分得过于细小,使简单问题复杂化,对此,我们可以将整个项目看作一个模块,把重点放在对程序语言和知识点的训练上。比如设计制作简易电子日记本所涉及到的内容就不是很多,有三个类(日记本类、文件读写类、管理类)就可以完成,借助这个项目可以很好地训练学生文件读写的操作,而不适合分析设计思路、整体与子系统、子系统间的关系等概念。

对于高层次的项目,要强调系统的分解和模块的划分,而且应将各个模块间的依赖性尽量降低。在开发此类项目时,要着力培养学生系统分析能力,可以将比较复杂的问题,划分为几个相对独立的模块。比如一个完整的学生信息管理系统,一般由信息输入模块、信息管理模块、数据管理模块等组成,在具体到信息输入时可以继续划分模块:单个学生信息的输入子模块、批量导入模块、学生信息扫描模块等。经过不断的细化和求精,最终可以将复杂的系统功能分解为简单的功能模块,便于组织开发和分工协作。

4科学评价专业能力

项目实践可以让学生在训练专业能力的同时,得到更多的“顶峰体验”,获取开发软件的成就感,这也有利于学生自信心和价值感的培养。在借助项目实践培养学生软件开发专业能力的同时,健全或完善专业能力评价体系也是当务之急。

软件开发重在实践操作,而不是理论知识的陈述,它所要求的专业能力最终也是软件开发能力。衡量一个学生的优劣,不能仅参考其掌握多少知识,而是应该将重点放在其对知识的应用层面,也就是实践操作能力上面。

首先,从主观上和制度上改变软件类科目都需要考试的做法,要针对具体科目的特点,区别对待。对于偏重于基础知识的科目,闭卷笔试的方式可以促进学生获取知识,对于理论贯穿于实践开发中,指导软件开发的科目,可以采用综合实践开发的方式进行考察,注重考察学生的学习过程[6],即学生的考核标准参考该学生在软件项目开发过程中的综合评分。

其次,改变软件开发重结果、轻过程的评判标准,实行学生能力评价参数多样化。软件开发需要完成一系列的任务,在每个任务中,重点涉及的专业能力不尽相同,对学生能力的要求也存在差异。如在软件需求分析阶段,学生需要探寻客户的想法,了解他们的问题,并准确表达他们的要求。在软件设计阶段,需要了解系统的整体结构,并可以划分为子系统,这需要抽象和建模的能力。在编码与测试阶段,要求学生对开发工具,编程语言的熟练掌握。即使在这一个过程中,也会有详细的分工,比如有的学生擅长美工,有的爱好编程等。一般的做法就是核查项目有无实行,是否可以运行等,这样的评价太过于片面。

最后,学生的专业能力评价要与社会生产实践接轨,避免大而全的评价体系。软件开发是一个完整的系统工程,涉及很多领域,很难让一个学生独立完成整个项目。所以,科学的专业能力评价应该注重社会对软件开发人员的能力要求,引导学生培养自己的兴趣,注重发展自己的特长。

5结语

软件项目可以让学生在实践操作中,潜移默化地掌握软件开发理论、模型和技术。在选取具体实践项目时应当本着由简单到复杂,由基本知识点练习到整体系统分析的原则。学生的专业能力,在项目开发的整个过程中,历经由低级到高级的转变。最后在衡量学生专业能力水平高低时,应该更加科学,从多种角度进行评价。

参考文献:

[1] 齐治昌,谭庆平,宁洪. 软件工程[M]. 北京:高等教育出版社,2004:1-16.

[2] 董威,文艳军,陈振邦. 软件设计与体系结构[M]. 北京:高等教育出版社,2010:1-20.

[3] 栾跃. 软件开发项目管理[M]. 上海:上海交通大学出版社,2005:20-55.

[4] 李志强. 计算机专业软件开发能力的培养策略[J]. 计算机教育,2008 (14):15-17.

[5] 王晓敏,崔巍,宋燕林. 应用软件开发能力课程体系研究[J]. 实验技术与管理,2009(26):107-109.

[6] 何克抗,李文光. 教育技术学[M]. 北京:北京师范大学出版社,2005:356-376.

Training Students' Software Development Capabilities with Project Practice

ZHU Fengshan

(Jingu College, Tianjin Normal University, Tianjin 300387, China)

Abstract: With project practice, it can fully exercise student's practical ability, improve software development,