软件素养与软件过程核心能力协同培养的软件工程专业建设探索
2022-09-02王宇英
王宇英
(桂林电子科技大学 计算机与信息安全学院,广西 桂林 541004)
软件产业正在成为新经济发展的重要支撑点,大数据、人工智能等无一不依靠软件来发挥其重要价值,但软件人才层次结构不合理、高级软件人才的短缺已成为制约中国软件产业快速发展的一个瓶颈。梅宏院士认为:“在人-机-物融合计算的场景下,万物皆可互联、一切均可编程,软件定义带来新机遇和新挑战”。智能服务的普适化、定制化等特点决定了软件在未来信息时代中的重要作用;物联网、云计算、大数据和人工智能等新一代信息技术的核心价值需要依靠软件呈现。制造业转型升级对软件提出了个性化定制、网络化协同和服务型制造等诉求都意味着软件定义一切的时代来临,但软件服务的多样性同样对软件人才培养提出了新要求。随着软件定义一切的时代来临,软件服务需求的多样性不仅对软件人才的“量”有要求,更对软件人才的“质”提出了高诉求。
一、软件人才培养面临的困境
1.软件产业规模的持续增长对软件人才提出了数量要求,软件人才供应存有较大缺口。但软件人才结构不合理,软件人才的“质”堪忧,成为制约中国软件产业快速发展的一个瓶颈
中国软件产业产值从2007 年的5 800 亿元增长到2018 年的6.3 万亿元,年均复合增长率达24.23%。2018年软件产业的从业人数达643 万人,信息消费规模达5 万亿元,是GDP 增速的2 倍(数据来自历年软件和信息技术服务业统计公报,工业和信息化部)。教育部组织对联想、方正和中兴通讯等用人单位开展的计算机人才需求调研结果表明,在今后很长的一段时间内,我国每年存在至少20 万软件人才缺口,并且这个缺口还在以每年约20%的速度增长。我国的软件产业虽然发展很快,但是规模大而不强,企业多而不优。但人才缺口已经成为软件产业发展的瓶颈。IT 界通常认为,软件产业快速发展需要三类人才,这三类人才在结构上呈金字塔型,处于金字塔顶层的是既懂软件架构及软件开发技术,又与国际无缝接轨、精通管理的软件管理人才(含软件架构师、系统分析师等);处于金字塔腰部的是软件工程师;处于金字塔底层的是熟练的程序员,也就是软件蓝领。目前我国本科高校培养了大量处于“金字塔”腰部的“中间人才”,他们掌握了较先进的软件开发技术,能从事软件研发工作,但软件架构、整体设计能力不足,由于对培养机制不适应,他们的管理能力也不足,不能迅速成为金字塔顶层的软件管理人才。除此之外,我国还缺少大量能够从事“规范化”软件编程的程序员。这种软件人才结构的不合理制约了软件产业的发展。
2.培养体制不适应,高校培养的软件人才无法适应企业实际需要
目前,软件人才培养体制的调整严重滞后于软件产业的发展,软件人才的培养和输出已经不适应快速发展的IT 产业。我国软件人才现状是计算机类专业毕业生人数富余,但用人单位却招不到合适的软件人才,其中重要的一个原因是应届毕业生缺乏实际软件项目研发经验,规范化编程能力较弱,无法适应企业的实际需要。从行业和企业发展看,软件人才需要具备的素养包括专业素养和软件素养,其中专业素养包括软件构架、整体设计和软件开发能力;软件核心素养包括软件成本核算、软件过程管理和软件质量保证能力等软件工程规范,以及团队合作精神、娴熟的沟通交流技能、良好的问题理解能力及能跟踪全球的技术标准等。从目前的培养模式来看,校内教师缺乏行业背景和大型软件开发经验,对流行软件开发框架、大型软件团队管理等不熟悉,导致培养的学生在专业素养和能力素养上距离企业需要的软件人才有差距。
2020 年,面对软件人才“卡脖子”问题,国家启动特色化示范性软件学院建设,目标就是能联合国内软件行业与高校,在工业软件、行业软件和操作系统等领域开展校企联合培养。桂林电子科技大学软件工程专业有较长时间的办学历史和经验积累,至今已培养本科生近千名,学生在珠三角地区广受用人单位欢迎,本科生一次性就业率维持在93%以上,2019 年接受了工程教育专业认证专家组进校考察并获国家级一流专业建设点,主要目标是培养行业应用软件研发、管理和运维工程师,由于流行的应用技术和工程项目运作与管理经验等都掌握在企业手里,专业提出了“与企业深度融合,培养企业需要的专业能力与软件素养兼具的软件人才”。
二、与企业深度融合,软件素养与核心能力协同培养的软件工程一流专业建设探索
结合学校人才培养定位和专业人才培养目标,软件工程专业以深度校企合作为基础,通过校中企、5R 工程实践和校企双导师制等与企业深入合作,通过多层次实践载体建设、多样化实践教学模式改革和课程体系持续更新等,围绕软件素养与核心能力协同培养多层次软件人才培养方面做出了一些探索。
(一)围绕软件素养与核心能力协同培养,探索多层次实践载体建设和多样化实践教学模式
实验室、创新创业实践基地及校外实习基地是我国高校常见的实践教学载体。随着高校扩招,学生进入校外实习基地顶岗实习日趋困难,尤其是西部地区高校的软件工程专业,由于当地软件企业较少,校外实习基地大部分只能承担参观性质的认知实习。高校探索校企合作已有多年,但由于缺乏激励机制和扶持政策,企业对高校育人投入热情不足,只有触及企业的核心利益才能实现真正的校企联合。对软件行业来说,企业有用人需求和技术合作要求,但用人或技术革新都不是促使企业热衷于校企合作的关键点。软件企业的核心利益在于直接的经济效益,探索一种“学校需要、企业愿意”校企深度融合的专业共建和联合培养模式和体制,是构成人才培养共同体的首要问题。
专业打破常规的校外实习基地形式的校企合作模式,采用引企入校方式,建设校中企,拓展了实践教学载体,并在此基础上进行了实践教学模式和课程建设改革。
4)回缩。多年生枝的短截修剪,称回缩修剪,也叫缩剪。缩剪比短截的局部促进作用更强,有助于养分向基部转移。成龄树冬剪时应用较多。
1.引企入校,建设校中企
传统的校企合作是在企业建设校外实习实践基地,选拔学生进入企业顶岗实习。该模式的缺点是:学生要到企业实习,实践基地每年能接纳的学生人数受企业规模和可接纳实习生人数限制,且学生要到校外实习,存在安全和管理问题。由于高校扩招,计算机类学生数量庞大,企业接纳人数有限,对地方高校的学生来说,能通过实习生招聘进入企业实习的机会很少,大量的学生在毕业前都无法获得真实企业实习经历。总结近年来多种途径的校企合作,可以看到很难将学生全部安排到企业实习、实训,也不可能依赖各种各样的培训机构来实现。高校的优势是有大量的学生可以进入企业顶岗实习,他们掌握不同技术栈,有朝气、有活力,能从事软件开发、测试等不同层次的岗位工作,且实习生薪资低。不同于其他行业,软件企业进驻学校投入成本较低,不需要投入大量设备,有场地就可以开展工作,若在学校建立企业工作室,学校提供场地,有源源不断的学生资源供企业挑选,企业又可以在校中企运行过程中培养和挑选企业需要的软件人才进入企业就业,实现校企双赢。
学校于2019 年启动花江慧谷建设,为探索新的校企合作模式提供了契机。遵循“学院出场地、企业来建设”,校企双方共同管理理念,学院引入了十余家软件企业进驻学校花江慧谷。学校根据企业规划提供场地,企业根据自己的运营要求出资装修、布局,设置校内工作点。企业将实际项目的部分部署在工作点开展,专业根据企业要求协助企业招聘实习学生,企业按岗位设置给学生发放实习工资,校内工作室与企业其他员工通过网络平台沟通,合作完成项目开发。
除提供实习岗位外,专业还聘请企业技术人员担任一部分专业培养计划内的实践课程或毕业设计指导工作,通过直接参与学生培养过程开展全程式校企联合的专业共建和人才培养,充分利用企业的“专长”,培养学生适应岗位的软件素养、核心能力。
2.建设“实验室-创新基地-校中企-校外实践基地”多层次校内外实践教学载体,培养学生软件工程核心能力
建设了计算机基础、软件工程、大数据和云计算等专业实验室,以实验室为载体,开设基础实验、综合性实验、课程设计,培养学生计算思维、算法设计与分析、程序设计和系统能力及工具使用能力等;通过综合性实验、课程设计进行能力提升和强化,开展团队项目,锻炼学生的团队合作、沟通交流能力等素养。
以创新实践基地为载体,通过竞赛、大学生创新创业项目和科教协同项目等提升学生科技创新能力。学院建设了大学生科协琢璞坊、ACM 算法训练与竞赛基地、软件技术实训与项目研发创新基地及大数据技术创新训练基地等实践基地,从兴趣培养与科技服务、科教协同育人、校企协同育人和创业项目培育等方面对学生进行引导,各基地围绕“浓氛围-提兴趣-强能力”的主线开展培训、竞赛活动,实现学科竞赛、大学生创新创业项目和科教协同项目的全员覆盖。
以校中企为载体,开展5R 工程实践探索。校企合作的最终目的是为了提高工程应用型人才培养,要实现企业与学校、专业的有机结合或融合,而不是简单地把培养学生的责任给企业。建设校中企后,企业派技术人员常驻工作室,负责企业项目在校内的运营,学院为每个工作室配备一名专业教室,负责协助企业进行学生的考核和管理。根据校中企建设情况,软件工程专业的学生能通过工作室的招聘获得软件开发、软件测试等实习岗位,实际参与企业真实的研发项目,与企业其他技术人员进行合作共事,得到岗位能力和素养的训练和提升。校中企为学生提供了具有企业5R 特征(真实的企业环境、真实的工程项目、真实的项目经理、真实的工作压力和真实的工作机会)的工程锻炼。
专业还基于校中企建设对生产实习模式进行改革,学生可通过三种模式开展生产实习:一是通过实习生招聘进入企业开展实习;二是参加企业在校内开展的集中实习,集中实习包括企业参观、专题讲座(为学生介绍企业文化、职业素养等)和项目实战;三是参加校内企业工作室的岗位实习。无论哪种模式,学生都能近距离接触和了解企业,提升专业素养和能力,帮助学生毕业后更快地融入社会,适应岗位。
软件行业发展迅速,技术更新快,校内专职教师在专业能力、知识储备上无法满足专业发展需要,尤其是校内专职教师缺乏企业大型项目开发经验,在实践指导上有明显的缺陷。所以专业提出了校内专职教师与企业技术人员同建、共上一门课的模式,利用企业力量培养学生实践应用能力以及符合科技发展最前沿的综合实践能力,通过双方融合共同改进教育质量。具体做法如下。
校企共建共上课:专业根据培养方案、行业发展提出要求,专业和企业协商制定课程内容、教学计划、授课和考核形式,由企业技术人员授课、考核,校内专职教师协助教学管理。专业近年来与校中企实践基地深入合作,与企业共建了Web 前端开发、Java EE 企业级项目开发和大数据分析实训等课程,由企业导师线上线下授课,校企双导师实施考核。同时,根据每年专业学生的技术或素质短板,为学生开设软件安全、项目管理、工程伦理和职业素养等企业自设课程。
校企共同开设生产实习:针对校外实习基地不足的现状,专业生产实习采取学生自主联系企业实习和校内集中实习结合模式,校中企技术人员组织校内集中实习的学生参加项目实训,按大数据、Java Web 项目和嵌入式软件开发等方向为学生开设生产实习,在实习过程穿插企业文化宣讲、职业修养等专题讲座。
校企共同指导实践:专业聘任校中企技术人员担任软件工程课程设计、大数据分析实训和毕业设计指导教师。校中企技术人员在校内工作点上班,可全程参与实践指导。无论是企业为学生开设课程或生产实习时,技术人员都使用企业的实际项目作为案例,以真实项目的研发过程,训练学生进行需求分析、软件建模、软件开发、部署和维护等的能力,以晨会、周报和答辩等企业项目管理方式对学生进行团队管理和项目开发过程训练,使学生能熟悉软件项目实际研发过程。
(二)持续更新课程体系,培养与国际接轨、适应行业发展和社会需求的多层次软件人才
软件产业的技术发展很快,软件工程知识体系与能力体系要求学生掌握知识体系在广度上不断扩大。新的软件工程知识体系SWEBOK V3 扩展到15 个知识域,这与学校有限的教学时间存在难以协调的矛盾。同时,日益复杂的软件系统对学生的系统构建、团队合作和沟通交流能力提出了更高要求,快速发展的软件技术也要求学生有更好的技术理解力和自主学习能力。如何在有限的教学时间内,使学生既能掌握软件工程知识体系,又能培养工程素养和能力,是软件人才培养的难题。专业在优化课程体系时围绕素养与能力协同培养进行了探索,在以下四方面提出了课程体系优化思路。
(1)不断地吸收国际最新技术成果,在课程设置上推出全球权威性的、IT 前沿系统的课程,将最新技术引入课程。同时通过校企联合课程,结合企业项目管理实际,培养学生的项目管理、沟通交流和团队合作等能力素养。
(2)与企业深度交流,将企业最前沿的工程实践知识纳入课程体系,培养企业需要的软件研发工程师。软件人才要求技术能力强,实际动手开发项目是学生必须掌握的综合运用专业知识的核心能力,也是工程教育所要求的,专业通过5R 工程实践、校企联合共建课程等方式,使培养的人才满足企业的用人需求。
(3)与国际规范接轨,培养“规范化”程序员,实现软件开发的工程化。具体做法是追踪国际信息技术发展方向,在课程体系中融入国际开发准则和标准。
(4)跟随软件市场需求的发展和行业对新型软件业务的发展需求,关注软件测试、运维等新的软件人才需求动向,持续更新课程体系。
结合工程教育专业认证,专业在建设中将本专业的核心能力定义为软件工程思维、软件建模能力、算法设计与优化能力、软件架构与实现能力,围绕软件工程专业核心能力,提出的课程体系优化方案见表1。同时设置了企业自设课程1-2,根据专业行业发展需求,由专业提出、企业主导开设软件安全、项目管理、工程伦理和职业素养等课程。
表1 软件工程专业核心能力及课程体系
三、结束语
一流专业建设的最终落脚点是课程,课程是顶层设计是否有效贯彻执行的微观层面体现,对学生培养质量具有决定性影响。高校的教学改革,改到深处是课程,课程改革是教学改革的“最后一公里”,先进的教育理念、前沿的教学内容,都必须通过好的课程,才能真正作用在学生身上,才能真正体现在学生的学习效果上。软件工程专业将继续在校企课程共建上与企业深度合作,将企业的项目管理、先进技术等融合课程,使毕业生能力和素养与企业要求无缝对接,同时在校中企运营模式上继续探索,使学生能在校内做企业真实项目,得到实践能力和软件素养的全面提升。