首页 理论教育 软件工程卓越人才实践能力培养模式的探索与实践

软件工程卓越人才实践能力培养模式的探索与实践

时间:2022-03-05 理论教育 版权反馈
【摘要】:因此,如何在本科培养阶段兼顾这两方面的要求,是软件工程人才培养面临的巨大挑战。目前,软件工程专业正在通过多种类型的课程设置、课程改革来提高学生的实践能力。软件人才的需求与供给不相匹配。

软件工程卓越人才实践能力培养模式的探索与实践[1]1

潘伟丰[2] 姜 波[3] 谢 波[4] 王家乐[5] 潘 云[6]

(浙江工商大学计算机与信息工程学院)

摘 要:本文针对当前软件工程学生实践能力培养中存在的问题,结合软件系软件工程专业应用人才培养的实践,从培养方案、授课模式、实践教学、课余教学等方面阐述关于软件人才实践能力培养模式的探索和实践。

关键词:软件工程;实践能力;培养模式

一、引 言

软件产业是信息产业的重要组成部分,是国民经济信息化的基础,大力发展软件产业具有重要的理论和现实意义[1]软件技术的快速发展要求软件工程人才具备扎实的技术理论基础。然而产业界则更关注毕业生能否迅速融入业界环境,解决实际问题。因此,如何在本科培养阶段兼顾这两方面的要求,是软件工程人才培养面临的巨大挑战。软件工程与计算机科学与技术专业不同,更侧重于培养应用型、工程型人才。具备创新意识和创新思维的工程型人才必须首先具备良好的实践能力。

目前,软件工程专业正在通过多种类型的课程设置、课程改革来提高学生的实践能力。然而,课程内部的学习对于学生的实践能力培养还是有限的。目前学生在实践能力表现出以下问题:

(一)学生在相关软件开发实践方面的能力较为欠缺

在以往的教学中发现,学生对于软件开发的技术技能的掌握尚存在一定的困难。主要原因可能还是在于学生缺乏长期的系统的实践,缺乏更好的激励学习实践的环境和机制。

(二)缺乏对实战项目的尝试与体验,不知学为何用

由于大多课程重在基础技术技能的传授,课程实验多为辅助掌握与巩固课内知识点、技术点而用。致使学生到毕业设计阶段都没有能力去独立完成一个真正的课题。学生缺乏把各个课程相关知识技术点融会贯通,学以致用的能力。

软件人才的需求与供给不相匹配。每年相当一部分软件工程专业毕业生就业困难,而另一方面,企业招不到合适的软件人才。近年来,不断兴起的软件开发技术培训业也从一个侧面反映了高校本科软件人才教育存在的问题。

我们根据企业实际用人需求,改革现有培养模式,从培养方案(Training Program)和课程设置、授课模式(Delivery Model)、实践教学(Practice Teaching)、课余教学(After-class Teaching)等多个方面进行探索和实践,提出了TDPA实践能力培养模式,取得了良好成效。

二、TDPA实践能力培养模式

我们希望学生通过实践能力培养达到以下能力:具备解决工程实际问题所必须具备的核心能力要求;获取解决工程实际问题所需要辅助性知识和能力要求;适应新的工程环境所具备的时代素质要求。为了实现这些目标,实践教学环节设置应以培养学生实践能力为主。可以采取以下TDPA模式。

(一)调整培养方案和课程设置

修改培养方案和课程设置,构建科学实践体系。专业课程的设置和专业课程的教学是学生技能获得的重要的环节。专业课程设置若和社会需求脱节,会在很大程度上影响学生的学习兴趣。因此,专业课程的设置应以就业为导向、以专业定位为依据、以培养学生的技能为重点,有的放矢地开设相应课程,根据用人单位的具体需求,对课程进行适当调整,重新安排教学顺序,使学生能够更好地掌握软件工程专业知识及应用技能。教学计划也应根据当前的社会需求及时调整课程配置,增设跟踪当前应用技术与需求适应的课程,拓宽学生专业面,使学生具备更大的适应社会需求的能力。同时注意实践教学与理论教学相结合,在教学内容上突出工程实际,采用案例式教学,将当前软件行业的发展趋势渗透在日常教学中。

(二)改革授课模式

1.让课件成为会说话的老师

很多投影授课反应的效果不是太好,很多都是直接给出结果,学生参与度不高。针对这种情况,我们加大了对于PPT质量的关注,要求做出动态的PPT,动态的过程中包含了程序执行的一些知识点,将晦涩难懂的理论知识,通过动态的演示变得直观、有趣、易懂。而且过一段时间后再去看,也能很容易看懂。部分无法在课内消化的知识,学生也可以课后通过看PPT来继续学习。PPT成了一位会说话的老师,一位可以带回家的老师。

2.将大型案例驱动的程序设计化整为零

传统授课模式往往在讲每个知识点的时候用的是不同的例子,学生单独的一个知识点可以搞懂,但是对于合起来可以解决什么实际问题却感到很困惑。往往导致一个现象——考试考得很好,但是解决问题的能力却很弱,无法完成小型的真实项目开发。针对这种情况,我们更加关注教学案例的设计,将一个小型的真实系统拆解成多个部分,并针对每周的教学内容,有针对性的授课,学生学一个知识点,就可以完成该系统的一个功能,边学边开发系统,课程上完,系统原型也开发出来了。通过这种方式,学生易于将前后所学知识融会贯通,大幅提高了学生的学习兴趣和学习的效率,获取了软件开发实践的初步经验。

3.提高授课频率

以往的课程安排比较分散,往往是一个星期上一次编程课,每周3个课时左右。上课时学生往往忘记了前一次课的内容,一问三不知,学习效果大打折扣。针对这种情况,我们提高了授课的频率,加大了每周的课时,隔2—3天就可以上一次课程内容。这样在学生还未遗忘的时候,再次帮助他巩固相关的知识点,改善了教学效果。

4.将机房作为授课的主阵地

很多编程类的课,都有配套的实验课程,对于实验课程,我们精选了比较典型的案例,采用机房授课,教师现场演示,学生一边学习一边实践,碰到问题可以立即反馈,提高了学生与教师之间互动性。

(三)加强实践教学

实践教学是培养学生操作能力和应用能力的重要手段。我们必须加强学生分析问题、解决问题的实际能力,以求尽快适应工作需要。

1.课程实验、开放实验、毕业设计全方位强化实践教学

课程实验是学生对课堂所学知识的一次应用,有助于学生深刻理解和掌握所学知识,从中获得了学习的成就感。同时,我们也将部分课程从课内分离出来,形成开放实验,供同学们选修,提高实践教学在整个专业教学中的比重。我们也将现实中一些比较新颖的应用需求,进行抽象凝练成毕业设计的选题,供毕业班学生选择。这些选题往往是对学生大学所学专业知识的一次大演练。我们鼓励学生利用假期或者学校指定的时间深入对口的企事业单位,结合实际工作开展毕业设计。

毕业设计环节是检验学生四年学习成果的一个重要环节,要求学生在相关实践环节中收集资料,并结合以后工作岗位,可以在实习单位完成,尽量争取做到真题真做,从中培养发现问题和解决问题的能力。

2.加强校企交流合作

建立专业与企业之间合作互助关系,加强实践基地建设。充分发挥企业的行业优势,合作培养软件人才。我们与多家企业有合作,聘请企业的专业技术骨干承担部分课程内容的教学和讲座,将企业实际项目引入到教学中,结合理论课程内容,进行生动的讲解。与企业共建实习基地,定期组织学生去企业参观学习,使得学生能够学习到很多课本上学不到的知识,使学生能够把所学的知识与生产实践相结合,提高学生的分析与设计能力,提前获得一些工作经验,为其今后毕业就业增加筹码。

3.学生竞赛与科研项目

学生分析问题解决问题的能力需要我们不断地去提升。作为对课内教学的补充,学生的各种竞赛与科研项目在培养人才实践能力中起到积极作用,是对正规培养方案中实践教学环节的有力补充。在竞赛和科研活动中,很多学生充分体现了自主意识,并且积累了宝贵的实践经验,提高了动手能力,激发了浓厚的科研兴趣,增进了团队协作精神。

(四)兼顾课余教学

1.分年级教学

目前的大学生大多都是独生子女,学习的主动性和自律性较差。特别是随着各种网络游戏的盛行,更是影响了学生的学业,学生自律有待提高。从学生QQ群聊天信息中,可以得知好多学生都是组队去玩网络游戏,痴迷程度可见一斑。造成这种局面的因素之一是大学过于自由、开放和宽松。为此,软件专业对大一新生采取了一定的管制措施,约束他们的作息,要求他们在固定的教室早、晚自习,并为每个班级配置了班主任和班助(研究生担任),由班助协助班主任管理日常班级工作。班助每天都会陪同班级进行早、晚自习,并进行相应的管理,并对学生在学习中碰到的问题进行辅导。

对于高年级的学生,为了更好地帮助他们就业,增强实践能力,我们举办了多种类型的程序设计大赛,这是对学生本科四年中学习成果的一次大检阅,学生利用专业理论知识,通过自行设计、制作,实现理论到实践的转变。为高年级学生的就业打好预热之战。

2.多种沟通渠道

学生与老师沟通的问题,是课堂教学的老大难问题。我们做过一次调查,发现很多学生在上课的时候即使碰到了不懂的地方也不敢问老师,究其原因主要是“面子问题”。怕自己说的不对,同学嘲笑。其他一些学生敢问,但是下课后往往觉得找老师问不方便,最后就不了了之了。问题越堆越多。到最后越来越不懂。为此,我们任课老师专门为授课班单独申请了邮箱、QQ群,老师们也公开了自己的微博、skype、手机等,学生碰到问题可以通过多种方式跟老师互动。教师也可以通过这些通信工具向学生布置作业、学习资料及各类通知。

3.“寝室之友”活动

现在的就业压力比较大,很多学生进入大学后一直都感觉比较茫然。应该学点什么?怎么学?找份什么工作?甚至到了大四还不得其解。为此,软件系开展了“寝室之友”活动。以寝室为单位,为软件系的每个学生寝室分配了一个老师,从入学开始,就给予连续的指导,解决学生学习、生活中的困惑。同时,老师还负责带领学生开发一些小的软件,参与一些竞赛。这部分学生取得了较优秀的设计和科研成果,成效明显。

4.分组式学习

课堂的教学往往不能满足学生的需求,学生碰到问题后,通过联系老师来解答往往也存在一定的滞后性。为此,我们以班级为单位,在班内成立了学习互助小组,好学生带暂时落后的学生,以小组合作的方式共同提高大家的编程能力。

5.卓越人才计划项目

为了切实提高软件工程专业学生实践能力及创新能力,更好地实现教学与科研的深入融合,充分发挥科研对学生能力培养及学生科技的主导作用,软件工程系开展了“软件工程卓越人才培养计划”。该培养体系旨在针对大一到大四学生开展课程以外的实践能力培养,培养内容包括专业技术专项培训、模拟项目实训、工程或科研项目实战三个阶段。采用“点、线、面、体”结合模式。所谓“点”即在实验室常驻的学生,“线”即在一个课题或项目中不同年制学生构成的课题组,“面”即由进驻实验室的“点”学生通过创新课题、软件工程实践课程等相关实践项目所带动的班级其他同学;“体”即包含软件工程专业绝大部分学生所构成的“实践工程立方体”。学生实践能力培养将遵循从易到难、由浅入深的原则,在锻炼实践动手能力的同时,充分发掘和培养学生的自主学习能力和团队合作能力。

“点、线、面、体”模式卓越人才培养充分利用有限的资源,构建相关体系和平台,开展长期有效的学生实践创新能力培养。自2010年实施该计划以来,在每一年级80%以上的同学报名参加,从中选拔8—10人左右进入实验室,由专业指导教师带领常规性地开展实践项目工作;不在实验室的同学则由在实验室的同学带动并形成相应的group来学习实践。

活动开展以来,学生的实践动手能力有较为明显的提高。很多同学获得了省级、国家级学生竞赛大奖。2012届毕业生毕业设计,软件工程专业学生获得优秀的人数接近学院优秀人数的40%(学院公办6个专业)。

三、总 结

经过两年多的努力,本专业教师逐渐形成了一套适应软件工程专业学生发展的软件工程实践能力人才培养模式,取得了一定的阶段性成果。学生参加各种竞赛和科研工作的积极性得到极大提高,获奖人数大幅增加。通过对实践能力培养模式探讨,我们提出完善培养方案和教学大纲、加强实践教学基地的建设、加强师资力量等措施。我们相信这一新模式能进一步提高学生工程实践能力,满足卓越人才实践能力培养要求,为社会提供有用的软件工程技术人才。

参考文献

[1]韩中元,雷国华,李军.应用型本科软件工程人才培养模式的探索与实践[J].计算机教育,2010(10):26—29.

【注释】

[1]浙江工商大学2012年度校高等教育科学研究课题,编号xgy12054。

[2]潘伟丰,讲师,博士,研究方向为软件工程、复杂网络和智能计算。

[3]姜波,软件系主任,教授,研究方向为服务计算。

[4]谢波,软件系副主任,副教授,研究方向为情感计算。

[5]王家乐,副教授,研究方向为信息检索。

[6]潘云,硕士,研究方向为软件工程教学理论与方法。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈