版本控制技术在物联网实践课程中的应用

2016-02-05 08:05钱颖雪
电脑与电信 2016年10期
关键词:代码联网模块

钱颖雪

(无锡机电高等职业技术学校,江苏 无锡 214028)

版本控制技术在物联网实践课程中的应用

钱颖雪

(无锡机电高等职业技术学校,江苏 无锡 214028)

2011年物联网工程专业进军高职院校,实践教学是该专业教学体系中不可或缺的重要环节。传统的项目实践教学方式存在任务分配不合理、过程化考核困难、成果保存欠缺等问题。本文借助Github网络资源,利用阶段版本控制思想,对每个学生的每个阶段学习成果进行控制,帮助教师完成物联网实践类课程的教学,并且列举课程项目实例,指出将版本控制思想引入物联网实践课程教学中,能够提高教学水平和人才培养质量,增强学生实践能力和创新精神,提高学生就业竞争力。

Git版本控制;物联网;项目式教学

1 物联网实践类课程的传统教学方式

物联网工程专业自2011年起进军各高等院校、职业学校,已经培养出了若干批毕业生。在职业学校的人才培养方案中,新兴的物联网工程专业相比传统专业更注重学生的创新、实践与协作能力的培养,物联网工程专业的性质也决定了实践教学成为该专业教学体系中不可或缺的重要环节[1]。

目前物联网实践类课程采取的教学方式与其他专业课无异,根据实验设备模块设计不同的项目任务,学生在完成项目的过程中逐渐掌握相关知识,但是也存在了以下问题[2]:

1.1 任务分配

为了培养学生的独立操作能力,同时为减少偷懒、抄袭现象,最好是一人一题,但是这种方式不利于提高学生的团队协作意识,并且在物联网技术中,工程项目的工作量很大,学生不可能在短短几周内单独完成所有功能,即使完成了,质量也不会太高;若将任务交给一组学生完成,又很可能出现“一边倒”的现象,即只由该组的某一名或几名同学全部包揽,其余同学共享这些同学的劳动成果,使得教师无法真实评价学生的能力,对于学生来说也不能得到充分的锻炼。

1.2 过程管理

物联网实践类课程大部分功能都是通过代码体现,但是教师评价不能仅仅针对结果,因此教师需要对编码质量进行批改,而由于项目工作量大,学生一般都将精力放在功能上却忽略了代码质量本身,这给教师带来的最大问题就是批改代码工作量太大。另外由于学生较多,教师无法做到一对一的教学管理和跟踪,只能根据考勤和学生提问来进行评估,由于过程化考核监督的漏洞,可能会出现部分学生借鉴网络现成代码来完成项目,带来一些后续问题。

1.3 任务传承

由于工程量大,代码的阶段性保存度较差,学生的项目代码仅仅作为作业上交,完成得较好的作业无法作为案例分享给他人,并且已完成的作业也无法进行二次开发造成一些资源的浪费[3,4]。

针对这些问题,本文提出将基于版本控制技术[5]的代码管理平台Github应用于物联网技术的实践课程教学环节中,提高实践教学水平和人才培养质量,增强学生实践能力和创新精神,提高学生就业竞争力。

2 版本控制技术的内涵

Git分布式版本控制系统,主要应用在软件项目托管平台,可通过网页访问公开或者私人项目,浏览源代码、修改代码及注释。其最突出的特点在于“阶段版本控制”,它可以浏览任意提交过的版本并提供文件历史库,团队成员也可以在其内置聊天程序中进行交流,非常便捷。Github就是提供基于Git的版本托管服务,2008年上线,发展非常迅速,目前已经成为全球最大的开源社区。本文利用Github网络资源,将阶段版本控制的理念投放到教学中,帮助教师完成项目式实践教学,也就是对每个学生的每个“阶段”学习成果(“版本”)进行“控制”。

(1)Github网站具备代码审查、问题追踪等功能,可以容纳数万名用户群,又是一个完全免费、开源的系统,在业界具有很多成功案例,满足课程实现条件。

(2)在使用Github网站时需要每名学生熟练掌握版本上传、管理等操作,可以杜绝传统教学方式中可能出现的学生偷懒、抄袭等现象,并且由于项目的实施大多以团队小组为单位,学生在完成任务时不受场地限制,任何时间不仅可以向教师求教,也可通过网站自带的聊天程序广泛进行交流沟通,在高效学习专业技能的同时也提高了学生的沟通表达能力。

(3)新技术的实施对于教师而言也是一项挑战,目前很多高职院校的专业课教师都是从学校毕业后直接为师,理论基础比较扎实,工程项目经验方面相对欠缺。Github是一个成熟的项目开发、管理网站,作为双师型教师需要熟悉企业项目开发的工作流程和管理模式,这样才能培养出适合于企业要求的毕业生。

3 版本控制技术在教学中的具体运用

由于Github是开源的版本控制,在物联网技术课程的具体任务实施环节,教师和学生可以不受实验室地点约束,将教与学延伸到课外,及时对学习成果进行检阅,得到科学合理的评价。

为具体说明版本控制技术在教学中的应用,以综合项目智能超市管理系统设计为例,该设计在基本的用户账户模块、数据适配模块基础上增加了环境检测模块、安防监控模块、商品管理模块和物流追踪模块,在教学中属于高阶练习,一般安排在课程接近尾声阶段,是大型综合课程设计。教师在设计时分为三个级别,如图1所示:

图1 智能超市管理系统课题模块分组设计图

级别1的四个小组将分别建立一个activity,显示、访问并处理用户账户数据库对应信息,所需牵涉技能与难度大体相当,包括界面布局,控件管理,数据处理,函数管理与使用,基础数据库更删改查操作;级别2的四个小组将分别建立一个滑屏界面的frag门徒,显示、访问并处理数据库数据或根据API接口访问操作外部设备外面,相比级别1,级别2需要了解fragment加载,更理解View的自定义,更复杂的数据操作,优化数据库访问,外部函数访问,因为访问外部设备数据,所以需要考虑线程优化;级别3的三个小组将不再分别编写程序界面,重点在编写后台数据库与广播处理程序,需要极高的线程管理能力与数据分析能力,训练学生对物联网传感器系统运行的了解与数据库数据结构的掌握。三个级别难度循序渐进,适合不同能力层次的学生,便于教师因材施教,同时由于Github的开源特性,任何适合任何阶段都可以新增成员,便于低级别任务的学生完成任务后参与到高级任务中,逐步培养能力,提高他们的团队意识。

在授课前,教师需要提前安排任务分组,由学生自由分组,每组3-4人,选择任务模块,创建版本库,将远程代码克隆到本地,然后在自己的机器上完成功能的编写,团队成员在遇到问题时可以利用网址自带的聊天程序进行交流,方便快捷,每天定时上传已测试代码。教师可以将代码记录情况作为过程化考核的依据,并且及时跟踪学生进度,帮助学生找到原因,最大限度地避免学生懈怠及抄袭。在审核代码时,教师可以利用系统对某些不符合规范要求的代码拒收,也可以利用其质量分析功能,对已交代码进行评审,提高了评价效率。当整个项目完成后,也可以根据网站的统计功能,对团队和成员的贡献率进行客观公正的打分,并且将完成出色的代码保存下来作为后续的教学补充资料。

4 问题与思考

目前对于版本控制技术在物联网实践类教学中的应用还处于探索阶段,也存在很多问题,由于Github本身是为广大编程爱好者提供交流的平台和外包服务,并不是专业的教学平台,在使用中需要适当取舍,经过分析、整理出以下问题需要改善:

(1)考虑到学生实际情况,对完成相同任务的学生代码进行重复性分析,根据其相似度分析是否存在抄袭,最大范围内减少学生雷同作业,督促学生积极思考练习。

(2)过程化考核时针对版本进行数据分析,教师可以全面了解学生的设计思路及修正过程,针对教学资源和代码活动数据,为今后的教学改进提供依据,改善教学方式,提高教学效果。

5 结论

本文尝试将版本控制理念注入实践教学,并在物联网技术实践类课程中进行实验探究,便于教师进行过程考核和提高教学效果,能够提高实践教学水平和人才培养质量,增强学生实践能力和创新精神,以及提高实训基地建设与管理水平。

[1]王敏,张捐净.物联网导论课程实践教学探索[J].安阳工学院学报,2014(0 6):9 3-9 5.

[2]綦志勇,常排排.高职高专嵌入式与物联网专业传感器应用技术课程实验电路设计与实现[J].电脑知识与技术,2016,12(10).

[3]何凤梅.技师学院物联网导论课程的实践教学探索——以温州技师学院物联网技术应用专业教学实践为例[J].中国培训,2015,(10).

[4]曹建峰.物联网导论课程的构建与实施[J].物联网技术,2014 (0 5):8 6-8 7.

[5]宋冬生.Git——版本管理之利器[J].程序员,200 7(11):118-119.

Application of Git Technology in IOT Courses

Qian Yingxue
(Wuxi Machinery and Electron Higher Professional and Technical School,Wuxi 214028,Jiangsu)

IOT major entered in the higher professional and technical school in 2011.From then on,practice teaching is an important link in the teaching system.There are several problems in traditional teaching method such as task allocation,process assessment,result preservation,etc.This paper uses Github to control every course of every student,help teachers to complete the IOT courses teaching,and list the project example.It proves that the Git system can improve the quality of training and teaching,and improve the students'employment competitiveness.

Git;IOT;project teaching

G434

A

1008-6609(2016)10-0038-03

钱颖雪(19 8 4-),女,江苏无锡人,硕士,讲师,研究方向为电子通信、教学技术。

本论文为无锡机电高等职业技术学校2016年度校级课题《基于CDIO的Git系统在教学中的应用——以电子信息专业课程为例》的研究成果,项目编号:锡机电研2016-D X0 1。

猜你喜欢
代码联网模块
28通道收发处理模块设计
“选修3—3”模块的复习备考
“身联网”等五则
《物联网技术》简介
《物联网技术》简介
创世代码
创世代码
创世代码
创世代码
抢占物联网