付雄
(南京邮电大学计算机学院,南京 210023)
近年来,信息技术迅速发展,极大地支撑了国民经济的发展,也导致信息技术人才需求迅猛上升,其中软件工程人才需求尤为显著[1-2]。人才的需求也使得软件工程成为大学的热门专业,各高等院校都开设了软件工程专业来满足人才市场的需求[3]。软件工程专业经过二十来年的发展,近年来也遇到了不少问题[4-5],如软件工程人才培养知识不够系统,学生掌握技能较为陈旧,无法直接满足企业软件开发的需要,从而导致学生就业出现问题。如何改革软件工程专业人才培养模式,培养高质量的软件开发人才,成为软件工程专业教学改革的重要方向[6-7]。
为了解决软件工程人才培养面临的困境,培养符合社会要求的高质量软件开发人才,笔者所在单位展开了基于产学研合作的软件工程人才培养探索与实践。通过高校教授、软件企业开发经理、专业任课教师一起展开产学研合作,设计软件工程专业人才培养方案,改革软件工程专业实践课程,构建基于产学研合作的软件工程专业人才培养模式。几年的实践证明,所进行的软件工程人才培养收到了良好的效果,学生的学习积极性明显增加了,企业对人才培养的质量也更为满意了。
近二十年来,发展包含软件产业在内的信息技术和信息产业一直是国家的重要战略,这也导致软件人才的需求巨大。根据教育部和商务部2018 年的规划,近5 年内全国需要培养120 万名软件与服务外包人才,巨大的软件工程人才市场需求需要软件工程人才培养模式的不断发展与优化。
软件工程作为一个开展工程性人才培养的大学专业,其体现的综合性、实践性、行业性等非常强。虽然国内大学软件工程人才培养经过二十年来的探索,依旧存在不少问题,主要体现在下面几点:
(1)软件工程人才培养实用性不够,软件工程本科人才培养同大部分企业需求脱节,不经过毕业后的岗位培训难以胜任实际工作,虽然当前企业需求巨大,但软件工程专业学生依旧存在部分就业困难,特别是普通院校的学生。
(2)学生掌握技能、知识不够系统,对软件开发的工程认知不够,不足以支撑工作中的持续学习和提高。当前各大学软件工程人才培养基本上都主要借鉴计算机专业人才培养模式,适当增加工程理论相关知识,其系统性不够。
(3)课程实用性不够,教学案例陈旧,导致学生学习积极性不够。软件开发技术日新月异,企业采用技术变化很快,软件工程人才培养中所使用的课程和案例往往跟不上,显得课程内容和案例陈旧,无法满足企业需要,学生觉得实用性不够,学习积极性不高。
(4)软件工程实践性教学落后,远离企业软件开发环境和技术。由于当前高校软件工程专业任教老师基本上都是从高校毕业直接任教,缺乏企业软件开发经验,软件工程实践性教学无论从开发环境,还是开发技术要求,都和软件企业有相当大差距。
为了解决软件工程人才培养中出现的问题,提高人才培养质量,笔者所在单位结合科研、产业需求,展开了软件工程人才产学研合作培养探索与实践,其主要工作如下:
(1)改革软件工程人才培养的同时探索新型软件工程人才培养模式
针对软件工程人才培养中存在学生知识陈旧,实用性不够,难以直接满足企业软件开发需要等问题,学院对软件工程专业的人才培养模式进行了大规模的改革探索与实践,一方面对软件工程专业的培养方案和课程进行了深入改革,另一方面根据软件行业需要,设计新型软件工程专业进行人才培养。
在软件工程专业培养方案和课程深入改革方面,学院邀请软件工程方面的资深教授,著名软件企业的高级开发经理,软件工程专业当前专业课任课教师等一起组成专家委员会,由专家委员会经过多次讨论来确定软件工程专业的培养方案和课程设置。
在新型软件工程专业设置方面,学院根据所在江苏省作为服务外包,特别是软件外包大省的特征,一方面和印度国家信息技术学院(NIIT,National Institute of Information Technology)合作,将其关于软件开发方面的课程作为专业课程嵌入到软件工程专业教学大纲,开设软件工程(嵌入式人才培养)新型软件工程专业;另一方面,在省教育厅和商务厅支持下,和本地著名的软件企业,如中兴通讯、诚迈科技等合作,由企业根据其项目开发需要,在学校教师协助下增设部分专业课,共同开设软件工程(服务外包)新型软件工程专业。
(2)更新软件工程课程内容的同时构建软件工程产学研合作课程体系
培养满足企业软件开发需要的软件工程人才,其培养模式的核心是课程体系的设计。学院由校内外软件工程方面的资深教授,本地中兴通讯、诚迈科技等著名软件企业的高级开发经理,软件工程专业当前专业课任课教师等一起组成专家委员会,共同设计产学研合作模式下软件工程专业人才培养课程体系。
针对原有的软件工程专业,主要更新软件工程相关专业课程的教学内容,使之能符合现代软件开发人才培养需要,同时结合学院科研力量,增设一些当前热门信息技术科研相关课程,当前增设的课程主要有信息安全技术、人工智能、数据科学基础(双语)、云计算技术等课程。
在软件工程(嵌入式人才培养)专业方面,学院将软件工程部分专业课程替换为NIIT 相关课程,包括Database Programming with RDBMS、Object Oriented Programming Using C#、Introduction to Java、Introduction to Windows Store App、Development using C#、Designing rich interfaces with HTML 5、Java Programming- II、Android Application Development、Developing Web-based Applications Using ASP.NET、Web Applications Development using JSP & Servlet、Web Services Development Using Java EE Technologies、OOAD-UML。同时增设部分科研相关课程,如人工智能、数据科学基础(双语)、云计算技术等课程。
在软件工程(服务外包)专业方面,学院和企业共同开设部分专业课程,主要的有软件外包、UML 系统分析与设计、移动应用基础、移动应用开发、ASP.NET 应用开发(双语)、Web Services Development Using Java EE Technologies、OOAD-UML、Web 技术(双语)。这些课程采取学院和企业共同建设,采用企业的技术标准和培养方案,学校教师先到企业受训再开设课程,或者部分课程直接由企业派出有经验的开发人员授课。除此之外,也开设部分科研相关课程,如信息安全技术、人工智能、数据科学基础(双语)、云计算技术等课程。
软件工程专业作为工程类专业,其对工程实践能力培养要求非常高。软件工程实践能力不但是理解和掌握理论知识的重要手段,也是解决工作实际问题,满足企业需要的必备能力。产学研合作的软件工程人才培养针对工程实践能力培养主要体现在下面两点:
(1)改革实践课程内容跟上软件开发新技术步伐
在产学研合作的软件工程人才培养模式中,工程实践能力培养首先就是改革实践课程内容跟上软件开发新技术步伐,这样一方面让学生掌握企业最新使用的软件开发新技术,实现学生从学校到企业的无缝衔接,另一方面也通过新技术的学习,贴近企业的实践项目吸引学生对软件开发兴趣,提高学生学习积极性。
在软件工程(嵌入式人才培养)专业方面,学院基本上整体将NIIT 实践课程进行嵌入,实践课程设计主要包括程序设计实践、软件项目实训I、软件项目实训Ⅱ、软件项目实训III、软件项目实训IV、毕业设计(论文)等,其中软件项目实训全部采用NIIT 实践课程的内容和方式。
在软件工程(服务外包)专业方面,实践课程主要分为程序设计实践、软件设计实践、服务外包基础实践、服务外包工程实践、服务外包项目实训、毕业设计(论文)等,其中服务外包相关实践课程以软件开发企业为主进行,从实践课程内容、开发技术都由企业软件开发项目经理来负责设计。
在原有的软件工程专业方面,实践课程主要分为程序设计实践、软件基础实践、软件设计实践、软件项目实训、毕业设计(论文)等。要求任课老师借鉴软件工程(嵌入式人才培养)专业和软件工程(服务外包)专业实践课程,从内容设计和新技术采用上改革实践课程,并融入当前科研中的一些热门技术。
(2)产学研合作实践课程多样化提高工程实践能力
软件工程专业学生的工程实践能力培养除了改革实践课程内容外,学院对实践课程方式也进行了多样化的改革,选取一些课时较多的实践课程,对实践课程的执行方式进行了一定程度的改革。
针对软件工程(嵌入式人才培养)专业的学生,学院和NIIT(中国)软件人才实训基地进行合作,将学生送入到实训基地进行封闭式专业实践,进行为期两周、一个月和两个月等多种实践课程,无论实践课程内容和考核方式都采用NIIT 自己的模式。
针对原有的软件工程专业和软件工程(服务外包)专业的学生,让学生在较长时间的专业实践课期间采用灵活的执行方式,主要包括下面几种:①在校内进入老师课题组以科研项目展开专业实践;②进入与学院进行软件工程专业共建的公司,通过项目实习展开专业实践;③自行联系软件企业通过项目实习进行专业实践。其中对于后面两种方式的专业实践,学院给每位学生配备校内导师,负责对专业实践质量进行把关,并做出及时调整。
软件工程专业的人才培养经过近二十年的发展,已经面临了知识不够系统,技术陈旧,无法直接满足企业需求等不少问题。论文针对当前软件工程专业人才培养现状,展开了产学研合作的软件工程人才培养探索与实践,设计基于产学研的软件工程专业人才培养方案,改革软件工程专业实践课程,实践表明所进行的软件工程人才培养改革收到了较好的效果,学生学习积极性明显增加,企业对人才培养的质量也更为满意了。
虽然基于产学研合作的软件工程人才培养探索与实践取得了一定的成绩,但是暴露出来了不少问题,如学生展开实训费用过高,在企业进行专业实践时间短而难以深入项目学习,企业开展专业实践形成的教学档案规范性不够等,这些将是未来基于产学研合作的软件工程人才需要解决的问题。