基于协同创新的软件实践能力培养体系探索与应用

2017-04-12 02:02王春梅王曙燕王小银舒新峰
计算机教育 2017年3期
关键词:软件教材能力

王春梅,王曙燕,王小银,舒新峰

(西安邮电大学 计算机学院,陕西 西安 710121)

基于协同创新的软件实践能力培养体系探索与应用

王春梅,王曙燕,王小银,舒新峰

(西安邮电大学 计算机学院,陕西 西安 710121)

针对目前学生软件实践能力弱、创新意识不足等问题,围绕课内外教学、精品教学资源、创新创业等关键教学环节,提出协同创新和多位一体的软件实践能力培养体系,以实现学生高质量就业。

协同创新;多位一体;一体多翼;多方协同;共赢

0 引 言

软件技术发展迅猛,知识更新快,对人才在实践能力和创新能力方面的要求非常高。要达到这些高要求,在软件人才培养中,就不可避免地要面临“实践能力培养难、创新意识提高慢”等问题[1],这就需要结合本校的办学定位和学科特点,立足“实基础、重实践、强能力、突特色、求创新”的教育理念,对传统的软件人才培养模式进行反思,“千方百计”地寻找开展具有软件行业特色的高素质工程应用型人才培养的有效途径[2],积极围绕课内外教学、精品教学资源、创新创业等关键教学环节进行全方位探索。

1 培养模式

教师应以提升学生的软件创新实践能力为培养目标,在精品教学资源的有力支撑下,积极尝试多元化的教学手段与教学方法,配以教学过程的实时监控和多种形式的考核方式;在夯实课内理论和加强实践教学的基础上,补充各种科技活动的课外教学,构建螺旋式上升和全面辐射的人才培养模式,如图1所示。通过自我调整、自我更新、自我发展和吐故纳新的动态更新机制,形成开放的、动态的,而不是封闭的、僵硬的课程体系[3],才能保证在技术发展、国际视野和社会需求3方面的开放性。

软件开发能力的培养应从提高学生的系统认识和分析能力、软件设计与应用能力、软件问题解决能力以及知识与技术创新能力为目标[4]。鉴于此,我们从理论与实践两条主线螺旋上升共同展开。

1)理论教学。

第1层:程序设计基础。首先,扎实语言功底。语言课进实验室,让学生现场编写和调试代码,加深对代码的熟悉度;模仿、改写和编写的思路可以加快代码的编写速度;各种平台提供的大量测试题目可加大代码的编写量。其次,贯穿算法精髓。算法是关于解决问题的方法,也是计算思维的重要内容体现。通过算法类课程从计算思维的角度出发,重组经典案例,将编程语言基本知识融入案例的开发中,更多注重软件分析和设计方法的讲解,让学生在学习的过程中放弃过多追求语言知识本身系统化和细节化的做法,培养学生分析问题、解决问题以及综合思维的能力。

第2层:软件设计系列模块。该模块课程的学习是计算思维教学的进一步提高,它的目的是培养学生利用计算机技术解决本专业中问题的能力,也是学生软件设计能力的重要体现。在编译原理课程中介绍的词法分析、语法分析、属性文法以及优化等内容都是首先进行抽象化,通过发现不同分析方法的规律,然后进行数学建模,直至最后自动分析。自动生成工具LEX和YACC的设计就是自动化的典范,在形式语言与自动机理论的前提下产生高效的词法、语法自动产生器。操作系统课程从软件工程的角度进行分析,重点讲述操作系统在解决计算机软硬件资源管理、提高系统处理能力及方便用户使用时采用的策略与方法。将这些课程的教学与计算思维培养结合起来后,一方面可以从计算思维的角度重新审视和组织课堂教学;另一方面可以加强对计算思维能力的培养,使学生能够更好地应用计算思维解决问题[5],更重要的是在这样一个完备的软件系统学习过程中,学生能够对大型软件的设计有更加直观深刻的认识,从而提升软件设计的能力。

图1 人才培养模式

第3层:软件开发应用模块。该模块可以培养学生软件开发以及应用的能力,也是学生软件创新实践能力的重要体现。我们通过Web 应用开发、软件测试、云计算以及大数据处理这些前沿课程的学习,结合案例式教学,以项目为驱动,在做中学,按照企业级的真实项目和真实环境的双真要求,让学生充分认识并了解最新技术的发展与方向,同时结合一定应用将这些新知识用于开发与创新设计。

2)实践教学。

第1阶段:初级实践阶段。该阶段通过基本工具、环境的使用以及理论课程配套的课内实验,对主要参考教材及讲义上的例题、案例进行模仿及扩写,培养学生的基础实践能力。

第2阶段:中级实践阶段。该阶段通过校内的课程设计环节以及一些小型实习单元,利用1~2个规模适中的小项目,让学生独立完成系统的分析、设计和开发,并撰写相关文档。学生在完成项目的过程中,通过互联网、图书馆等查阅相关资料,综合运用所学知识,提高软件分析和设计能力;同时,提高信息检索和自学能力,为今后的终身学习打下坚实的基础,进而培养应用实践能力。

第3阶段:综合实践阶段。该阶段通过各种形式的兴趣小组、科技协会活动以及不同级别的学生竞赛,培养学生的设计开发实践能力。

第4阶段:创新训练阶段。在大学生软件创新创业孵化基地的有力保障下,该阶段通过让学生参加教师科研项目以及一些高级别的学生大赛,训练学生的创新意识与创新能力。

第5阶段:创新应用阶段。该阶段通过毕业设计、科研训练、初创企业等内容培养学生的创新应用实践能力。

总之,实践环节按照这种阶梯式逐级上升,依据软件人才培养规律对学生进行系统训练;整个过程遵循认知规律,分阶段循序渐进培养学生的能力与素质,最终达到理论与实践的有机统一、互相促进和协调发展[6]。

2 培养过程

2.1 构建突出计算思维的层次化阶梯式课内教学体系

1)积极探索新型教学模式,构建各具特色的高效课堂。

将计算思维的能力培养贯穿于整个教学过程中,以课堂教学为主战场,积极尝试反转课堂、MOOC、微视频、研讨等新兴教学方式,初步形成“和谐高效课堂”。例如,大学计算机基础、Java程序设计等课程采用MOOC及反转课堂的教学形式,可以使学生不受时间、地点的限制进行学习和讨论,取得良好效果。其中,高级语言程序设计课程获得2015全国高校微课比赛三等奖;数据结构与算法课程获批2015年西安邮电大学重点微课程建设,申报了2016年陕西省MOOC课程建设项目,录制的微视频在陕西省重点教改项目“高等学校继续教育数字化教学资源共享机制研究”中供校际之间共享使用。

2)强化教学过程的实时监控与考核。

强化全过程监控,如图2所示,通过Openjudge、睿亚训等平台有效监控学生平时的学习情况;对程序设计类课程进行机考;采用一页开卷的考试形式等。我们总结了一系列行之有效的经验,通过制度化,有效提升了学生的学习能力。

2.2 建立兴趣驱动、项目引领和分层推进的课外实践方式

课内课外多方式协同,训练学生按工程化的方法进行软件开发,规范开发过程。教师可以学科竞赛为载体,依托科技协会、兴趣小组等开展大量、持续的以项目为基础的实践活动,使学生及早发现自己的特长,以赛促学,以赛促改,培养学生的软件实践及创新能力,如图3所示。

2.3 构筑多层平台,培育精品资源,创新协同机制

1)构建立体化、全方位的精品教学资源。

教师应探索信息化云平台下的创新教学模

图2 实时监控的教学过程

图3 课外实践方式

式,实现在线学习及信息互动,为渐进性阶梯式实践教学体系实施提供支撑;依托多门省级精品资源共享课程及省教改项目,面向全国计算机类教师和学生开放,使受益面积最大化。

2)进行多层次、系统性的教材建设。

近年来,我们编写出版凸显学科专业特色及优势的教材20余部。教材被广泛使用且多部教材获奖,形成了建设“知识模块化、需求层次化和目标多元化”的系列化教材理念,打破了教材建设滞后教学需求的局面。

2.4 依托IT实训中心及软件创新创业试验区,多方协同,实现共赢

我们以西邮IT实训中心及省级软件工程创新创业实验区为平台,与多家企业建立校企合作关系;在校内外导师指引下,采用自主学习和自由开放的实验室管理新模式。2009年,在中省共建项目的支持下,建立“手机软件开发梦工厂”;2014年,举办首届软件“创新创业”创意大赛,有400余名学生参与,激发了学生的创新创业热情;近3年共有4项获批国家级大学生创新创业训练计划项目,20余项获批省级项目;与多家企业签订定制班,导师引入企业真实项目案例,培养学生的软件创新与开发能力;建立多方协同创新创业教育新模式,解决学生就业、创业问题及用人单位人才需求难题,形成学生、教师、学校和用人单位多方共赢的良性循环生态链。

3 培养效果

1)教学改革成效显著。

我们已在高校教学研讨中多次进行经验交流,得到多所学校的认可,提出的人才培养模式也被广泛采纳,获批陕西省教改项目8项,如软件工程专业综合改革、软件工程精品资源共享课程等,成果总结发表相关教学改革论文10余篇。

2)系列规划教材被兄弟院校采用。

我们编写出版教材20余部,科学出版社出版的《C语言程序设计》已经累计2版,印刷16次,印数共41 000册,被20多所学校采用,受到师生的一致好评。《C语言程序设计》(第二版)获中国科学院教材建设专家委员会信息技术类优秀教材(部级)一等奖,《C语言程序设计教程》获陕西省计算机学会教学成果特等奖,《数据结构与算法》获陕西省计算机学会教学成果一等奖,《Linux操作系统与应用》获陕西省优秀教材二等奖。多部教材被确立为十二五规划教材,在人才培养中发挥重要作用。

3)学生学科竞赛创新能力显著提升。

我们通过营造创新氛围,推动学生创新实践,连续5年获奖综合指标显著提升,近5年获国家及省部级奖361人次,校级奖663人次,如全国大学生电子设计大赛全国赛区一等奖、ACM ICPC西安邀请赛一等奖、蓝桥杯全国软件专业人才设计与创业大赛二等奖、微软创新杯陕西赛区二等奖等。

4)人才培养成效显著,学生竞争优势明显。

我们已在计算机学院计算机科学与技术、软件工程、网络工程3个专业两届学生中进行试点,全面实施培养模式,全方位提升学生的综合实践应用能力。学生编程代码量由人均0.9万行增加到1.85万行。据麦可思2013年统计,学生“毕业时工作能力”“就业竞争力”“月收入”列全校第一位,创新能力提升显著。成果实施中注重与名企名校深度互动融合,形成开放式师资队伍,强化校企实践基地,打造项目开发真实环境,使得学生实践能力极大提升[7]。大部分毕业生进入阿里巴巴、腾讯、百度、华为等著名IT企业工作,工作能力得到广泛认可。

4 结 语

针对软件实践与创新能力,经过关键教学环节的全方位探索,我们提出协同创新和多位一体的软件实践能力培养体系,使得学生的程序设计及软件开发实践能力显著提高,实现了学生的高质量就业并引起兄弟院校的广泛关注与借鉴。我们将继续积极探索与实践软件人才培养的方法与途径[8],进而更加有效地提升软件人才的实践与创新能力。

[1] 应祥岳, 王晓东, 陈芬, 等. 以协同创新思想为指导的电子信息类人才培养[J]. 计算机教育, 2015(2): 5-7.

[2] 陈志泊, 张海燕, 王春玲, 等. 以程序设计与软件开发能力为主的计算机专业应用型人才培养模式的研究与实践[J]. 计算机教育, 2015(7): 94-98.

[3] 俞鹤伟, 牟艳华. 创新型计算机人才培养模式的探索与实践[J]. 计算机工程与科学, 2014(增刊2): 1-5.

[4] 余平, 刘军, 杨有, 等. 软件工程创新型人才培养模式研究[J]. 高等建筑教育, 2013(5): 31-33.

[5] 陈杰华. 程序设计课程中强化计算思维训练的实践探索[J]. 计算机教育, 2009(20): 84-85.

[6] 陈冀东, 范新灿. 软件行业人才培养现状与职业发展策略[J]. 中国高校科技, 2014(11): 19-21.

[7] 王甲海, 印鉴. 人工智能教学与计算思维培养[J]. 计算机教育, 2010(19): 68-70.

[8] 檀明, 张向东, 许强, 等. 以能力为导向的软件工程专业应用型人才培养[J]. 计算机教育, 2010(21): 52-54.

(编辑:宋文婷)

1672-5913(2017)03-0053-04

G642

西安邮电大学教改项目“软件系列课程计算思维能力教学模式的探索与实践”(105-1324)。

王春梅,女,讲师,研究方向为软件测试、数据挖掘和智能信息处理,wangcm0225@126.com。

猜你喜欢
软件教材能力
消防安全四个能力
教材精读
教材精读
禅宗软件
教材精读
教材精读
软件对对碰
大兴学习之风 提升履职能力
你的换位思考能力如何
即时通讯软件WhatsApp