APP下载

基于计算机大赛的大学生创新实践能力培养方法探索

2018-12-28卢照王琦

现代计算机 2018年34期
关键词:赛题计算机专业协作

卢照,王琦

(运城学院数学与信息技术学院,运城044205)

1 计算机专业大学生现状分析

目前,各高校计算机专业学生相对较多,报考的学生较多。但目前在校的大学生主要存在以下几点问题。

(1)学习目标不明确,方向比较迷茫。

近几年来,计算机专业大学生就业相对较好,收入较高,随之越来越多的大学生报考计算机专业,相应各高校也在不断的扩招。学生进入大学之后,随着对专业的不断深入学习和了解,才慢慢明白计算机专业的学习内涵,部分学生觉得自己选错了专业,对计算机枯燥的学习失去了信心,丢失了学习的方向。

(2)学习兴趣不浓厚,得过且过。

目前,高校一部分计算机专业的大学生对本专业学习兴趣不浓厚,每天按照学校的管理要求,机械式地上下课,没有真正了解到计算机专业的优势,只要不挂科就好,每天得过且过,荒废了美好的大学时光。

(3)注重理论学习,动手实践能力不足。

计算机专业的特点是理论性和实践性都很强。部分学生注重于理论学习,将课本教材中的内容掌握的比较牢固,忽视了动手能力的练习,常常会出现眼高手低,理论脱离实际的情况[1]。目前各高校为了加强学生实践动手能力的培养,采取了各种措施,例如采取校企合作培养模式、加大课程实验的力度、增加课外项目实践课程等方式提高学生的实践能力。

(4)按部就班,缺乏创新意识。

学生在学习过程中,对知识的掌握和理解不够灵活,只会按照教师讲解的内容去实验,或者按照课本上的介绍去完成项目的要求。由于实际参与的项目有限,思路不够灵活,眼界不够开阔,远远达不到实际项目对人才需求的标准[2]。同时,在传统教学过程当中,以教授知识和技能为主,学生追求高分数,而忽视了灵活应用知识的能力,创新意识淡薄,不注重发挥学生的创新意识。

2 计算机专业人才需求的基本要求

根据当前计算机专业人才培养的基本要求,结合当前实际工作单位对人才的需求情况,计算机专业人才应该具备以下几点要求。

(1)具有较强的实际动手能力。计算机专业是一门实践性很强的专业,要求学生具有足够的动手能力,能够很熟练地掌握基本操作,能够进行实际的软件安装和维护,能够组件和管理网络等基本的动手能力。

(2)具有较强的编程能力和数据应用能力。计算机专业人员都应该具备一定的编程能力,能够将解决问题的思路转为计算机能够识别的程序,控制计算机解决实际的问题。同时,网络的不断发展,随之产生大量的数据信息,计算机专业学生应该具备数据的分析和应用能力。

(3)具有一定的系统设计和开发能力。编程能力是对编程思维的训练,系统设计和开发是要求具有较强的逻辑思维能力,能够站在更高的角度看待问题。要分析当前的问题,设计解决问题的方案,然后完成系统的开发,最后达到对问题的解决。系统设计和开发能力是一种综合能力的体现。

(4)具有较强的学习能力和团队协作意识[3]。目前大学生最为关键的是要具备自我的学习能力,在学校学习的内容与实际工作中可能存在较大的差别,这就要求学生要具备较强的学习能力,能够很快地适应实际的需要,只有这样才能不断满足社会发展的需要。另外,实际工作都是以团队协作进行的,这就要求学生应该具备团队协作的能力,要能够与队员高效地沟通和协调,共同解决现实问题。

3 计算机大赛特点分析

目前从笔者指导学生参加大赛的情况来说,主要分为两种,一种是自主命题,学生自由组队完成自主命题的作品,最后提交作品进行评比;另一种是题目固定,由组委将题目和主要功能需求列出,然后学生组队参赛,在指定的时间内提交作品进行评比。不管哪一种类型的大赛,其主要特点有以下几点,以中国“软件杯”软件设计大赛为例进行说明。

(1)注重实际问题解决能力的培养。

计算机专业本身是一门实践能力很强的专业,各类大赛都以实际应用问题的解决为重要的参考依据。以中国“软件杯”大学生软件设计大赛为例,所有的赛题都是从华三、东软等一些大企业在实际遇到的问题为原型,经过高校骨干教师的评审,最终确定课题内容。参赛学生在分析问题的过程中,能够从实际的问题出发来进行软件的设计与开发,极大地培养了学生解决问题的能力。

(2)注重创新能力的培养。

计算机大赛的关键问题是学生创新意识和创新能力的培养,针对相同的问题,不同的团队会有不同的解决方法,这些解决方法的提出,实际上就是一个创新思路的形成,能够打破传统的思路,寻找一种更加合理高效的方法。从而进一步开阔学生的眼界,激发学生创新思维能力的培养。

(3)注重团队协作能力的培养。

计算机大赛一般都有人员人数的限制,需要学生组队报名。各个队员有各自的分工,通过团队协作,共同完成一件软件作品。在实际的开发过程中,各队员之间要能够密切配合,相互讨论共同完成作品,从而进一步培养学生的团队协作意识。

(4)注重前沿技术的学习和掌握

大赛的题目都是面对当前的实际问题,结合最前沿的技术和主流技术的发展趋势,对软件进行设计和开发,学生在实际参赛过程中,会通过各种手段去学习最新最前沿的技术方法,对问题进行解决,从而进一步提升了学生学习新技术的能力[4]。

(5)注重学生思维能力的培养。

计算机专业学生要求具有严谨的逻辑思维能力,在分析问题的过程中,每个过程都要求考虑周全,不能有任何逻辑上的漏洞。同样,在问题编程过程中,思维能力一定要有灵活性和敏捷性,只有这样才能在实际应用中很快适应问题环境,对存在的问题进行正确的判断和预计[5]。在计算机大赛中,针对要解决的问题,都需要学生自主构思,对问题进行严格分析,从而进一步锤炼了学生的逻辑思维能力,为今后学习工作打下坚实基础。

4 大赛主要实施过程

全国各类大赛的组织和实施方式略有不同,以下以“中国软件杯”大学生软件设计大赛为例进行说明。

4.1 赛题分析

大赛题目主要分为研究生本科类题目和高职类题目,都是经过多轮评估和审核后确定下来的。学生选定赛题后,首选查找大量的相关资料,包括硕博论文和期刊论文,一些较新的技术国内资料比较少,就需要从国外网站上进行搜索。在资料查询过程中,要仔细学习相关知识,同时对资料进行必要的归类,一些资料可以直接参考,一些资料作为基础学习等需要分类保持。在资料查询过程中,学习了一定知识后,回过来在对赛题进行二次分析,第二次分析中就能够基本抓住赛题的核心问题和难点在什么地方,从整体上对问题进行把控,此过程一般需要指导老师参与,协助学生一起完成。

4.2 作品设计

在作品设计阶段,需要紧紧围绕赛题的基本要求,对各个模块的功能进行设计。首先要确定系统应该具备的功能模块,各功能模块应该围绕题干,重点突出需要完成的功能要求。其次,要进一步设计各个功能模块应采用什么方法去做,采用哪些算法来解决问题,此阶段分析的越细,开发阶段越轻松。在作品设计阶段,各组的学生可以相互交流,相互提出自己的观点,然后大家一起分析讨论,指导老师可以在分析过程中给学生一些必要的指导建议,保证作品设计的方向符合作品的要求。

4.3 作品开发

经过设计阶段基本确定作品具体功能模块,在开发阶段,需要对小组队员进行详细分工,每个学生根据自己的特点,分配相应的功能模块进行开发。在开发过程中,要求组员之间一定要加强沟通和交流,确保各个模块之间接口的统一性。往往在开发过程中,会发现作品的一些地方不够完善,这时会增加一些新的功能,使得作品更加完善合理。

4.4 作品资料提交

作品在设计和开发过程中,各个组员要保留好每一步相关的文档资料。在提交阶段,需要从整个作品的角度对文档进行组织,此时可以将之前的文档利用起来,要完成作品的测试文档。大赛一般还要提供作品的演示视频,在录制视频时,要边演示边讲解,尽可能让评委全方位地了解作品的真正技术和方法。完成这些后,根据要求将作品源码和文档资料一并上传到指定的服务器。

4.5 决赛答辩

在第一轮评审完成之后,选拔出比较好的作品进入决赛阶段。在决赛答辩过程中,需要学生们演示作品,评委现场提问,注重作品中是否采用新方法,新思路解决了现在的问题,注重于学生的创新方法。在总决赛中,需要以组为单位,需要学生在PPT 上较详细地讲解作品,然后回答专家评委的问题。在决赛答辩过程中,组员之间要密切配合,要展现出团队的默契协作能力,很流利地完成决赛答辩过程。评委会根据作品的完成情况,包括采用的技术手段、实现的方法、系统的架构、采用的算法以及性能效率的优化情况,综合给出相应的成绩,在进行排名颁奖。

5 大赛创新实践意义

从大赛的实施过程可以很明显的看出,大赛不仅为学生提供了一个很好的实践平台,一个展示自我的平台,极大地提高了学生的创新意识、实践能力和团队协作能力[6]。

5.1 大赛提供了创新的条件

在传统教学过程中,都是由教师讲授知识和技能,学生一味地跟着学习,简单的采用期末考试来衡量学生成绩的好坏,这些方式都无法激发学生的创新意识。计算机专业是实践性很强的专业,教师通过讲解和演示,学生最多学会了一些技术方法和简单的应用,根本没有创新的意识。学生通过参加大赛,可以激发他们学习的兴趣和潜能,对知识面进行更加深入的学习,从而引导和激发学生的创新意识,逐渐可以提出自己解决问题的新思路和新方法。

5.2 大赛提供了实践的平台

在高校计算机教学过程中,教师都会筛选一下具有代表性的教学案例,这些案例对学生来说是远远不够的。在大赛中的每个课题都可以是一个实际的案例,同时,每个题目都有配套的运行和开发环境,为参赛队员提供一定的基础平台,学生可以通过前期的学习,慢慢可以动手开发程序都最后能够很熟练的掌握技术。大赛为学生提供了一个具有挑战性的实践机会和平台,在学习中不断前进、不断总结、不断提高自己。

5.3 大赛提供了团队协作的意识

从队员选题开始参加大赛,一直到最后决赛答辩,都可以看出需要队员之间密切的配合,大家一起共同完成。正是这些团队协作的能力是一个软件开发团队不可缺少的关键要素。在选题阶段,各个组员需要共同讨论,决定哪个题目更加合适团队开发;在问题分析阶段,各个组员都要查询大量的相关资料,大家一起学习讨论,共享自己的学习成果;在设计阶段,各组员之间相互沟通,给出各自的建议,共同决定系统改如何设计;在开发阶段,队员各自负责不同的模块,队员之间要反复沟通模块间的接口问题,相互帮助和讨论,共同决定开发的进度;在答辩阶段,各队员之间要紧密配合,有条理的演示和回答评委的提问。从整个过程可以看出,大赛为参赛队员提供了团队协作的条件,培养和训练了队员之间的团队协作能力。

6 建议与展望

笔者组织学生参加了由工业和信息化部、教育部和江苏省人民政府举办的中国“软件杯”大学生软件设计大赛,获得二等奖3 次,三等奖4 次;组织学生参加的由教育部高等学校计算机类专业教学指导委员会组织的中国大学生计算机设计大赛,获得一等奖2 次,二等奖2 次;组织学生参加的华北五省计算机应用大赛,获得一等奖2 次,二等奖5 次,三等奖8 次的成绩。从多年来学生参加大赛的情况来看,对组织参赛的高校和大赛组委会提出以下几点建议。

6.1 长效培养机制的建立

学生通过参加大赛,不但能够提高了创新能力和实践能力,还能够进一步扩大视野,将知识面学习的更广泛。教师可以通过指导大赛,学习一些前言的技术方法,同时可以将大赛的案例融入到课堂教学中,让更多的学生从中获益。为了能够更好地将大赛服务于教学,可以从以下几个方面着手去做。

(1)建立大学生兴趣团队。

在学校可以根据学生的兴趣组件不同的兴趣团队,包括移动开发兴趣团队、Web 开发兴趣团队、UI 前端开发兴趣团队等。从学生的兴趣爱好出发,在团队内部分小组进行讨论和学习学,可以更大限度地发挥学生的学习积极性,相互鼓励,共同进步。

(2)将大赛融入教学环节。

大赛中的一些题目都是经过严格筛选后确定的,每个题目的功能需求都具有一定的考核点,包括了前沿技术和解题方法,在实际教学中,可以将大赛的赛题融入教学当中,建立相应的案例库,让更多的学生可以从中学习到新的技术和新的方法。

(3)建立指导教师团队

目前,大赛的赛题质量越来越高,一些题目需要指导老师给学生相应的指导才能完成。因此,在大赛过程中,需要一些实践能力比较强的教师参加到大赛当中。同样,大赛的题目也需要指导教师认真的思考分析,通过查阅相关资料,经过一定的学习之后才能有思路,指导教师可以相互的交流和相互的学习,共同提高自身的能力。

(4)建立相应的鼓励机制

为了能够保持学生们的学习积极性,进一步激励学生通过参加大赛来提高自己,作为高校的管理层面应该建立相应的鼓励机制。高校鼓励机制的建立,能够保证指导教师团队的稳定发展,确保学生参赛的积极性和学生学习的劲头。

6.2 大赛作品管理

目前,全国各类大赛中提交的作品量会很大,其中经过评比之后有一些优秀的作品,组委会应该适当的将这些作品公布出来,能够让更多的教师和学生从中学习别人的长处,对真身会有更大的提高。同样,应该建立每届大赛的优秀作品集,可以进行存档管理,对于一些创意很强的作品,可以找一些融资公司进行后期的投入,进一步发展潜在的价值。

6.3 进一步优化赛题,难度适中,重点和考点突出

对于给定赛题的大赛来说,赛题的难度要考虑目前大学生在校的学习情况来确定,一些赛题的难度过高,国内的相关技术资料较少,留给学生学习的空间有限,学生需要从国外的网站才能找到一些资料,这类题目应该尽量避免。另外,可以将赛题进行必要的划分,一些动手能力较强的,理论要求不高的题目可以由高职类的学生来完成。一些需要一定理论基础和优化算法较复杂的题目,可以由本科学生完成,这样进一步保障学生学习状况和赛题的匹配性和针对性。

7 结语

计算机类的大赛可以提高学生的动手能力、团队协作能力和创新能力,学生在参赛的每一个环节中,能够将这些能力的培养全部融入其中,在一定程度上,应该有组织地、高效地鼓励学生参加一些有影响的大赛,不仅可以提高了学生的技术能力,还进一步提高了学生的语言表达能力,为今后步入社会打下坚定的基础。

猜你喜欢

赛题计算机专业协作
赛题另解
赛题另解
赛题另解
赛题另解
“以赛促学,以赛促教”促进计算机专业教学理念创新与实践研究
团结协作成功易
协作
协作
职业高中计算机专业教学改革浅析
可与您并肩协作的UR3