物联网全栈人才
——一种计算机类专业系统能力培养目标

2018-02-08 12:17初佃辉吕为工李剑雄
计算机教育 2018年2期
关键词:应用层体系结构嵌入式

张 策,初佃辉,吕为工,柏 军,李剑雄

(哈尔滨工业大学(威海) 计算机科学与技术学院,山东 威海 264209)

0 引 言

自2010年以来,在政府政策、产业开发、创新创业等方面,物联网IoT(internet of things)发展迅猛[1-3],并逐渐演进成为各层面的主导方向,尤其在技术上与云计算、大数据等形成交叉[4],对综合性人才提出了迫切需求,那么如何在当前实际教学中培养出优秀的物联网人才?另一方面,随着时代的进展,计算机系统综合能力培养目标的导向是什么?即需要找到一个具体的目标定位。

1 物联网体系结构

依据对物理世界的感知、信息传输和数据处理,物联网的体系结构被公认为由3个层次构成,即感知层、传输层和应用层。

图1所示为物联网3层结构图。可以看出,物联网包括传统的软件、硬件和网络3个部分,从上层应用到下层的物理设备被划分为应用层、传输层和感知层。

物联网最上层为应用层,主要负责对数据进行智能处理与展示,关键是实施数据挖掘和决策;中间层为网络层(即传输层),主要负责融合接入和信息存储;最下层为感知层,主要负责智能嵌入式、标识物品、感知物品、协同和互动。从数据流向与处理的角度,物联网包括统一标识、全面感知、可靠传送、智能处理、产业应用,最终实现对物理世界的“感、知、控”。

2 物联网技术脉络

物联网包含的内容较为庞杂,对于如何在教学中理顺内容关系,把握住主要技术脉络至关重要。结合多年的教学与科研经验,我们给出图2所示的以技术、功能和数据流向为核心视角的物联网层级结构图。

图1 物联网3层体系结构

图2 物联网层级图——以技术、功能和数据流向为核心视角

结合图2,教学中首先要明确做到对物联网具备宏观的认识:①无感知层的物联网,剩下网络层与应用层,就是互联网;②应用层依旧是计算机端开发出来的运行在各种计算平台上的应用;③物联网中的“物”是智能的嵌入式设备,包括单一智能化设备或传统设备进行智能化改造(如添加感知装置、处理芯片、模块等)后的复合式智能化设备。

从技术角度,可以形象地概括为“物联网将IT技术一网打尽”,囊括当前信息产业的主流技术。

虽然当前在物联网课程改革[5-6]、教学实践[7-8]、专业建设[9-10]、实验室建设[11]、人才培养策略[12]等方面取得了一定研究成果,但是始终没能够提出具有计算机类专业系统能力培养这一目标牵引性的物联网人才培养模式,因此亟待突破。这样,提炼出适宜于当前教学中的技术学习路线成为物联网人才培养的关键。

3 物联网技术学习路线

文献[13—14]首次提出物联网全栈人才的基本含义,我们将其进行进一步修改如下:

物联网全栈人才:全栈开发者FSD(full stack developer)是指那些熟练掌握和设计物联网体系结构,具备感知层设备和嵌入式系统设计与开发能力、网络层多种通讯协议和应用层综合开发能力的专业人才。

具体而言,FSD必须要懂基础设施、传感器、网关、网络(个域网、局域网、广域网、移动通信网和互联网)、数据库、Web开发中的后端开发技术(以Java、Python和Ruby为编程语言的B/S开发框架)和前端开发技术(JavaScript、HTML、CSS以及各种开发框架),甚至大数据、云计算、网络安全等技术,整体上与图2中的技术相对应。

相应地,我们提出图3所示的FSD技术架构与学习路线。

在感知层,主要以嵌入式系统的学习为主,传统的以单片机或ARM CPU等为核心的嵌入式系统开发与设计技术是主流。此外,近些年来随着开源硬件(树莓派、Arduino、MakeBlock、Twine、Nest等)的出现和流行,嵌入式系统开发的难度大大降低,使得计算机类专业学生进行自设计与开发的能力得到提升;相应的FPGA开发技术也使得硬件系统开发在软件开发人员中成为可能。

在传输层,主要以互联网技术学习为主,OSI7层或TCP/IP5层网络架构与物联网中各类常见无线通信协议(蓝牙、Zigbee、WiFi、WiMax等)关联密切,因此,掌握传输层技术成为可能。

在应用层,主要以程序开发为主,包括主流的Web开发(Web Server、Application Server、Web Services,尤其是基于框架技术)、移动端开发(Android或iOS平台下APP开发等)、PC端开发(基于高级语言的常规C/S结构开发)等。

在服务上,物联网云平台成为物联网系统对外提供服务的重要载体和方式,提供有数据处理软件和操作语言,只要按照它的规则,用户就可以实现将自身设备感知或采集的数据传到此平台上,用它的方法处理数据并展示。物联网云平台,即物联网数据中心,由专业的物联网服务商提供,国外的有(开源)物联网(服务)平台,如xively(https://xively.com/,以前叫做Pachube等名称),国内知名的物联网云平台包括Yeelink(http://www.yeelink.net/))、乐联网(http://www.lewei50.com)等。

综上,我们提出最基本的适合FSD学习的方法:基于开源硬件制作嵌入式产品或者系统,并将其通过互联网连接到(基于开源或不开源的)物联网服务/数据平台上,进行数据处理或者展示,由此基本实现一个物联网的基本架构——可以把一个个感知层采集的信息,传输到(开源)物联网(服务)平台上,平台会对数据进行处理,并以直观的方式(如图形、图像、声音、智能化的决策结果等)呈现出来,使得无论身处何处的用户都能看到,甚至进而借助这个平台进行控制。

图3 涵盖嵌入式开发技术、移动应用程序开发技术和Web开发技术的物联网系统技术学习路线

4 时代性、必要性与可行性分析

4.1 时代性分析

物联网时代,FSD人才紧缺成为制约物联网发展的一个主要瓶颈,亟须加大教学中人才培养的力度,为此,如何探索出一条合适的物联网技术学习框架和路线,并在教学中进行积极实践显得尤为迫切。

4.2 必要性分析

计算机专业相比于其他理工类相关专业的优势在于具有对计算机系统的综合掌握与运用能力,更加注重计算机系统的整体性,包括计算机硬件系统、软件系统和网络3个层面,这奠定了日后成为计算机系统专业人才的基础。

物联网时代的到来,需要更多掌握物联网3个层次的基本理论与关键技术的复合式人才,由此,物联网全栈人才成为计算机专业系统能力培养的有力抓手。

4.3 可行性分析

以我校计算机专业培养方案中的部分课程设置为例进行分析,图4展示了与物联网体系结构相对应的课程设置。

可见,图4中的课程体系与物联网3层结构一一对应,这表明当前国内计算机类专业学生培养的课程体系足以支撑起物联网技术的学习,完全能够具备培养FSD的基本条件。

在开源硬件以及硬件设计程序化(如FPGA、CPLD的普及)的背景下,计算机类专业学生的知识结构完全可以使其胜任感知层嵌入式设备与智能硬件的开发,这些在这几年我院的课程实验(一般为12~16学时)与课程设计(一般为2周)、毕业设计(一般为14周)等环节中已得到充分验证。

5 物联网全栈人才培养实践

图4 课程与实践主线奠定IoT理论与实践基础

图5 基于Modbus协议的物联网系统

在实践环节,我们设计了基于Modbus协议的物联网系统,图5给出了整体的结构图示。系统由4个部分组成,包括下位感知设备、物联网终端(可视为网关)、服务器和上位机。在结构上,感知设备和物联网终端对应感知层,服务器和上位机对应应用层,通信部分对应传输层,系统满足物联网的3个层次。

要求学生完成如下任务:依据文字描述搭建出系统的结构、设计系统程序集合、设计各程序功能点、编制、烧写(下载)、调试程序、集成测试、文档书写。

在创新实验课环节,学生较好地完成除图5中下位设备开发的全部内容;在毕业设计环节,我们将功能进一步增强,学生仍出色地完成预定功能,并获得优秀毕业设计成绩。

经过图3中的物联网技术路线学习和类似于图5中的实践环节后,初步掌握计算机系统综合知识并基本能够进行物联网系统设计与开发的学生,具备了物联网复合式人才的必要条件。文献[13]给出了首席物联网官(CIoTO)的称呼,对物联网人才的最高层次进行了明确定位。具备物联网3层系统设计与开发的FSD,相比纯粹的嵌入式开发人员或软件开发人员,更加有能力进行物联网系统整体开发工程的有效把控,从而更加具备物联网人才鲜明特征,更加靠近首席物联网官。

6 结 语

由于物联网具有内容覆盖面广、技术密集性高、脉络重点难掌握等特点,在教学中如何定位和培养物联网人才成为制约点。笔者对此进行尝试性回答,针对性地给出物联网全栈人才概念、技术学习路线以及实践环节样例,希冀其能够作为重要参考,达到有效辅助计算机类人才培养的目的。

[1]孙其博, 刘杰, 黎羴, 等. 物联网: 概念、架构与关键技术研究综述[J]. 北京邮电大学学报, 2010, 33(3): 1-9.

[2]陈海明, 崔莉, 谢开斌. 物联网体系结构与实现方法的比较研究[J]. 计算机学报, 2013, 36(1): 168-188.

[3]沈苏彬, 毛燕琴, 范曲立, 等. 物联网概念模型与体系结构[J]. 南京邮电大学学报(自然科学版), 2010, 30(4): 1-8.

[4]沈苏彬, 范曲立, 宗平, 等. 物联网的体系结构与相关技术研究[J]. 南京邮电大学学报(自然科学版), 2009, 29(6): 1-11.

[5]姜腊林, 王静, 徐蔚鸿. 网络工程专业物联网方向课程改革研究[J]. 计算机教育, 2011(19): 48-50.

[6]吴功宜. 对物联网工程专业教学体系建设的思考[J]. 计算机教育, 2010(21): 26-29.

[7]钱红燕, 陈兵, 燕雪峰. 物联网教学实践体系研究[J]. 计算机教育, 2011(23): 21-25.

[8]罗高峰, 石子娟. 物联网教学实践模式研究: 以基于开放平台的网络类课程实践教学为例[J]. 物联网技术, 2016, 6(7): 108-109.

[9]孙涵, 陈兵, 王立松, 等. 物联网工程专业建设初探[J]. 计算机教育, 2012(21): 2-4.

[10]陈辉, 李敬兆, 詹林. 物联网工程专业人才培养和专业建设探索[J]. 计算机教育, 2014(4): 13-17.

[11]陈景贤, 陈志生. 高校物联网实验室建设与应用[J]. 实验室研究与探索, 2013(8): 451-453.

[12]徐小龙, 鲁蔚锋, 杨庚. 物联网专业人才培养策略研究[J]. 南京邮电大学学报(社会科学版), 2012, 14(1): 119-124.

[13]凤凰科技. 物联网时代即将到来: 未来三种职业最吃香[EB/OL]. (2016-06-12)[2017-07-23]. http://tech.ifeng.com/a/20160612/41621579_0.shtml.

[14]Zhang C, Chu D H, Meng F C, et al. Teaching research on IoT and embedded system of software engineering[J]. 计算机教育,2016(8): 19-25.

猜你喜欢
应用层体系结构嵌入式
基于IMX6ULL的嵌入式根文件系统构建
基于思维导图的化学知识体系结构构建
Focal&Naim同框发布1000系列嵌入式扬声器及全新Uniti Atmos流媒体一体机
基于PPP工程采购模式的工程项目合同体系结构研究
足球机器人并行行为组合控制体系结构分析
TS系列红外传感器在嵌入式控制系统中的应用
嵌入式PLC的设计与研究
传输层和应用层的隧道技术
基于分级保护的OA系统应用层访问控制研究
Acoustic Characteristics of Advertisement Calls in Babina adenopleura