潘凤,付磊
(江苏联合职业技术学院淮安生物工程分院,江苏淮安 223200)
计算机软件在各行各业都有着重要的应用,比如人们经常使用的办公软件、聊天软件、导航软件、购物软件,常见的医疗管理系统、商品采集销售系统、核酸采集小程序等,各种软件已经成为人们生活必不可少的东西。随着中国社会经济发展,软件行业越来越流行,选择这一专业的学生也越来越多。该专业要求学生至少熟悉一门编程语言、数据库、算法分析等基础知识,该专业社会需求量很大,且薪资待遇较高。但是软件专业刚毕业的学生开发能力欠缺,实操经验少,这造成了社会对软件专业毕业生有大量需求,学生却找不到工作或就业不对口的问题,这一问题在职业院校尤为明显。
近年来,国家非常重视职业教育的发展。2019年为了破解企业缺少人才,在校生工作难找这一结构性矛盾问题,国务院启动“1+X”证书制度试点工作,学生取得证明知识层次的学历证书之外,鼓励他们再取得一些职业技能等级证书,用来证明自身具有的技能水平。
计算机技术发展飞速,很多软件公司对岗位越来越细分。软件生命周期分为:软件的需求分析、设计、编码、测试、维护等过程[1]。根据这几个过程,可以将岗位细分为:需求分析师、软件开发工程师、软件测试工程师、软件维护工程师[2]等。
根据这几个过程,可分析出高职学生可以适应的工作岗位。需求分析工程师的岗位要求如下:能进行项目实施可行性分析,有一定的沟通交流能力,将客户的需求提供给开发人员,能够独立编写软件需求报告。需求分析岗位一般需要有一定的经验,将客户、市场的要求在需求分析报告中展示。前期的需求分析非常重要,开发、测试的工作人员都会根据需求分析报告查验软件的功能是否齐全。
软件开发工程师,又分为前端、后端(服务器端)工程师,前端后端开发要求的能力不同(表1)。前端开发细分为:网站美工、UI设计、前端代码开发。就招聘网站的数据来看,目前大量缺少前端开发方面的人才。后端(服务器端)开发要求熟练掌握一门编程语言,熟悉使用某门编程语言的框架,熟练使用IDEA或Eclipse等开发工具,熟悉使用一门数据库语言。软件开发要求学生掌握的知识是综合的不是单一的,学生还要有一定的思维逻辑能力。
表1 软件工程师各类别能力要求
软件测试工作也是高职学生就业的一项选择。一个软件产品的最终质量取决于众多因素,在开发过程中极有可能会出现一些失误,往往一个小小的漏洞便会带来比较大的影响,国内国外著名的软件漏洞案例也有很多,比如:美国迪斯尼公司狮子王游戏软件兼容性问题[3]等,通过这些著名案例,突出软件测试的重要性,必要的测试可以了解软件的运行状况、软件的特点,能排查软件中可能出现的风险、弥补漏洞。目前国内对软件测试行业需求旺盛。
根据软件行业在社会中的职业分类,高职院校应不断改革课程体系、提高课程质量,努力使培养的学生胜任企业中的岗位。
高职院校开设的软件技术类专业有:软件工程、物联网应用技术、人工智能、大数据分析等。软件类各专业的教学实践、人才培养方案、课程体系等相互独立,各专业学生之间的差异也较大[4]。
近年来计算机软件知识更新飞速,越来越多的新方法、新技术不断涌现。高速发展的软件产业对人才培养的要求也越来越高。而高职院校专业设置滞后,课程体系大部分还是沿袭传统的模式,软件课程内容单一落后。高职院校软件核心课程一般有C语言、C#编程、Java编程、数据库设计、Android移动应用开发等。学生学习的过程一般是先学习C语言等基础性语言,再学习如Java高级编程语言等,教师在教授过程中往往只重视语法、单一知识点地讲解,导致学生在学习知识点时,学了后面知识忘记前面所学知识,学生不能将知识点串联起来,不会运用知识。课程内容也比较滞后,项目化、案例教学内容少,学生综合运用能力较差,不能进行知识迁移,从而导致学生分析问题的能力较弱,思维逻辑能力得不到锻炼。
软件专业在社会中发展飞速,很多新技术应用在软件技术中,而高职院校的软件课程却没有跟上社会的步伐,课程设置和课程内容都严重滞后,学生还在学习社会上早已经不用的技术,导致软件专业毕业生与社会严重脱节。企业更喜欢招收毕业前经过培训机构专业培训的学生,正常毕业的学生找到专业对口的理想工作比较困难,企业也无法招收到合适岗位的人才。这就造成了社会上出现的大量毕业生涌入社会却找不到工作,而企业有大量的用人需求却招不到人的社会现实。
在软件专业课程中,实践课程课时安排相对不足,而理论课程课时很多,经抽样调查,部分课程实践课时占比不足50%(表2)。很多高职院校实训条件有限,机房、计算机数量不足或计算机老旧无法安装相应软件,这也限制了学生的实践学习。在软件专业中学生学习的理论知识必须通过上机实践,才能将抽象知识理解并吸收,教师传统的教学模式侧重于理论知识讲解,而不重视实践教学,学生技能训练严重不足。重理论、轻实践的教学让学生动手能力得不到培养。
表2 软件课程实践课时占总课时比例
在软件专业日常教学中,一般采用理论与实际操作相结合的方法,教师先讲解理论、上机演示,学生实践也只是模仿练习,学生学习的编程只能算是基础知识,上机实践也只是练习某个知识点,上节中提到的课程设置滞后,融合多知识点的案例实践对学生来说难度较大,同时学生分析问题能力较差。
软件专业需要学生拥有一定的思维能力和逻辑能力,要求学生有良好的数学基础、有学习的主动性,能对问题进行深入分析。但是高职院校软件专业的学生基础一般,对于一些编程课程,学生刚开始接触就有一定的难度,只有较少的学生思维逻辑比较好,这些学生对一些有难度的编程题能快速理解并解决,而思维逻辑较差的学生,则理解很吃力,加之学生学习主动性不强,渐渐地就会对编程失去兴趣,老师讲解的课程越来越听不明白。一段时间后,学生就失去学习的兴趣并最终放弃学习编程。比如C语言是编程语言中的基础语言,大部分学生刚开始学习起来觉得很难理解,学习很吃力,课后也没有进行自主学习,当C语言学习完,再学习其他高级编程语言,学生就更加听不懂,就会失去学习的动力,对学习提不起兴趣。
“1+X”证书制度有效地推动软件专业的建设,保证人才培养质量。高职院校应以“1+X”证书制度为契机,根据不同的学生群体制定不同的课程培养方案和教育评价体系,使学生拓展就业本领,真正学到技术,与社会无缝接轨。
教师是进行“1+X”证书制度的主要推动者,教师的水平直接决定“1+X”证书制度实施的效果。“1+X”证书制度强调学历证书、职业资格证书的联合培养,学历证书是一块敲门砖,它代表了一个人的知识层次,而若干的职业资格证书是职业技能的体现。当今社会学生不仅要具备专业技能,还需要有岗位要求的职业素养,比如:软件行业规范、代码安全、综合分析能力等职业素养。教师的思政育人能力也是教学中必备的一项能力,除了教授学生专业技能外,还需要在课堂中融于思政元素,培养学生的职业操守和行业规范。所以教师应具有一定的教育理念,学校可以号召教师参加“1+X”证书研讨会,深入理解“1+X”的教育理念,精准把控“X”证书的职业要求,让教师真正成为“1+X”的推动者。
“1+X”证书制度侧重学生的专业能力和动手能力,学生不仅要有一定的理论知识,还要有岗位所需的专业技能。所以教师在教授学生知识时,不仅要传授基础知识,还要对学生进行项目化教学,使学生对知识有一定的综合应用能力。教师要有一定的企业经验,熟悉各类企业的要求,这样才能将企业实际要求介绍给学生,让学生提前了解,明确学习方向。学校可以出台一些激励政策,鼓励教师深入企业进行实践[5],而不是仅仅流于形式,让教师脱产到企业锻炼,在企业中每天按时上下班、实行企业打卡制度,教师跟岗结束后进行岗位考核,以保证教师能真正参与企业项目中。
传统的课程体系注重传授知识,缺乏学生综合能力、创新能力、自主学习能力、外语能力等培养,对软件行业中的代码规范、文档规范、安全性保障等知识涉及的少之又少。传统的教学模式又没有将职业资格证书与课堂结合起来,学生毕业时缺乏证明自己能力的证书。软件专业课程体系中应加入实训课程,采用项目化教学,贴近企业岗位需求,将毕业证书与软件专业相关的证书相结合,比如:Web前端开发证书、软件设计师证书等。
在软件专业中,融入“1+X”证书制度,更应培养学生实际编程能力、思维逻辑能力。但是在软件专业授课过程中,学生只能进行简单编程,他们的思维逻辑能力较差。所以在软件专业改革时,要侧重于学生编程能力的提高,锻炼学生的思维能力和逻辑能力。在基础程序设计语言学习时,增加一定的课时量,用于学生编程的专项训练,比如在学习C语言,加入一定量的算法练习题,能够提高学生的逻辑思维能力。思维逻辑能力提高不是纸上谈兵,必须要上机训练,进行大量编程题目练习。
软件行业新技术不断涌现,迭代更新速度快。所以在高职院校软件课程体系要及时更新,不能一成不变,比如VB语言目前市场应用较少,那么软件专业的课程体系设置中可以相应地做出改变,淘汰VB语言,用新的程序设计编程语言取而代之,比如Python、Java等市场比较流行的语言。新的编程语言知识中可以加入一些社会上常用的框架,比如在Java语言中加入SpringMVC、MyBatis等框架模块,学生走上社会能进一步适应工作岗位的要求。
进一步优化课程设置和教学内容,在日常教学中真正融合“1+X”证书制度,高职院校复合型人才培养再上新台阶。
传统的评价模式过于片面,不能给予不同层次学生肯定和表扬,不能全面地评价一个学生综合素质。每个学生在学习上各有优势,教师对学生的评价应该能够使学生产生学习的动力。采用多元化的评价体系,以学生为本,在各类教学场景中应用多元评价,不断发挥评价的积极意义。比如学生在上课过程中积极发言,那么教师应给予一定的肯定,这样不但能够肯定发言的学生,对其他学生也是一种激励。
针对学生的每一个学习阶段,教师应该给予针对性的评价权重,比如课前预习,教师设置相应的预习权重,学生认真完成课前任务等,预习中出现的问题要及时给予相应的评价,课中学生讨论学习、积极发言、认真听讲,课后认真完成作业等,教师都要给予一定的评价,重视教学过程性的评价。通过评价的过程性,可不断完善优化教学内容。教学中评价有多种方式,学生可进行自我评价、学生之间也可进行互相评价、教师再进行针对性点评,从评价中找出需要改进的地方。评价的内容也要全面,不单是知识方面,在技能目标、情感态度、价值观等方面也要有一定的评价标准[6]。
无论是哪种评价方式,都应该以激励学生为出发点,通过多元评价达到课堂教学目标。
“1+X”证书制度为软件专业人才培养提供了参考标准,学校加大支持力度,培养与企业深度融合的“双师型”教师,为教师专业技能提升提供机会与平台。在“1+X”证书模式的指导下,职业学校要积极优化软件专业教学课程内容、重构课程体系,通过各种方法不断提升教师教育教学水平,从而不断提高软件专业人才培养质量。软件产业发展飞速,社会对软件人才的培养需求不断变动并日益提高,因此对软件人才的培养模式还需要不断探索、改进。