依托工作室的软件工程实践教学研究

2016-11-14 01:25罗来俊晏峰
电脑知识与技术 2016年24期
关键词:工作室项目驱动软件工程

罗来俊 晏峰

摘要:为使软件工程专业的毕业生能较好适应软件企业需求,提升本专业学生的综合能力势在必行。近年来我校在软件工程专业中引入依托工作室的实践教学形式,取得了良好的教学效果,毕业生的就业率明显提升。该文从工作室的定位、教学项目的选择以及工作室的运作等方面进行了较为详细的阐述,对依托工作室的实践教学进行了有益的探索。

关键词:工作室;实践教学;软件工程;项目驱动

中图分类号:G642 文献标识码:A 文章编号:1009-3044(2016)24-0140-02

Abstract: In order to train graduates to meet the needs of the software industry, it is imperative to enhance the all-round ability of students in software engineering. In recent years, our school has adopted the practice teaching mode based on the studio in the software engineering major, and has achieved good teaching effect. The employment of graduates has been greatly improved. This paper makes a detailed description of the location of the studio, the choice of the training program and the operation of the studio. A useful attempt had made for the practical teaching method based on the teacher studio.

Key words: studio; practice teaching; software engineering; project driven

软件工程专业是一个实践性很强的专业,实践教学在整个教学过程中具有突出地位,各高校对该专业的实践教学都十分重视。然而多方面的信息显示,当前实践教学的效果不甚理想,软件工程专业毕业生的实践动手能力普遍较弱,通常需要较长的时间才能融入企业的研发工作,导致软件企业人才难觅,而毕业生又难以顺利就业。实践教学效果不理想的主要原因体现在以下几个方面:①教学内容相对简单,以课程知识点的验证为主,与软件企业的需求存在较大差距;②教学内容较为松散,各学期间的教学内容没有良好衔接,各任课教师的教学内容相对孤立,不能围绕某方面的软件研发能力持续深入地训练;③教学环境与企业实际环境存在较大差距,教学中的训练任务通常是面向单个学生设置的,难以培养学生的沟通能力及团队协作能力。

针对上述问题,有必要对软件工程专业的实践教学进行相应的改革与创新。通过实践教学有效地培养学生的项目实践及团队协作等方面的能力,使本专业毕业生具有良好的工程实践能力,并能快速融入软件企业的研发工作。本文将阐述依托工作室开展实践教学的过程。

1 工作室概要

工作室教学模式起源于德国包豪斯设计学院,最初是设计教育领域的一种教学模式,后来延伸到许多学科的实践教学当中,并取得了良好的效果。工作室是为了共同目标、理想或愿望等建立的由若干成员构成的协作集体。工作室的规模通常不太大,成员之间的地位相对平等,每个成员都承担相应的工作任务,并共同讨论决定工作室的事务。从工作室的属性来看,依托工作室的实践教学有利于培养学生独立思考、实践动手及团队协作等能力。

我校软件工程专业的工作室不仅具备普通工作室的基本属性,还依据高校及软件工程专业的特点进行了一些调整与创新。首先每个工作室都有明确的研发方向和培养目标,比如:JSP软件研发方向、ASP.NET软件研发方向、嵌入式软件研发方向等。其次每个研发方向的工作室通常又分为初级、中级与高级等三个层级的研发小组,研发小组分级设置是为了契合工作室成员来自不同年级以及水平存在差异等情况,分级能让学生的能力与小组实训任务相匹配。另外每个研发小组推选一名学生担任组长,组长通常采用轮流制,每个研发方向的工作室由1-2名专业实践能力强的教师负责。从多年的实践教学中发现,良好的工作室组织架构是工作室有序运作的重要前提。

2 工作室学员的招募及组织

通常工作室的容量是有限的,所以只能以招募的方式定期定量吸收新学员进入工作室。通常是每个学期招募一次新学员,招募的对象以软件学院低年级的学生为主。工作室建立之初由教师挑选新学员,后期则由工作室的高级学员们来挑选新学员,教师只起监督作用。这样做的目的是为了培养学生对于新学员素质的把握能力,这对于其走向工作岗位组建研发团队是有帮助的。我们规定选择新学员的高级学员将自动成为被选择的新学员的“导师”,导师要定向承担其所选择的新学员的技术指导工作,因此每位学员在选择新学员的时候都十分认真,与此同时工作室中学生之间 “传、帮、带”的共同进步机制也就自然建立起来。通常每个研发方向的工作室每次招募20人左右的新学员,进入工作室后新学员还将进一步分配到具体的研发小组当中,一般每个研发小组6人左右。新学员大都进入新组建的初级研发小组之中,水平较高的个别学员则加入到与其能力相称的更高级别的研发小组中。在项目实训过程中同一个级别的研发小组间可以横向地比拼与促进,同时高层级的研发小组又能纵向指导相应的低层级的研发小组。从目前的实际情况来看,上述学员的招募与组织模式十分有利于学员们的共同成长,并在教学过程中收到了良好的效果。

3 工作室实训项目的设置

实训项目是学生实践学习的主要对象,是学生能力成长的重要载体。因此 工作室的指导教师应该认真研究并完成实训项目的精心设计。首先实训项目应该分级,因为工作室中的成员由不同年级的学生构成,专业水平通常有差异,因此有必要依据学生的能力水平来设置实训项目。通常工作室的成员分为初级、中级与高级等三个层级的研发小组,所以实训项目也应该相应地分为初级、中级及高级等难度的项目库。实训中应该让项目与学生的能力相匹配,经过多年的实践教学发现,如果不加区分地让所有学生都做类似的项目,则基础薄弱的学生很难参与到超出其能力范围的项目研发中,这样不仅不能通过实训过程提升其能力,相反还会影响这部分学生对专业学习的自信心。

实践教学不仅要关注项目难度与学生能力的匹配,而且要注意从初级到高级项目的关联性与难度递进的把握,项目的设置必须符合学生的能力培养目标及实践教学规律。前期的实训项目是后期实训的基础,后期的实训项目是前期项目的进一步发展,以此类推,经过长期的、指向一致的若干阶段项目实践训练,学生的实践动手能力将普遍得到较大幅度的提升。比如,要培养学生的JSP程序开发能力,工作室可以考虑选择比较有代表性的进销存信息管理软件为项目背景,对于初级学员可以考虑用C语言开发一个模拟的进销存信息管理软件,该过程不仅要让学生学会C语言的编程技术,还要让学生掌握基本的进销存业务流程;对于中级水平的学生可以让其利用JAVA等语言结合SQL数据库开发在功能上有所提升的进销存管理软件;对于高级水平的学生则可以让其利用JSP结合ORACLE开发功能相对完善、基本满足现实需求的进销存管理软件。我们发现在学生对典型的项目有了开发经验之后,他们的能力及自信将得到很大的提升,进而可以较容易地引导学生开发其他领域的实训项目。

4 工作室实践教学的实施

工作室实践教学主要依托软件项目开展,学生的能力成长也是在完成一个个项目的过程中逐步实现的,因此我们对于每个项目的完成都有较为规范的执行路线与流程。通常我们将项目的实施过程分为项目执行计划的制订、项目的实施以及项目的评价等几个方面。

优秀的项目执行计划是保证项目科学高效完成的重要前提,通常包含需求分析、模块分解以及任务分工等几个方面。每个研发小组都要在项目的实施前提交一份操作性较强的项目执行计划书。在项目执行计划书的形成过程中应该充分发挥每个小组成员的作用,计划书必须是经过大家集体讨论并完善后的成果,项目计划书的最后定稿由该小组的项目负责人来完成。研发小组采用按项目轮流选择负责人的制度,这样就能让每个小组成员的组织协调能力都得到锻炼。为了避免初级项目研发小组的执行计划书出现方向性的错误,项目计划书最后都要交由更高一级的项目研发小组成员或教师进行审定。

项目的实施过程就是依据项目计划书将项目需求变成具体软件的过程,每个小组成员都有自己要独立承担的程序开发任务。在项目的实施过程中学生将遇到不少技术上的问题,此时就可以利用前期有利的学员组织架构来解决。首先每个研发小组要定期相互交流讨论,讨论内容包括每个小组成员及时告知自己的研发进度、讨论各成员在项目实施过程中遇到的问题及解决方法;对于小组内部无法解决的问题,则可以纵向寻求各自的“学生导师”和相应的高级别的研发小组或教师的帮助。总体而言该过程应充分锻炼学生分析思考并解决问题的能力以及沟通协作能力。教师主要从事过程监控及少量的技术指导工作。项目实践过程的主要环节如下图所示。

5 工作室实训教学的评价

在各小组完成实训任务之后,将对各小组及个人进行综合评价,该过程由进行相同研发任务的若干小组的所有成员、评委(通常由若干个更高级别的研发小组成员担任)及教师共同完成。评价过程不仅是一个成绩量化的过程,同时也是学员能力进一步提升的重要过程,因为在评价过程中学员将能学到别的团队及个人的优点并能发现自己团队及个人的不足。通过评价,每个学生的每一次实训成绩都将量化为一个分数,学员的期末成绩是每一次成绩的总和,总成绩是学员晋级或者淘汰的主要依据。合理的评价指标是对学员进行科学评价的重要依据,也是督促学生在后继的实训中认真工作的标尺,因此我们在制定评价指标中会综合考虑各种因素。每个研发小组的每一次实训评价分为团队评价和个人评价两部分,团队评价成绩主要由软件的质量、完成的时间及团队工作状态等构成,而个人评价成绩则由其团队分数、个人任务的完成质量以及被其指导的低层级的学员的成绩(初级学员没有这一项)等构成。

评价过程中首先由组长对本组软件研发的情况进行概述,然后由各成员小组对自己的任务完成情况进行限时阐述,最后由评委们依据各项指标打出团队及个人分数。因为评价过程是学员学习总结以及成绩量化的重要过程,所以该过程得到了我们的足够重视。实践证明上述评价过程在我们的实践教学中收到了良好的效果。

6 结束语

工作室作为实践教学的一个平台,为学生的实践动手能力、分析思辨能力、专业创新能力及团队协作等能力的培养起到了积极作用。本文以我校软件工程专业的教师工作室的实例为背景,从工作室的人才培养定位、项目的选择及工作室的运作等方面进行了全面的阐述。实践证明,经过工作室培养的学生的实践动手能力得到了明显提升,就业率与就业质量明显提高,目前许多工作室的学员已经成为了软件企业的骨干。当然依托工作室的实践教学作为一种相对新颖的实践教学方式,还有许多问题值得我们持续研究与探索。

参考文献:

[1] 蒋新革, 牛东育. 教师工作室教学模式及管理体制创新的探索[J]. 教育与职业, 2014(9): 43-44.

[2] 聂方彦, 屠添翼. 工作室制下的计算机专业学生实践能力培养探索[J]. 大众科技, 2013(7): 149-150.

[3] 郑剑. “工作室制”计算机软件人才培养模式研究与实践[J]. 教育教学论坛, 2012(10B):173-175.

[4] 董跃华, 杨书新, 李淑芝. 软件工程专业多元化实践教学体系研究[J]. 江西理工大学学报, 2009, 30(3): 53-55.

[5] 彭晏飞, 崔彩峰. 计算机软件系列课程教学方式研究[J]. 计算机教育, 2010(8):104-107.

猜你喜欢
工作室项目驱动软件工程
基于“红色之旅”项目驱动的《调酒与咖啡》工作室制人才培养机制探讨
融合APTECH体系的软件产业人才培养探究
地方本科院校设计类专业“工作室”教学模式探究
关于如何创新和完善计算机软件工程管理的探讨