基于阿里云的软件专业教学资源平台研究

2018-10-19 08:52吕太之鲍建成
通化师范学院学报 2018年10期
关键词:软件技术框架教学资源

吕太之,鲍建成

当前,云计算、大数据、物联网、移动计算等新技术得到广泛应用,经济社会各行业信息化步伐不断加快,社会整体信息化程度不断加深,信息技术对教育的革命性影响日趋明显[1].吴建平院士在“前沿信息技术 助力教育信息化创新发展”的报告中指出,互联网+前沿信息技术是教育信息化的重要组成部分,互联网/下一代互联网等基础前沿技术是教育信息化的重要基础.钟绍春在“信息时代教育创新的方向与路径”报告中强调一定要认清教育信息化的本质,并提出智慧教育发展的方向.

大数据时代无论是进行基础教育、初中等教育、高等职业教育、高等教育,或是完成社会培训,都需要构建各类教学资源.随着互联网、云计算、大数据等技术的发展,现代化教学方式层出不穷,从早期的远程教育、计算机辅助教学到现在的MOOC、移动互联网学习、翻转课堂教学等[2].这些教学方式无一例外都要以教学资源为基础.

软件技术专业由于其专业自身特点,专业发展较快,需要学生“知识、素质、能力”三者协调发展,而仅仅依靠传统教学方式已经无法满足人才培养要求,需要建设教学资源库来满足学生线上和线下教育,为学习者创造自主、方便、灵活的学习环境,使学习者能及时跟踪主流技术发展,促进学生自主学习、提高学生的专业技能.

江苏海事职业技术学院软件技术专业目前招生规模350多人,实践了“宽平台、分方向、分段式、订单化”人才培养模式,构建基于“岗位工作能力”的课程体系,为了进一步提高专业办学水平和教学质量,2017年成功申报江苏省高等职业教育高水平骨干专业建设项目.基于海事学院智慧校园建设规划、江苏省高等职业教育高水平骨干专业建设、海院特色专业、海院千帆团队等项目开发基于阿里云的软件专业教学资源平台.

软件专业教学资源平台使用MVC(Model View Controller)模式,基于SSM(Spring+Spring MVC+Mybatis)框架开发.基于SSM框架不仅可以提高开发效率,还能降低后期维护成本.将平台部署到阿里云平台,充分发挥阿里云平台的可靠性、扩展性,有效降低开发、部署和运维成本.

1 需求分析

1.1 功能需求

根据学院智慧校园、院级特色专业、江苏省高水平骨干专业、千帆团队建设等项目规划,以及软件教研室教师、相关专业教师、校内外专家的调研结果,设计软件专业教学资源平台.软件技术专业教学资源平台致力于建设与软件技术专业相关的资源体系,以多种方式进行资料的收集、整合、编辑和存储,构建一个涵盖应用软件技术专业教学资源的多媒体网络平台,实现系统化、规范化管理、资源共享.资源平台的建设以软件技术专业的社会需求为导向,根据软件技术专业的培养目标与就业岗位特点,在职业标准基础上,基于实际工作场景、实际项目导向的办学模式,建立软件技术专业的培养体系,构筑适合软件技术专业特色的资源平台.

1.2 预期用户

软件专业的教学资源平台主要分为四类,一类是学生,提供学生在线学习及相关电子资源的下载功能;一类是教师,提供教师指定课程和资源的管理功能;一类是校外使用者,提供部分资源的下载功能;最后一类是管理员,这类人员主要完成系统维护,对他们来说主要满足于功能的使用,而不是界面.

2 系统设计与实现

2.1 功能设计

软件专业教学平台主要由后台管理、PC前台、手机客户端三个部分组成.后台管理包括基础数据管理、培养计划管理、资源管理、在线学习管理、资源爬虫、用户管理、报表统计查询、论坛管理.后台管理功能图如图1所示.

图1 后台管理功能模块图

PC前台功能包括网站首页、课程查询、在线学习、作业完成、通知查询、在线问答、资源查询、资源下载功能.PC前台功能如图2所示.

图2 PC前台功能模块图

手机客户端完成在线视频查看功能,通过手机可以查看课程、浏览课程视频列表、播放视频等功能.

2.2 服务器端开发技术

软件专业教学资源平台系统实现采用MVC(Model View Controller)模式,基于SSM(Spring+Spring MVC+Mybatis)框架.平台架构如图3所示.

图3 平台开发框架图

服务器端开发中,控制层主要由Spring MVC框架和业务控制类共同实现.Spring MVC是Spring提供的一个强大而灵活的MVC框架,采用注解提供近似于POJO(Plain Ordinary Java Object)的开发模式,使得控制器的开发和测试更加简单[3].控制器通过依赖注入功能被框架调用.DispatcherServlet类是Spring MVC框架中的核心,是客户端访问的集中访问点,负责业务控制的分发.该类可以与Spring IoC容器无缝融合.

业务层主要实现业务逻辑、业务校验,是控制层和持久层之间的桥梁,管理业务级对象之间的依赖性和事务的持久性,该层调用持久层,根据操作结果返回相应的视图.

持久层实现Java语言对数据库的操作,这里通过Spring+Mybatis来实现.Spring是一个轻量级的控制反转和面向切面的容器框架.MyBatis是一个支持查询、存储过程和高级映射的优秀持久层框架.MyBatis消除了几乎所有的JDBC代码和参数的手工设置,以及结果集的检索[4].通过Spring+Mybatis框架简化Java语言对数据库的操作,提高了开发效率.

对软件专业教学资源平台访问的操作流程如图4所示.

图4 资源平台访问操作流程

步骤1:首先通过权限管理拦截器来判断该请求是否需要登录.需要登录的请求判断该用户是否登录且具有访问权限,如果不具备权限跳转回登录界面或给出无权限操作的提示.如果具备权限执行步骤2.

步骤2:DispatcherServlet处理页面请求,根据注解和访问地址分发给指定的控制器处理.平台中所有的控制器都继承自BaseController,在该类中提供了通用的属性和方法.

步骤3:指定业务控制器调用业务层完成用户请求,并根据调用结果存储数据到请求对象中,然后返回视图名.

步骤4:Spring MVC框架根据视图名将请求跳转到指定页面,通过页面将结果呈现给用户.

大部分子功能模块都分为管理控制器和查询控制器,管理控制器主要完成相应的增加、修改和删除操作.查询控制器完成列表查询、分组查询、分页查询等查询功能,该类控制器继承自ListPageController.控制器类存放在controller包下面,通过调用业务逻辑层来完成用户的请求.业务层存放在service包下.持久层由实体类和数据操作类组成,分别存放在bean和dao包下.

2.3 手机端开发技术

为了使软件专业教学资源平台能适应不同的手机平台,提供平台的扩展性,开发采用的Cordova框架.通过Cordova框架开发混合APP,使用HTML、CSS和JavaScript开发手机APP,支持 IOS、Android、Window Phone等多种操作系统[5].

前端设计采用HTML 5和JQuery Mobile框架,JQuery Mobile是用于创建移动Web应用的前端开发框架,使用HTML5&CSS3最小的脚本来布局网页[6].后端采用服务器端开发框架,即SSM框架.前端开发框架如图5所示.

图5 手机端系统架构

3 阿里云平台的部署

基于阿里云平台的软件专业教学资源平台可以很好的发挥云计算技术的优势,具有弹性化、灵活性、可扩展的服务,有效降低了运行和维护的成本[7-8].平台应用架构使用到阿里云的弹性计算(Elastic Compute,EC)、服务负载均衡(Server Load Balancer,SLB)、关系型数据库(Re⁃lation Database,RDS)、对象存储服务(Object Storage Service,OSS).资源平台部署在ECS服务器上,ECS服务器采用Center OS系统.数据库部署在RDS数据库服务器上,采用MySQL数据库上.OSS服务器上存储视频、文档、软件等资源文件.ECS、SLB和RDS服务器在一个可用区内,ECS服务器和RDS服务器之间通过阿里云局域网访问.平台部署架构如图6所示.

图6 平台部署框架图

4 在项目教学中的应用

在软件技术专业教学引入项目化教学重中之重是选择好的项目案例[9].软件专业教学资源平台满足项目教学案例的真实性、专业性、可分解性要求,同时由于是学生平常使用的平台,更方便学生快速上手.

在教学实践过程中将其分解成若干门课程的案例及实训项目.网页前端成为Web前端开发课程的实训项目.数据库设计成为数据库原理课程中贯穿课程的实验项目.页面验证和页面特效分解成为若干JavaScript课程实验.软件专业教学资源平台已成为软件测试课程的实训项目,由软件测试专业的学生编写测试案例,进行测试,填写测试报告.使用的SSM框架平台成为Java框架技术课程的实训项目.整个项目成为软件技术专业十周大实训课程的实训项目,学生根据不同的专业方向使用Java EE或者ASP.NET技术实现平台中的3~5个模块,并指导学生申请阿里云的学生账号,将项目部署在云平台上进行测试.

5 结束语

软件专业教学资源平台在云平台环境下进行了功能、可靠性、安全性、兼容性、性能等多方面的测试.测试结果表明平台达到预期效果.平台采用了当前流行的SSM框架、部署在云平台上,后台使用开源数据库MySQL,系统结构清晰明确;平台功能全面,能基本满足软件专业学生、教师以及社会人员的学习需求.平台充分考虑安全性,不同权限的人员只能看到自己有权限访问的内容,有效地保证了数据的安全性.

猜你喜欢
软件技术框架教学资源
有机框架材料的后合成交换
框架
基于大数据分析的集合式EPC总承包项目管理软件技术的应用
丰富历史教学资源 提升课堂教学质量
民用飞机航电系统虚拟教学资源建设
新教改背景下高校软件技术专业教学的课程改革探究
高校冰上教学资源社会开放的意义及管理模式
UGNX软件技术在农机从业人员技术培训中的应用
基于软件技术的组合逻辑电路模型分析与实现研究
高职“计算机应用基础”教学资源网建设的探讨