王娜,霍英
(韶关学院信息科学与工程学院,广东韶关512005)
“互联网+”时代嵌入式课程教学改革研究与实践*
王娜,霍英
(韶关学院信息科学与工程学院,广东韶关512005)
针对嵌入式领域发展迅速、涉及交叉学科多、课程难度大、人才培养与技术发展同步困难的特点,针对企业对嵌入式人才的需求,结合互联网+时代特点,采用CDIO模式的嵌入式教学改革,分别从教学内容改革、教学方法改革、加强学生学习能力的培养、注重提升教师能力等方面进行探讨,提出相应的具体改革措施,从而提高学生学习的积极性和主动性,培养学习能力、创新能力和实践应用能力。
互联网+;嵌入式;教学改革
近年来,嵌入式系统几乎无所不在的应用领域使其成为一项极具发展潜力的产业,然而人才的匮乏已成为其发展的瓶颈,据权威部门统计,随着嵌入式系统成为当前最热门最有发展前途的IT应用领域之一,嵌入式人才缺口达到了每年80万人左右。出现与十几年前计算机专业的扩张非常相似的嵌入式专业的泛滥和培训的乱象。然而大量高校的嵌入式相关专业的毕业生的就业情况并不乐观,高校中,嵌入式学习的重视程度参差不齐,高校开设的课程体系陈旧,常常与工作中的实际需求脱节。这也导致很多公司不轻易招收缺乏工作经验的应届毕业生,从而使得部分嵌入式方向的毕业生,走向了单方面的C/C++语言、或Linux运维岗位,未能成为理想中的综合型的嵌入式人才。
目前,嵌入式教学的难点是,以MCU和嵌入式处理器为代表的嵌入式技术发展很快,而教师、课件、实验环境很难同步跟进。随着物联网概念的进入,ZigBee、WiFi和蓝牙等无线技术和MEMS传感器技术,原本自成一体的嵌入式系统变成了智能联网系统,因此传统的8051单片机教学和“ARM+Linux”的嵌入式[1]教学亟需改革。同时,随着嵌入式教学内容的不断扩充,教学和实验课时也显得捉襟见肘[2]。尽管各类嵌入式或者物联网大赛能够提升部分学生的素质,但是如何提高一批学生的整体能力是我们教学改革的关键。
CDIO教育理念是构思(Conceive)、设计(Design)、实现(Implement)、运作(Operate)四个英文单词的缩写,它是“做中学”和“基于项目教育和学习”(Project based education and learning)的集中概括和抽象表达[2],是由美国麻省理工学院联合世界著名工科大学从2000年开始研究实施的先进教育模式。它以产品研发到运行的生命周期为载体,让学生以主动的、实践的、课程之间有机联系的方式学习工程的理论、技术与经验。使学生通过基于项目的学习,来感受职场文化环境的熏陶,形成全面的职场能力和素质。这种教学理念与嵌入式教学的目标不谋而合,为适应嵌入式领域快速更新,发展迅速的现状,嵌入式课程教学应结合CDIO的教学理念,培养学生的主动学习能力、实践动手能力。
嵌入式开发的工程师不应仅仅停留在某个应用或某个模块上,而是应尽量全面地学会或把握整个系统,虽然不能做到每个模块的代码都去理解一遍,但基本的流程要懂,基本层次从低到高包括启动、驱动、操作系统、API、中间件、UI、应用等等[3]。
因此,基于CDIO模式的新的课程设计将会更注重培养学生的自学能力、团队协作能力以及系统调控能力。新的课程规划要求学生养成一个习惯,那就是主动找书找资料。这样让学生学会关注科技发展,紧跟时代潮流。为了提高学生的团队协作能力,新的课程计划将会有更多的团队设计,培养学生的实践能力,在实践中体验CDIO(构想—设计—实验—操作)的教育理念。结合嵌入式学习的特点,新的课程计划要围绕着“做项目”的模式展开,按照课程的前后相关性和软件层次从低到高分阶段,分层次系统开设,并且每个阶段要通过阶段项目对知识进行巩固应用,课程最后通过综合项目进行综合应用,让才干在实践中提升。这也将极大地提高学生的系统调控能力。
嵌入式课程实践性强,课程体系建设方面需要根据所依赖的实验平台来组织[4],以某种现成开发板为基础,讲授嵌入式开发相关技术,实验平台选定以当前主流的基于Cortex-A8处理器为核心的GEC-210的开发板为实验平台,重点讲授平台及处理器特征特点、扩展接口板开发技术、操作系统内核精简优化技术、其他系统软件开发优化技术,应用程序开发技术等[5]。
针对嵌入式系统产品研发流程,将嵌入式课程的教学划分为六个阶段,共设计六个阶段项目,配合GEC-210的开发板,结合要对嵌入式软件各个层次全面把握的要求,逐层递进的嵌入式核心内容主要如表1所示:
表1 嵌入式核心内容表
对于每个阶段的学习,都要设计应用性很强的阶段项目,对每一个阶段的所有知识点进行综合练习。整个课程体系的最后就是综合项目实战《智能家居系统》,本项目不仅需要嵌入式的知识,还要综合传感器和无线网络的知识,将一个大项目拆分为几个模块,学生分组协作。模拟真实项目的管理过程,培养学生项目团队协同开发能力,项目文档编写能力和实践应用能力。
嵌入式涵盖的内容广泛,包括硬件设计、用户软件,以及网络通信等等,一个人不可能精通嵌入式所有的知识,所以通过以上分层次的一系列专业课程的学习和应用,使学生先理解嵌入式开发的总体流程,以及用到的相关技术,先对嵌入式有个总体地宏观地把握,然后在嵌入式领域找到自己的兴趣,了解自己的能力边界,确定自己将来的工作方向,如嵌入式底层驱动开发,系统移植开发,还是应用开发、GUI开发,从而在自己感兴趣的领域深入学习,为将来的工作打好基础。
在当今互联网+的时代,人们越来越依赖网络,网络改变着大学生的学习生活和思维方式,他们身上有着市场经济和互联网时代的显著特点,个性张扬,易于接受新事物,善于利用网络,精通于互联网的使用,但又过分依赖网络。老式传统的教学模式与90后大学生之间的矛盾日渐突出。如何利用网络并结合大学生的特点和嵌入式课程的目标,采用合理的教学方法,引导学生主动学习,提高学习效率。根据CDIO模式的指导思想,教学方法采用“翻转课堂”和“成果为本教学”相结合的方法。
(1)“翻转课堂”式教学方法
网络是一把双刃剑,在给大学生们带来诸多便利的同时,也带给他们诸多危害。引导学生利用网络学习资源,提高学习效率。
改变传统的“讲三练二考一”的教育模式,采用国际化的“讲一练二做三”的教育模式在每一个项目中,涉及一些理论基础,教师指导学生进行必要的理论准备,并不局限于课堂授课,对于通识性的理论知识,采用“翻转课堂”式教学方法[6],注重启发引导学生通过微课、慕课、网易公开课等网络平台课下学习,课堂讨论知识应用。同时启发学生如何完成项目的基本要求和扩展要求,项目由简入深的原则,通过渐进的学习逐步地提高和完善学生的知识面。
(2)“成果为本”教学方法
教师教了不等于学生学了,改变传统教学中内容为本,着重“知识”的教学方法。采用“成果为本”的教学方法[7],学习成果应该包括“知识”——学生应该知道/理解的、“能力”——学生应该能做的、“素质”——学生应该具备的价值观和态度三个方面。
对于与硬件关系紧密的实践性较强的内容,要采用“成果为本”的教学方法。并设计配合学习成果的课程设计、教学方法及评价考核方法。
技术的学习必须奉行的原则一定是“实践出真知”。从成果即项目出发,进而学习相关的知识,实践过程中学生哪怕只是驱动了简单的A/D转换器,都会对整个嵌入式开发工作形成方法学的概念,延展到多种应用领域后会很容易上手,这就达到了更高层次的“素质”要求。
从“成果”出发,从解决问题的角度学习知识。通过边动手实践边学理论的学习方法,练习过程中有问题和不懂的地方,学生可以讨论,将所有知识点当堂课完全理解吸收,充分调动学生的学习兴趣和继续深入学习积极性。而且还能在教师的监督下锻炼学生的编程能力,提高学生的就业竞争力。
教师在授课过程中要从使学生树立正确的学习理念的角度出发,要注意思想和方法的讲解,而不是单一知识点的传授。要有工程的理念,比如鉴于嵌入式硬件资源的限制,嵌入式软件开发需要考虑代码精简和执行效率问题,对所写的每一行代码要清楚它的作用,它在可执行代码中的位置,它真正要加载的位置(即虚拟运行地址),它什么时候会被执行,什么时候会被加载等等。因此教师在授课过程中需要给学生讲清楚内存的分配情况,通过具体的实例使学生对代码在内存中的运行过程和作用有一个从理性到感性的认识。
为培养能迅速适应各种变化的嵌入式系统人才,通过“翻转课堂”和“成果为本”的方法设计教学内容和配套的考核机制,可以更好的培养学生的学习能力。同时对学生的学习理念和方法在以下几个方面进行改革。
首先在学习理念上,要使学生明白,要真正学好一门语言,不是指懂它的语法,而是要有解决问题的思想,比如理解C语言在内核中的灵活使用,Linux内核开发中,通过结构体和函数指针实现的面向对象的编程思想。
要注重培养学生的自学能力,比如在Linux内核中的子系统很多,教师可以带领学生分析一个有代表性的子系统如Input子系统,重点分析系统逻辑、讲授学习方法,引导学生通过查阅相关文档、博客、技术论坛自学其它子系统,学会自己查找解决问题的方法。
要培养学生工程的理念,在阶段项目和课程综合项目开发过程中,一定引导学生先从整个工程的逻辑入手,先确定整个项目的功能结构,逻辑划分,注意模块之间的重用,提高代码的内聚降低耦合,再进入代码撰写阶段,不要直接动手写代码,否则会越写越混乱。
培养良好的学习方法,学一门技术时,遵循的是理论知识学习、实践、再看书、总结这样一个模式。还有一点就是,用到一分,就往广里多学一分,往深里多学一分。以点带面,就会持续不断地学下去,这样时间长了,自然会不断丰富自己,脱胎换骨。
鼓励学生积极参加各种竞赛,在参与的过程中他们会积极思考,努力探索,有针对性地去学习、讨论,这对培养学生的应用能力和积极参与竞争的意识有很重要的意义。学生参加了大学生电子设计大赛,中国机器人大赛、博创杯嵌入式大赛、中国大学生创新创业大赛等,参赛结束后学生们的应用能力、自学能力和自信息都有了很大提高。
通过校企合作为提高学生的学生实战经验,为全面了解产品的设计选型、功能定义、需求定义、软硬件开发,以及功能样机测试等,鼓励学生走出去,到公司进行实习,我们学院一直坚持校企合作,与蓝狐、中软国际、深圳软件园建立协同育人的长期合作关系,给学生提供到企业实践的机会,真正接触一些项目开发工作,既利于学生毕业找到更为理想的工作,又便于企业实际项目用人,有效地减少双方磨合的时间。
嵌入式的发展日新月异,几年前盛极一时的诺基亚和塞班系统被淘汰,说明在嵌入式领域,固步自封只能走向灭亡。嵌入式教师要紧跟行业发展不断学习新知识新技术,及时更新知识结构和授课内容,要与社会需求接轨。
CDIO模式对嵌入式的教师的要求很高,很多教师缺乏嵌入式工作的实战经验,长期在教学一线,不能紧跟业界动态,逐渐脱离新技术的发展,课程更新的速度很难跟得上嵌入式系统发展的速度,并且缺少对整个嵌入式行业的把握,授课更多是以理论知识为主,其结果可想而知。
嵌入式系统具有与众不同的特点,它至少汇集了电气、电子、计算机、控制、机械、工业设计等多种学科技术,而且是与应用需求高度结合的。单靠教师的自学很难真正掌握并达到一定的高度。所以有计划的师资培训就显得非常重要,我们学院一直致力面向应用型人才培养的路线,大力培养同时具有讲师和中级工程师以上资格的“双师双能型”教师队伍的建设,派遣教师到企业和培训机构深造学习,教师都是带着问题有目的性地去学习,收获非常大,不仅提高了教师的工程应用能力和教学水平,又能使教师接触市场最新的技术动态,使他们对公司用人需求也非常了解,知道如何把学生培养成为公司需要的技术人才,与市场接轨的授课内容和授课方式大大提高学生的学习兴趣和应用水平,也提高了学生的就业竞争能力。
嵌入式教学结合“互联网+”的时代特点,采用基于CDIO的教学模式,在课程的构思(Conceive)、设计(Design)方面进行多课程联合的教学内容改革,利用网络教学资源通过“反转课堂”和“成果为本”的教学方法,使学生掌握项目实现(Implement)的知识和技能,最终体验整个项目运作(Operate)的流程。
嵌入式系统是IT产业中变化最迅速的前沿科技领域,因此嵌入式系统教学改革是一项长期而系统的工程,需要不断的探索实践和改进。
[1]顾可民.计算机专业实用型人才培养模式的研究与实践[J].辽宁教育研究,2007(5):11.
[2]Johan Bankel,etc.The CDIO Syllabus A comparative study of expected student proficiency[J].European Journal of Engineering Education,2003(3):26.
[3]王建萍,费跃农,王燕瑜.嵌入式系统“边干边学”教学模式探究[J].电气电子教学学报,2007,29(5):103-105.
[4]斯荣喜.独立学院应用型创新人才培养模式探索[J].高等工程教育研究,2005(1):45.
[5]牛建伟,张炯.北京航空航天大学嵌入式系统课程建设[J].计算机教育,2008(7):21.
[6]张金磊,王颖,张宝辉.翻转课堂教学模式研究[J].远程教育杂志,2012(4):46.
[7]秦秀媛,文雪巍.基于“成果为本”教学方法探究[J].课程教育研究,2015(36):51.
(编辑:郭桂真)
TP368.1-4
A
:1673-8454(2017)04-0037-04
2014年度广东省高等教育教学改革项目“应用型本科院校国际合作办学机制体制协同创新研究与实践”(GDJG20142436)。