面向数据工程师培养的软件工程专业课程群建设

2017-05-31 13:27应毅任凯顾问
计算机教育 2017年5期
关键词:软件工程云计算大数据

应毅+任凯+顾问

摘 要:大数据和云计算是当前IT行业两个最大的创新,新技术的高速发展带动人才需求的高速增长。在分析计算机专业人才培养现状的基础上,提出在软件工程专业下设置数据工程方向;对应用型数据工程师的能力培养进行剖析,给出数据工程课程群的整体设计,详述实验课和实验室建设的思路和方法。

关键词:大数据;云计算;软件工程;数据工程;课程群设计

文章编号:1672-5913(2017)05-0025-05

中图分类号:G642

1 背 景

近10年来,信息呈爆炸式增长。据EMC公司的“Digital Universe”项目统计,2011年和2012年全球新增数据总量分别为1.8ZB和2.8ZB[1-2],2013年数据总量高达4.4ZB[3]。Gartner认为“大数据是需要新的处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产”。它已经成为一种重要的战略资源,引起了各国政府、工业界和学术界的高度关注。2012年3月奥巴马政府宣布启动“大数据研究与开发计划”[4];2015年8月国务院通过《关于促进大数据发展的行动纲要》[5]。

从2009年起,云计算技术开始迅猛发展,它是一种基于互联网的、大众参与的计算模式,其计算资源是动态、可伸缩、被虚拟化的,且以服务的方式提供。如今云计算已成为企业实力竞争的核心以及国家竞争和战略发展的核心,我国政府在《国民经济和社会发展第十二个五年规划纲要》[6]中指出要大力发展新一代信息技术,重点发展云计算、物联网、高端软件等产业;美国政府也于2011年出台《联邦云计算战略》[7]。

大数据和云计算是目前IT行业两个最大的创新,它们将改变商业管理的方式并从最重要的信息资产中获取相应的价值,二者之间的相互需求与密切关系已得到公认。传统的单机技术在处理大数据时遇到了瓶颈,需要借助云计算平台的大规模数据存储环境和并发计算能力来破解。云计算通过整合软硬件资源,使用负载均衡、虚拟化、并行计算、网络存储、统一管理等技术手段,实现了IT服务的无缝化、定制化和弹性服务,可以使大数据平台的复杂性大为降低,能方便地存储与处理异构系统中的海量数据,提升资源的利用效率。

2 计算机专业人才培养现状

在大数据和云计算产业高速发展的背景下,计算机专业的高等教育凸显出以下两大问题。

(1)新技术人才需求缺口大。麦肯锡全球研究院在2011年5月发表的报告中指出,预计美国具备数据高级分析技能的人才供给量,到2018年将产生14~19万人的缺口[8]。研究机构IDC在2012年的调查发现,亚太地区的云计算相关人才年需求增长率为32%,到2015年人才缺口将达到230万人[9]。中国软件开发联盟CSDN发布的《2014年IT企业招聘趋势调研报告》[10]指出,大数据、云计算技术岗位市场需求比例为6.65%; 《2015年IT人才招聘趋势分析》[11]指出,该类职位平均薪酬高达33万元/年,人才稀缺且身价昂贵。

(2)技術人才培养与社会需求脱节。传统IT类专业学生就业越来越困难。麦可思研究院在2013年发布的中国大学生就业报告中指出,2012届IT相关专业的本科毕业生半年后失业率为8.5%,计算机科学与技术、信息管理与信息系统、电子信息科学与技术等专业就业情况被亮黄牌[12]。

以上两个问题不仅造成计算机专业毕业生就业压力加剧,也严重制约了我国新技术产业的发展。

2011年,软件工程被增设为一级学科(专业代码为0835)。软件作为经济建设、日常工作及社会生活中不可缺少的重要工具,已渗透到各个应用领域,在高等教育中也产生了许多专业方向,如软件开发、软件测试、移动开发、服务外包等。作为交叉性极强的学科,大数据应用涉及数学、统计学、计算机技术、经济学、行业知识等各个领域,与传统的计算机科学与技术专业和当前的软件工程专业差别较大,考虑到大数据技术的重要性,可以将数据工程设置为软件工程学科的一个专业方向,主动适应经济社会发展需要,促进学生就业,为大数据产业的发展奠定人才基础。

3 数据工程师的能力培养

大数据时代的到来,加剧了培养相关专业人才的紧迫性。当前,国内外部分高校已经开始进行大数据及云计算专业人才的培养。美国有60多所大学、欧洲有30多所大学、全球有近170所大学开设了大数据相关专业,其中约150所大学开设了硕士研究生以上的学位课程[8]。国内有少数重点院校,如上海交通大学、浙江大学、中国人民大学和北京航空航天大学,也开始尝试培养大数据及云计算专业人才。然而,这些知名高校绝大多数是在硕士研究生以上层次,围绕商业数据分析和数据科学范畴进行研究型人才的培养,应用型院校开设相关专业进行工程人才的培养还非常欠缺。新建本科院校应以服务区域经济发展为主,着力培养能在生产和工程第一线从事工程实施和管理的应用型工程师,而软件工程专业数据工程方向所培养的数据工程师就是能使用云计算平台进行大数据分析和应用的新技术人才。

早期高校培养的是“I型”专业人才,注重知识和技术的深厚;之后,大学强调培养“T型”通用人才,除加深专业知识外,还强调知识面的扩展。在大数据时代,数据处理将更为复杂,只有那些具备统计分析、数据库、分布式计算、编程技能和相关专业知识的人才,才能把混乱庞杂的数据转化为有价值的资源;也只有那些能够深刻理解大数据并懂得如何利用和分析大数据的人,才有更大的竞争优势。因此,当前更需要的是具备多种能力的复合型人才,数据工程专业方向要培养的是“技术+业务”的“Π型”复合人才。

应用型工程师区别于研究型人才的关键在于培养人才的工程能力,强调动手能力和解决实际问题的能力。教师可通过分布式存储和海量数据管理、并行编程和大数据分析挖掘、PaaS平台应用3方面的能力训练,培养掌握设计、开发和调优技能的数据分析工程师以及掌握规划、安装和管理大数据环境的运维工程师。

4 数据工程课程群设计

课程群的建设不是简单的概念组合和课程堆积,尤其是针对新技术方向,须从实际应用角度系统地对教学内容进行再设计,对相关课程的结构、关联性和实践环节进行整体优化。数据工程是一个典型的交叉学科,涉及众多领域,如数学和统计学、数据库与数据挖掘、分布式系统、计算机编程语言等,所以它的人才培养体系较为复杂。根据“Π型”复合人才的培养要求,课程群以云计算作为技术平台,以大数据应用作为业务领域,对教学体系进行整体设计和构建。

数据工程课程群划分为4条课程主线,每条课程主线包含如下若干门专业课。

(1)操作系统与网络:操作系统原理、计算机网络和Linux操作系统;

(2)云计算与并行编程:云计算基础、云基础架构与虚拟化、Java程序设计以及Hadoop与分布式系统;

(3)数据库与数据挖掘:数据库原理、MySQL与关系数据库、NoSQL与云数据库以及数据仓库与数据挖掘;

(4)大数据及其统计分析:统计学原理、大数据概论、大数据分析与挖掘以及R语言。

整个课程群还涉及几门平台基础课,即计算机组成原理、数据结构和概率论与数理统计,还包含少量选修课,如商业智能和数据可视化。数据工程课程群中课程设置的先后关系大致如图1所示。

由于计算机学科本身专业课程多、课时量大,在课程总学时不变的情况下,可能无法完成上述所有课程。为此,可将数据工程专业的专业课分成云计算课程模块、大数据课程模块以及技术要求更高的选修课。教师可根据学生的具体情况,选择一个课程模块进行培养,将专业选修课提供给有兴趣和学有余力的学生进阶学习。课程的模块划分见表1。

应用型工程师的培养主要强调对软件及工具的学习与掌握,教学设计方面要强化实验及实践课程。作为Google MapReduce和GFS技术的开源实现,Apache Hadoop集成了数据存储、数据处理、系统管理等功能,提供了强大的系统级解决方案,已经成为大数据领域事实上的标准。数据工程的大部分课程都围绕Hadoop生态圈中的软件或平台开展实验教学活动,主要学习Hadoop的以下开源产品:HDFS、MapReduce、HBase、Hive、Pig、Spark、Mahout。各门课程的实验工具见表2。

5 大数据实验室建设

大数据主要来自于物理世界(如科学实验数据和传感数据)和互联网(如社交网站和电子商务),包括大量的半结构化数据(如HTML和XML)和非结构化数据(如文本、图片、音频、视频和UGC)。云计算则可以为大数据处理提供强大的计算能力。作为技术平台的云计算环境与以往高校计算机专业的实验室环境完全不同,以往实验课的计算机通常是1:1使用,即一名学生使用一台计算机,如语言类课程和数据库课程;或者是N:1使用,即多名学生使用一台服务器,如软件工程和项目管理课程。

云计算环境的计算机是N:N使用,即一组学生使用一个集群并涉及多种计算机技术,如Linux系统、Shell命令、虚拟化技术、分布式存储、并行计算、Java编程、数据挖掘算法等,这在软硬件环境、实验管理、人员组织与搭配等方面,对高校实验室建设是一个新挑战。

每个云计算环境都由硬件和软件两部分构成。硬件方面至少由3~4台PC组成,其中1台Master、2台以上Slave和1台监控机;软件方面,Master/Slave可以由物理机安装CentOS或者VMware Workstation安装CentOS,之后安装JDK和Hadoop、HBase、Spark等软件工具,监控机安装Windows系统,使用SecureCRT、CuteFTP、UltraEdit对Master/Slave进行配置和管理,使用Eclipse作为开发工具。

3~5名学生组成一个实验小组,使用一个云计算环境,一个大数据实验室包含6~8个云计算环境,可以支持30~40名学生同时开展实验课;学生使用Java语言,结合MapReduce编程框架,完成数据挖掘和统计分析算法。这样的大数据实验室能够支持Hadoop与分布式系统、数据仓库与数据挖掘、大数据分析与挖掘等课程的使用。

6 结 语

在信息技術快速发展的今天,各行业对大数据人才的需求激增,如何开展大数据及云计算人才培养工作是目前国内外各层次院校都在思考的问题。我们提出在软件工程学科下设立数据工程专业方向,并在课程设置和实验室建设方面进行了初步研究,希望能为同类型的地方本科院校培养应用型新技术人才,为民办高校和独立学院不断提高办学水平,提供技术性和理论性的重要参考和依据。

参考文献:

[1] 李国杰. 大数据研究的科学价值[J]. 中国计算机学会通讯, 2012, 8(9): 8-15.

[2] IDC发布最新《数字宇宙研究报告》[EB/OL]. (2012-12-29)[2016-12-21]. http://old.ecas.cas.cn/xxkw/kbcd/201115_93655/ml/xxhjsyjcss/201212/t20121229_3730152.html.

[3] DELL EMC. Digital universe invaded by sensors[EB/OL]. [2016-12-21]. http://www.emc.com/about/news/press/2014/20140409-01.htm.

[4] 中华人民共和国科学技术部. 美国政府出台大数据研发计划[EB/OL]. (2012-04-24)[2016-12-21]. http://www.most.gov.cn/gnwkjdt/201204/t20120424_93877.htm.

[5] 新华网. 国务院常务会通过《关于促进大数据发展的行动纲要》[EB/OL]. (2015-08-19)[2016-12-21]. http://news.xinhuanet.com/politics/2015-08/19/c_1116309958.htm.

[6] 中央政府门户网站. 国民经济和社会发展第十二个五年规划纲要(全文)[EB/OL]. (2011-03-16)[2016-12-21]. http://www.gov.cn/2011lh/content_1825838.htm.

[7] 中国国家级经济技术开发区和边境经济合作区. 国外云计算技术概况[EB/OL]. (2014-08-07)[2016-12-21]. http://ezone.mofcom.gov.cn/article/ztxw/201408/20140800689701.shtml.

[8] 何海地. 美国大数据专业硕士研究生教育的背景、现状、特色与启示——全美23所知名大学数据分析硕士课程网站及相关信息分析研究[J]. 图书与情报, 2014(2): 48-56.

[9] IT经理网. IDC: 云计算人才缺口正在加大[EB/OL]. [2016-12-21]. http://www.ctocio.com/ccnews/10704.html.

[10] CSDN. 2014年IT企业招聘趋势调研报告: 外资企业招聘规模偏大、技术人员比重高[EB/OL]. (2014-01-24)[2016-12-21]. http://www.csdn.net/article/2014-01-24/2818263-IT-survey.

[11] CSDN. 最受程序员欢迎的公司榜单发布: 2015 IT人才招聘趋势分析[EB/OL]. (2015-01-20)[2016-12-21]. http://www.csdn.net/article/2015-01-16/2823595-careerfocus.

[12] 罗福强, 熊永福. 基于CDIO的云计算与大数据专业人才培养方案[J]. 计算机教育, 2015(1): 52-56.

(编辑:宋文婷)

猜你喜欢
软件工程云计算大数据
依托工作室的软件工程实践教学研究
基于工程教育认证的《软件工程》课程教学质量建设研究 
基于云计算的移动学习平台的设计
关于如何创新和完善计算机软件工程管理的探讨
实验云:理论教学与实验教学深度融合的助推器
云计算中的存储虚拟化技术应用
基于大数据背景下的智慧城市建设研究