课 程 基 本 信 息 课程代码:SE6408 课程名称(中/英): 云计算与大数据技术/Cloud Computing and Big Data Technology 学 分:2.5 课程性质:选修 总学时:46 开课学期:6 理论学时:36 实践学时:10 适用专业:软件工程 先修课程:面向对象程序设计、数据结构、数据库系统原理及应用 开课单位:信息科学与工程学院 制定(修订)人:XXX 制定(修订)时间:XX.5
一、课程简介
本课程是软件工程专业的专业选修课之一,主要介绍云计算与大数据技术,结合理论和
实践介绍Hadoop这一高性能大数据处理工具的开发技巧。通过本课程的学习,使学生掌握如何用Hadoop系列工具来解决具体的问题,具备基于Hadoop的基本开发能力,为后续学习打下必要的理论和实践基础。 二、课程目标 (一)课程具体目标
能够从软件工程的角度,针对软件工程领域的复杂工程问题,应用云计算与大数据技术为相关软件开发项目的系统概要设计与详细设计打下基础。 (二)课程目标与专业毕业要求的关系
表1 本课程对专业毕业要求及其指标点的支撑
课程目支撑的毕业要求 标 毕业要求3.设计/开发解决方案能力:能够针对软目标1 件工程领域的复杂工程问题设计解决方案,开发算机软硬件开发项目中指标点3.1 能够在计支撑的毕业要求指标点 审核人:XX 审核时间:XX.6 大纲版本:XX 批准人:XX 批准时间:XX.6 满足特定需求的软硬件系统或组件,并能够在设计/开发环节中体现创新意识,考虑社会、健康、安全、法律、文化及环境等因素。 (三)课程对解决复杂工程问题能力的培养
进行系统概要设计和详细设计。 在课程理论知识讲授环节,不但注重培养学生对云计算与大数据技术的深入理解,使学生掌握解决该领域复杂工程问题所需的基本技术及其在实际应用中的实践技巧,而且跟踪行业发展前沿,探讨当前热点问题以激发学生的学习兴趣。在实验教学环节,以培养学生解决复杂工程问题的能力为目标,围绕课程支撑的课程目标安排实验项目,设计实验内容,明确实验要求。在课程考核环节,通过实验、作业和期末作品综合锻炼和检验学生应用云计算与大数据技术解决复杂工程问题的所需的知识和能力。总之,本课程的教学遵循了培养学生解决复杂工程问题能力的理念和要求,有效支撑了课程目标的达成。 三、教学内容及基本要求 (一)理论教学
第1单元 云计算及大数据处理技术介绍(4课时)
1.教学内容 (1)云计算的概念 (2)云计算发展现状 (3)大数据的概念 (4)大数据的应用 (5)大数据关键技术 2.基本要求
(1)了解云计算和大数据的形成与发展; (2)了解大数据处理的基本技术;
(3)掌握大数据的概念、应用、大数据处理关键技术等; (4)理解云计算的工作原理。 3.支撑的课程目标
本单元各知识点的讲授和学习,有助于支撑“课程目标:能够从软件工程的角度,针对软件工程领域的复杂工程问题,应用云计算与大数据技术为相关软件开发项目的系统概要设计与详细设计打下基础。”,使学生了解云计算和大数据的形成与发展,了解大数据处理的基本技术,掌握大数据的概念、应用、大数据处理关键技术等,理解云计算的工作原理,支持学生在软件项目设计过程中应用云计算与大数据技术等相关目标的达成。此外,通过“互动、开放”的课堂形式,采用探究式学习、问题导入的教学方法,激发学生的学习兴趣,进一步辅助达成课程目标。
第2单元 Hadoop文件系统HDFS及其文件结构(6课时)
1.教学内容
(1)Hadoop项目简介 (2)HDFS体系结构 (3)HDFS关键运行机制 (4)Hadoop vs Google (5)Hadoop API 2.基本要求
(1)了解Hadoop项目发展;
(2)掌握HDFS体系结构以及关键运行机制; (3)了解HDFS和GFS的差异;
(4)熟悉Hadoop API数据应用接口。 3.支撑的课程目标
本单元各知识点的讲授和学习,有助于支撑“课程目标:能够从软件工程的角度,针对软件工程领域的复杂工程问题,应用云计算与大数据技术为相关软件开发项目的系统概要设计与详细设计打下基础。”,使学生了解Hadoop项目发展,掌握HDFS体系结构以及关键运行机制;了解HDFS和GFS的差异,熟悉Hadoop API数据应用接口,支持学生在软件项目设计过程中应用云计算与大数据技术等相关目标的达成。此外,通过“互动、开放”的课堂形式,采用探究式学习、问题导入的教学方法,激发学生的学习兴趣,进一步辅助达成课程目标。
第3单元 MapReduce编程模型及其应用开发(8课时)
1.教学内容
(1)MapReduce产生背景 (2)MapReduce编程模型 (3)MapReduce实现机制 (4)MapReduce案例分析 2.基本要求
(1)熟悉MapReduce编程模型; (2)掌握MapReduce应用开发。 3.支撑的课程目标
本单元各知识点的讲授和学习,有助于支撑“课程目标:能够从软件工程的角度,针对软件工程领域的复杂工程问题,应用云计算与大数据技术为相关软件开发项目的系统概要设计与详细设计打下基础。”,使学生熟悉MapReduce编程模型,掌握MapReduce应用开发,支持学生在软件项目设计过程中应用云计算与大数据技术等相关目标的达成。此外,通过“互动、开放”的课堂形式,采用探究式学习、问题导入的教学方法,激发学生的学习兴趣,进一步辅助达成课程目标。
第4单元 HBase和ZooKeeper使用(6课时)
1.教学内容
(1)Hbase运行机制简介
(2)HBase与HDFS (3)HBase的对外接口
(4)ZooKeeper的数据模型 (5)ZooKeeper的读写机制 (6)ZooKeeper的使用方法 2.基本要求
(1)了解Hbase运行机制
(2)理解HBase与HDFS关系以及HBase的接口 (3)掌握ZooKeeper的数据模型 (4)熟悉ZooKeeper的读写机制 (5)掌握ZooKeeper的使用方法 3.支撑的课程目标
本单元各知识点的讲授和学习,有助于支撑“课程目标:能够从软件工程的角度,针对软件工程领域的复杂工程问题,应用云计算与大数据技术为相关软件开发项目的系统概要设计与详细设计打下基础。”,使学生了解Hbase运行机制。理解HBase与HDFS关系以及HBase的接口,掌握ZooKeeper的数据模型,熟悉ZooKeeper的读写机制,掌握ZooKeeper的使用方法,支持学生在软件项目设计过程中应用云计算与大数据技术等相关目标的达成。此外,通过“互动、开放”的课堂形式,采用探究式学习、问题导入的教学方法,激发学生的学习兴趣,进一步辅助达成课程目标。
第5单元 大数据挖掘工具(6课时)
1.教学内容
(1)Mahout安装 (2)聚类算法 (3)分类算法
(4)Mahout的使用案例 2.基本要求
(1)了解数据仓库Mahout作用及其工作原理; (2)理解Mahout关键性技术;
(3)通过Mahout的实用案例掌握Hive基本应用。 3.支撑的课程目标
本单元各知识点的讲授和学习,有助于支撑“课程目标:能够从软件工程的角度,针对软件工程领域的复杂工程问题,应用云计算与大数据技术为相关软件开发项目的系统概要设计与详细设计打下基础。”,使学生了解数据仓库Mahout作用及其工作原理;理解Mahout关键性技术;通过Mahout的实用案例掌握Hive基本应用,支持学生在软件项目设计过程中应用云计算与大数据技术等相关目标的达成。此外,通过“互动、开放”的课堂形式,采用探究式学习、问题导入的教学方法,激发学生的学习兴趣,进一步辅助达成课程目标。
第6单元 数据仓库Hive使用(6课时)
1.教学内容
(1)Hive设计目标 (2)Hive数据模型 (3)Hive关键性技术 (4)Hive的使用案例例 2.基本要求
(1)了解数据仓库Hive作用及其工作原理; (2)理解Hive关键性技术;
(3)通过Hive的实用案例掌握Hive基本应用。 3.支撑的课程目标
本单元各知识点的讲授和学习,有助于支撑“课程目标:能够从软件工程的角度,针对软件工程领域的复杂工程问题,应用云计算与大数据技术为相关软件开发项目的系统概要设计与详细设计打下基础。”,使学生了解数据仓库Hive作用及其工作原理,理解Hive关键性技术,通过Hive的实用案例掌握Hive基本应用,支持学生在软件项目设计过程中应用云计算与大数据技术等相关目标的达成。此外,通过“互动、开放”的课堂形式,采用探究式学习、问题导入的教学方法,激发学生的学习兴趣,进一步辅助达成课程目标。 (二)实验教学
实验项目1.虚拟机环境配置运行(4学时)
1.实验内容
(1)安装配置常用的桌面版虚拟机软件,主要使用免费开源的Virtual Box (2)在虚拟机中安装操作系统或使用已有的虚拟硬盘
(3)熟悉并使用虚拟机外部环境和内部系统之间数据交流的常见方法
(4)基于虚拟机软件,在一台宿主机中搭建>=3台的虚拟机的虚拟局域网并确保之间能互相通信
2.基本要求
(1)了解VirtualBox软件的常见功能;
(2)理解和熟悉虚拟机和虚拟网络的常见操作模式; 3.支撑的课程目标
本实验项目学生在实作过程可以了解VirtualBox软件的常见功能,理解和熟悉虚拟机和虚拟网络的常见操作模式,有助于支撑“课程目标:能够从软件工程的角度,针对软件工程领域的复杂工程问题,应用云计算与大数据技术为相关软件开发项目的系统概要设计与详细设计打下基础。”。本实验通过任务驱动方式引导学生依据所掌握的相关知识点,寻找问题的解决方案,加深相关知识点的理解,达到课程目标的要求。
实验项目2.Hadoop环境搭建验证(6学时)
1.实验内容
(1)在虚拟机系统上搭建并运行Hadoop单点模式,复制并运行MapReduce任务。 (2)在虚拟局域网中搭建并运行Hadoop分布式模式,复制并运行MapReduce任务。 2.基本要求
(1)理解和熟悉MapReduce体系结构 (2)熟悉常见的Hadoop的使用方法 3.支撑的课程目标
本实验项目学生在实作过程可以理解和熟悉MapReduce体系结构,熟悉常见的Hadoop的使用方法,有助于支撑“课程目标:能够从软件工程的角度,针对软件工程领域的复杂工程问题,应用云计算与大数据技术为相关软件开发项目的系统概要设计与详细设计打下基础。”。本实验通过任务驱动方式引导学生依据所掌握的相关知识点,寻找问题的解决方案,加深相关知识点的理解,达到课程目标的要求。 四、教学方式、教学方法及课时安排 (一)教学方式
表2 课程目标与教学环节
教学环节 序号 课程目标 讲授 能够从软件工程的角度,针对软件工程领域的复杂工程问题,应用云计算与大1 数据技术为相关软件开发项目的系统概要设计与详细设计打下基础。
以课堂讲授为主,结合课堂讲授内容安排课内实验及课后作业,加深对理论教学内容的理解和认识,培养工程实践能力。 (二)教学方法
本课程贯彻“以学生为主体,以教师为主导”的教学思想,采用“互动、开放”的课堂形式,具体以课堂教学为主,结合自学、课后作业和实验教学,采用启发式、问题式的教学方法,基于项目的实际问题,提高学生解决复杂工程问题的能力,达到课程目标的要求。
云计算与大数据技术的教学中引入了任务驱动的方法及其流程框架。学生在完成复合的相关任务的过程中学习概念、方法和技术,在开展具体任务的进程中探索相应的途径。由教师带领的实际情况显示在这种复合组织的任务驱动下更易于学生投入其中,亦有助于达成既定的课程目标,“能够从软件工程的角度,针对软件工程领域的复杂工程问题,应用云计算与大数据技术为相关软件开发项目的系统概要设计与详细设计打下基础。”。 (三)课时安排
本课程总学时46学时,其中:讲授36学时,实验10学时,具体教学安排如下表。
表3 学时分配与教学方法
序号 1 2 3 4 5 教学内容 云计算及大数据处理技术介绍 Hadoop文件系统HDFS及其文件结构 MapReduce编程模型及其应用开发 HBase和ZooKeeper使用 大数据挖掘工具 学时分配 4 6 8 6 6 教学方法 讲授 讲授 讲授 讲授 讲授 ✓ ✓ ✓ 实验 作业 6 7 8 数据仓库Hive使用 实验1:虚拟机环境配置运行 实验2:Hadoop环境搭建验证 合计
五、考核方式与成绩评定办法 (一)考核方式及具体要求
6 4 6 46 讲授 实验 实验 最终成绩由期末作品、课内实验和课后作业组成,具体如下:
期末作品(占80%):作品考核学生综合的应用云计算与大数据技术于软件项目设计和实现过程中的能力,学生需提交可运行的相关作品及源程序代码。
课内实验(占10%):主要考核环境的配置和搭建及验证能力,学生可根据任课教师提出的实验题目与目标,进行环境的配置、搭建及验证,最后完成实验报告。
课后作业(占10%):针对每节课的知识点,考核课程知识的理解和掌握程度,以及对课程知识的简单应用能力。
课程考核能够对学生在软件工程角度面向该领域的复杂工程问题应用云计算及大数据技术的能力进行有效评估,支持“课程目标:能够从软件工程的角度,针对软件工程领域的复杂工程问题,应用云计算与大数据技术为相关软件开发项目的系统概要设计与详细设计打下基础。”,反映了本课程对本专业毕业要求达成情况的支撑关系。 (二)成绩评定办法及依据
表4 考核方式及成绩评定办法
成绩评定指标与依课程目标 考核方式/占比 考核内容与方法 据 目标: 能够从软件工程的角度,针对软件工程领域的复杂工程问题,应用云计算与大数据技术为相关软件开发项目的系统概要设计与详细设计打下基础。 课后作业/10% 作业 作业质量 期末作品/80% 课内实验/10% 软件作品源代码 实验报告 源代码质量 报告质量
因篇幅问题不能全部显示,请点此查看更多更全内容