基于CDIO理念的嵌入式系统开发课程的教与学

2019-07-03 02:31窦乔
软件工程 2019年5期
关键词:嵌入式系统项目驱动课程改革

窦乔

摘  要:分析了目前嵌入式系统课程存在的问题,结合嵌入式系统开发的流程和主线,以CDIO为教育理念,以项目为驱动,分别从课程内容设置、项目设计、教学模式和考核方式等方面,提出了课程改革的具体措施。从工程教育的角度,对课程项目进行了精心的设置;结合学生竞赛和企业需求,制定课程实验和教学案例;从学生角度出发,以学习产出为课程考核标准,制定了能够激发学生学习兴趣的考核方案,取得了很好的教學效果。

关键词:CDIO;嵌入式系统;项目驱动;教学模式;课程改革

中图分类号:TP36     文献标识码:A

Abstract:This paper analyzes the existing problems in the embedded  system development course,combines the process and main line of embedded system development,takes CDIO as the educational concept and projects as the driver,and puts forward specific measures for curriculum reform from the aspects of course content setting,project design,teaching mode,assessment method,etc.From the angle of engineering education,the course projects are carefully set.Course experiments and teaching cases are developed according to the requirements of students' competitions and enterprises.From the perspective of students,taking learning outcomes as the course assessment standards,the assessment scheme has been developed to stimulate students' learning interest.Good teaching effects have been achieved.

Keywords:CDIO;embedded system;project-driven;mode of teaching;course reform

1   引言(Introduction)

2004年,ACM(美国计算机协会)和IEEE联合制定了新版的计算机学科的课程体系(2004版),其中一个主要改革就是将“Embedded System”课程列为本科生的专业基础课,并且给出了基本课程体系[1]。之后,国内各高校陆续将嵌入式相关课程纳入培养方案中。我校于2005年开始开设嵌入式系统开发课程,并在之后开设了计算机专业的嵌入式软件开发方向。目前随着物联网的不断兴起,业界对嵌入式人才的需求处于紧缺状态,据华清远见统计,2017年嵌入式人才缺口达到了80万人左右,社会对嵌入式开发人员的需求日渐增长,但是毕业生缺乏实践能力,结果导致出现许多单位招聘不到合适的开发人员的尴尬局面[2,3],可以说人才的匮乏已经成为其发展的瓶颈,所以培养合格的嵌入式人才对行业的发展非常重要。同时,嵌入式系统开发与其他专业课不同之处在于它具有工程开发的整体思路,涵盖了电子、通信、计算机,以及控制等各专业学科的知识,学生既要掌握嵌入式硬件的基本结构和功能,又要学会编写驱动程序、移植操作系统,以及应用软件的编写,所以如何教好此类课程,需要正确的教学理念和方法,让学生在理解什么是嵌入式系统的同时,又能很好地完成系统开发,而且最重要的就是培养学生独立思考、深入研究问题的能力,以及实践动手能力。

CDIO工程教育模式是2005年引入我国的一种新型人才培养模式,代表构思(Conceive)、设计(Design)、实现(Implement)、运作(Operate),它以项目从研发到与运行的完整过程为载体,引导学生融入真实情景,主张以能力培养为目标,以任务驱动为教学模式,让教和学都变得不再盲目[4]。嵌入式系统开发课程的教学目标为以嵌入式系统开发流程为主线,以“智能家居控制系统”真实项目为驱动,将各种能力培养融入教学各个环节中。

2  传统的教和学存在的问题(Problems with traditional teaching and learning)

嵌入式系统开发课程采用的是课堂讲授加实验的教学模式,这种模式在教和学方面存在如下问题。

(1)知识灌输型教学模式

传统的教学方式大多采用的是知识灌输方式,教师的教学目标就是尽全力将自身存储的知识传授给学生,但忽略了学生的接受能力,教学过程中缺少与学生的互动,不能调动学生的学习积极性,最后的教学效果适得其反。

(2)被动接受型学习模式

由于讲授内容偏多,学生参与的机会比较少,大多时间是在被动接受知识,没有明确的目标;课程设计中没有好的方法吸引学生的注意力,学生的学习动力不足,导致学习兴趣不高,学习效果不好。

3  CDIO模式的嵌入式系统课程的教与学(Teaching and learning of the embedded system course under CDIO mode)

引入CDIO教育理念后,课程从教学目标、课程内容、教学方法和考核方式等方面进行了梳理和修改。

3.1   教学目标

教学内容应该从教学目标出发,遵循CDIO强调的教学目标应与产业对学生素质和能力的要求挂钩[5],从专业能力、素质能力和工程能力几个方面制定课程的总体培养目标及能力培养要求。

从专业能力方面要求学生掌握嵌入式系统的基本概念、原理、结构,掌握嵌入式系统软件开发流程及开发流程中涉及的各种技术、软件和工具的使用;掌握开发环境的搭建如BootLoader的移植、内核裁剪及移植、简单驱动程序编写,掌握嵌入式GUI、数据库等上层应用程序的設计和编程。从素质能力方面培养学生的沟通和交流,以及团队合作能力。项目设计及实施方面要求学生能够自行完成小型嵌入式系统的设计及开发。表1列出了课程部分知识点对应的能力培养点。

3.2   教学内容

基于上述的教学目标,课程以ARM9微处理器和Linux系统为开发平台,以嵌入式系统开发流程为主线,制定相关知识、实验、案例和项目。课程的思维导图如图1所示。以三级项目“基于Qt的智能家居控制系统”为驱动,按照嵌入式系统开发的流程,将项目进行分解,从开始的编程基础环境搭建,到开发环境搭建,再到驱动程序开发,到最后的基于Qt的上层应用开发,每一阶段都有每一阶段的目标,完成上一部分目标才能继续下一部分,最后完成课程的既定项目。

3.3   以课程主线为依据的案例及实验方案

为了激发学生的学习兴趣,课程尽量减少理论讲解,而把理论知识融入案例和实验中,让学生在“做中学”。除了一些小的知识点的案例外,针对每次实验任务,提前将实验中涉及的知识用案例形式在理论课堂上完成,减少实验课上的理论知识讲解。

实验是本门课程最重要的一个环节,受限于大纲的要求,课程实验学时设置为10学时,即五次实验课程。设置了交叉编译、Kernel移植、LED驱动、Qt移植,以及最后三级项目调试等实验项目。这五次实验贯穿了课程主线,层层递进的方式将嵌入式系统的开发环境、运行环境搭建起来,从而完成最后的三级项目。

案例中设置基本的理论知识讲解和针对理论知识设置的实践操作步骤。实验有相应的实验指导书,学生按照课堂上的讲解,由教师明确实验任务后,即可自行完成实验。通过案例和实验的设置,教师只需在课堂上对重要知识点进行讲解,在学生完成案例和实验过程中加以指导和启发即可,充分发挥学生的自主能动性,真正做到“做中学”。课程的案例及实验设计如图2所示。

3.4   考核方法

考核方式对一门课程来说非常的重要,决定了学生对待此门课程的态度,合理的考核方式能够激起学生的学习兴趣,从而达到理想的教学效果。课程之前采用的考核方式为闭卷笔试,考查的只是学生对知识点的掌握情况,并没有很好的考查学生对知识体系的整体掌握情况,无法衡量学生对工程概念的理解程度和能力达成情况。引入CDIO教学理念后,形成了多样化、多层次、多维度的考核方案。

(1)多维度、多视角的考核方式

根据课程教学目标和课程内容的设置,从多个方面和多个角度来考查学生学习情况。三级项目的考核作为课程的终结性考核,是考查学生本门课程学习情况的最重要的一环,也是考查学生能力提升的重要途径。三级项目从系统设计、项目划分、阶段成果、项目创新性、项目答辩,以及项目报告六个方面来考查学生完成情况;课程实验贯穿于整个课程,会从实验预习、实验过程、实验结果及实验报告四个方面来进行考核;案例是辅助课程项目及实验的重要手段,会在课程进行过程中随堂考核;为了提高学生自学能力,布置课下自学任务,要求学生自行查阅资料并独立完成任务,并通过报告和回答问题等方式进行考核。

(2)可量化的能力考核

CDIO提倡能力达成情况。表2列出的是每项考核能力在考核内容中所占的比例分值。具体的考核情况会细化到每项考核的考核指标当中,每个学生会有一个自己的能力考核表,并根据考核情况计算出能力达成度。

(3)阶梯式题目设置

学生不同的个体在思维方法和知识背景上都会存在不同的差异,这种差异使学生具有不同的思维过程[6]。学生对课程的内容掌握程序也会有差异,所以在教学和考核过程中也要有侧重。比如课程项目题目要求会根据学生水平设置基础版和进阶版,每个版本设置最低要求,分数也会有所不同,学生可根据自身情况选择完成哪个版本。最后考核分为项目报告和答辩成绩两部分。报告中设置项目的背景分析、功能描述、体系结构、开发流程、程序流程和运行截图等;答辩采用自述PPT的公开答辩方式,由学生自述、项目演示和回答问题三个部分。这种方式很好地展示学生对课程内容的整体把握情况,对知识体系的理解情况,并且也锻炼了学生的表述及临场应变能力,也能对其他同学起到启发和激励作用,对学习效果的提升有很好的帮助。

(4)激励式的创新鼓励

实践证明,任何的言语激励都不如给学生比较实惠的激励政策,比如鼓励创新。通过设置一定的创新激励分数,在每个案例、实验及项目的实施过程中,给学生加以提示,鼓励学生通过自行查找问题的其他解决办法或者对原有问题进行深一步的探索,并在分数上给予鼓励,学生会非常愿意尝试,以此养成学生创新的惯性思维。

4   教学改革成果(Achievements of teaching reform)

经过CDIO改革后,课程教学效果得到了很大提升,形成了比较完整的教学体系和资料。经过本门课程的学习,再结合其他课程的内容,学生可以在很多方面提升自己,包括课程项目、大创项目、学生竞赛、毕业设计和就业等。比如学生申报国家级大创项目“有机蔬菜溯源系统”“水田水量监测监控系统”“智能蔬菜大棚”“室内空间质量检测及控制系统”等;也参加“博创杯”“赛佰特杯”“iCAN”等比赛,最重要的是,学生学会了如何设计、实施、运行一个简单的嵌入式系统,为后面的就业做好了初步的准备。

5   结论(Conclusion)

CDIO教育理念的引入相当于给课程注入了灵魂,让整个课程的教学过程变得灵动起来,学生和老师在整个教学过程中能够变得更自主、更灵活、更有发挥空间,而不是拘禁到以考试为目的的学习框架里。经过几轮教学后,学生对嵌入式系统的理解更加立体,也更加明确自己在未来的学习和工作中的方向,具有持续的学习能力和创新能力。

参考文献(References)

[1] 王剑.嵌入式系统设计与应用——课程与CDIO模式有效融合的教学思考[J].科技视界,2017(04):139.

[2] 李岩,王小玉,孙永春.嵌入式系统教学研究[J].电气电子教学学报,2006,28(3):45-47.

[3] 伍宗富,陈日新,王建君.基于Web的开放实验教学管理系统[J].高校实验室工作研究,2007(2):78-80.

[4] 陆小华,熊光晶,陈珠琳.设计导向的工程教育改革理念[J].高等工程教育研究,2007(6):83-87.

[5] 孙静.基于CDIO教育理念的嵌入式系统原理及应用教学改革与实践[J].电脑知识与技术,2016,12(36):153-165.

[6] 田金琴,王晓峰.项目驱动的嵌入式系统教学方法研究[J].教育现代化,2016,40(084):184-186.

猜你喜欢
嵌入式系统项目驱动课程改革
依托工作室的软件工程实践教学研究
基于物联网项目驱动的嵌入式系统教学改革的研究与实践
基于“红色之旅”项目驱动的《调酒与咖啡》工作室制人才培养机制探讨
嵌入式系统课程“中断、异常与事件”教学实践及启示
面向实践创新人才培养的嵌入式系统教学研究
“双创”形势下高职财务管理课程改革探索
项目教学法在微电影制作教学中的应用
基于创意的对口单招色彩课程改革突破点研究
校企协同实施高职专业课程改革的实践研究
试论基于项目驱动的机械制图教学改革