大学生创新创业项目移动管理平台的设计与实现

2021-03-17 10:35赵振红
关键词:创业项目数据库模块

赵振红

(渤海大学 教育科学学院,辽宁 锦州 121013)

0 引言

创新是一个国家得以持之以恒发展的核心驱动力[1],创业是增加就业的有效渠道,“大众创业、万众创新”是在经济发展进入新常态时期提出的,作为深入实施创新驱动发展战略的重要支撑,有利于创造财富的源泉充分涌流,摆脱经济增长乏力的危机,全面提升综合国力.以创新创业为范式的大学转型发展成为高等教育变革的基本方向[2],以创造性、创新性和开创性为内涵,建立适合社会发展、产业企业需求和学生成长发展需要的教育发展体系[3],培育大学生的创业意识、创新精神和创新创业能力,以创业带动就业能力升级,解决大学生就业难题,破除“等、靠、要”等思维方式,推动创新创业教育实施走向专业化、科学化与高效化[4].《国务院关于推动创新创业高质量发展打造“双创”升级版的意见》指出[5],强化大学生创新创业教育培训,推动高校科研院所创新创业深度融合,促进创新创业平台服务升级,对优秀创新创业项目加强后续跟踪支持,提升创新创业项目对大学生创新创新教育的引领作用.

创新创业项目是高校创新创业教育体系的重要组成部分,能够引导大学生建立创新创业价值目标、激发创新创业热情,培养团队合作精神和尽早适应社会能力[6].大学生创新创业项目在横向上分为创新训练项目、创业训练项目和创业实践项目,纵向上分为校级、省级和国家级[7].创新创业项目的组织和管理是非常重要的工作,传统以手工为主的管理方式存在很多弊端,突出表现在三个方面:①管理工作繁重,工作人员要对大量的项目材料归纳、汇总、保存,专家邀约难度大、协调工作繁琐,需要与相关人员进行大量的信息沟通;②管理工作不公开、不透明,信息传递不及时,经常发生漏报现象,评审环节人为操纵普遍存在;③影响项目研究进展,项目的申报、开题、中期和结题等环节,需要提交很多材料,信息交流不畅通或材料传递缓慢,无法保证按时完成.信息技术发展为大学生创新创业项目管理提供了全新手段,尤其是移动信息时代到来,智能手机成为大学生必备的交流和学习工具,开发大学生创新创业项目移动管理平台,工作人员线上发布项目相关信息并进行综合管理,教师对学生提供精准线上指导,学生线上接收各类信息并提交相关材料,全面提升创新创业项目管理水平,充分发挥创新创业项目在提高人才培养质量方面的重要作用.

1 技术框架设计

框架具有松散耦合和高扩展性等优点,能够显著提高开发效率.移动开发可选择的框架很多,本平台使用Apache的Cordova,是目前市场上占有率最高的混合移动应用开发框架[8].Cordova基于HTML5、CSS和JavaScript,尤其适合当下最流行的Hybrid APP移动端开发技术[9],统一使用JavaScript接口访问设备本地API,除了支持Android和iOS两大主流移动操作系统外,也支持Windows Phone和BlackBerry等市场占有率较低的移动操作系统,轻松调用Android、iOS、Symbian和Bada等移动设备上多种原生方法.Cordova拥有众多插件,利用Java脚本的标准接口调用,使用同步或异步处理不同级别通信,基于Web技术的UI界面给用户提供良好的交互体验.Cordova开发框架由Web应用层、桥接层、组件层和操作系统层构成,各层之间通过应用程序接口访问,框架结构如图1所示.

2 功能框架设计

功能设计又称总体设计,在软件生命周期中属于概要设计范畴[10],基于高内聚、低耦合和信息隐藏等原则,在逻辑上将系统划分为若干个独立的功能模块,便于编程实现.通常的功能设计以工作流程为基础,按照用户角色进行功能模块划分,每个用户角色使用多个功能模块,每个功能模块被多个用户角色所使用,用户角色和功能模块之间的依赖关系通过权限分配实现.本平台的用户角色包括领导、管理人员、教师、学生、专家和系统管理员等六类.其中,领导包括学校领导和学院领导,主要工作是查询和审批,掌握项目总体情况;管理人员包括学校管理人员和学院管理人员,学校管理人员负责全校项目管理,学院管理人员负责传达学校信息并管理学院项目;教师的主要工作是在线指导学生项目申报、解决项目实施过程中学生的难题;学生是本平台的最核心用户,完成从项目申报到结题的全部工作;专家的主要工作是线上评审项目;系统管理员负责系统的运行和维护.本平台的工程流程按照“项目立项→项目申报→项目评审→项目开题→项目中期→项目结项”的过程,项目执行过程还涉及“项目变更”和“项目经费”,系统运行还需要“基本信息”和“系统维护”,基于此,将本平台功能划分为十个模块,每个模块又包括若干个子模块,设计结果如图2所示.

对于图2所示的平台功能构架,各个模块功能简要描述如下[11-13]:项目立项管理,主要是管理人员发布信息,教师对学生进行线上指导;项目申报管理,主要是学生填写申报信息,管理人员审查;项目评审管理,主要是管理人员分配项目,专家线上评审;项目开题管理,主要是学生填写开题报告,提交研究方案;项目中期管理,主要是学生填写中期报告,专家线上评审;项目结题管理,主要是学生填写结题报告、登记结题成果,专家线上评审;项目变更管理,主要是项目成员和指导教师的变更与审批;项目经费管理,主要是对经费的预算、报销和结算进行管理;基本信息管理,主要是对相关信息进行编码和规范化管理;系统维护管理,主要保障系统运行的相关安全性和常规性维护工作.

图2 大学生创新创业项目移动管理平台功能框架

3 关键技术实现

常规性软件功能实现相对容易,软件实现的重点是解决关键技术问题,本平台的关键技术是开发环境搭建、打包HTML5混合App和Sqlite数据缓存模块.

3.1 开发环境搭建

本平台需要搭建的开发环境由四项构成:

(1)安装开发工具,包括Eclipse和WebStorm.Eclipse是应用最广泛的跨平台开源集成开发环境,首先下载64位的“Eclipse IDE for Java EE Developers”安装包,然后解压,选中eclipse.exe文件,在桌面创建快捷方式.WebStorm是JavaScript开发工具、最强大的HTML5编辑器,官网下载正版安装包后安装,然后在网上搜索激活用服务器网址和激活用编码,注册激活即可使用.

(2)安装Java开发环境,包括JDK和JRE.官网下载JDK安装包“jdk-17_windows-x64_bin.exe”,双击进入安装界面,修改JDK安装目录,然后开始安装;JDK安装成功后,修改JRE安装目录,然后开始安装.JRE安装成功后,配置“JAVA_HOME、CLASSPATH”等环境变量,输入“java-version”命令检查配置是否成功.

(3)安装运行环境,包括Cordova和Node.js.Cordova可以使用git安装,也可以使用Node.js安装.由于本系统同时使用Node.js,因此使用Node.js安装.首先,下载Node.js安装包,运行安装文件即可,安装完成后,输入“npm-v”命令检查是否安装成功;然后,运行命令“npm install-g cordova”安装Cordova,安装完成后,输入“cordova-v”命令检查是否安装成功.

(4)安装Android开发环境,包括SDK和NDK.SDK是Android软件开发工具包,官网下载SDK安装包,一直下一步安装,安装完成后配置环境变量,特别注意Path配置为tools目录下,配置完成后,输入“android-h”命令检查是否安装成功.NDK帮助开发者快速开发C或C++动态库,可以自动将so和Java应用一起打包.SDK安装相对简单,官网下载SDK安装包,解压在本地文件夹,将环境变量NDKROOT设置为解压文件夹.

3.2 打包HTML5 混合App

Android和iOS已经占据智能手机操作系统99.9%的市场份额,前几年还被炒作的Windows Phone和BlackBerry等操作系统目前已经退出市场竞争[14].因此,目前的移动App开发主要是针对Android和iOS操作系统.很长时间以来,针对同一款App需要开发Android和iOS两个版本,开发成本高且维护困难,Cordova解决了这一难题,即将HTML5开发的页面,打包成Android和iOS版本,解决了两种版本程序的差异性问题,还能够实现对手机众多接口的调用,提高了系统维护性.

Android或iOS执行将HTML5页面打包成的App时,将请求交由Node.Js服务器处理,Node.Js是JavaS⁃cript编程语言的运行环境,其核心解释器源自Google的V8引擎,V8引擎在执行过程中既有解释器、又有编译器,首先将源代码转换为抽象语法树,然后判断是否为热点代码,如果是热点代码,使用编译器,一次编译热点代码为机器码,执行机器码输出结果;如果非热点代码,使用解释器,逐条解释执行输出结果.将请求交由Node.Js服务器处理,流程如图3所示.

图3 Node.Js服务器流程

3.3 Sqlite 数据缓存模块

Sqlite原本是嵌入式数据库,运行在嵌入式设备或移动设备上,占用系统资源少,具有较高的可靠性,适用于无人维护或恶劣环境.后来Sqlite被大量客户端用作缓存数据库,对于频繁使用的数据不需要多次读取服务器,减轻了服务器存取和网络传输压力,显著提高了处理速度.Apache Cordova的Cordova-Data⁃CachePlugin和Cordova-SQLitePlugin插件,提供了操作接口,为实现数据缓存功能创造了条件.Android和iOS都提供了沙盒机制,保护用户不受恶意应用侵害,每个应用程序都有独立的存储空间,禁止不同的应用相互访问数据.但由于Android和iOS是不同的操作系统,设计原理不同、程序路径不同、沙盒机制和权限机制也不同,因此,Sqlite数据缓存模块需要分别设计,如图4所示.

图4所示的Sqlite数据缓存模块由四层构成:JavaScript封装层,通过Java脚本语言实现对数据库的CRUD操作,即增加数据、检索数据、更新数据和删除数据,还包括对原生操作的封闭,原生操作主要用于数据库对象的创建、修改和维护.Apache Cordova层,提供Cordova-DataCachePlugin插件和Cordova-SQLitePlu⁃gin插件接口.数据库操作层,沙盒主要用于对文件操作,其中,iOS的读写文件在document目录,嵌入在应用程序中的文件也只能拷贝到document目录才能进行读写操作;Android的assets或raw目录存放初始数据文件,只能拷贝到沙盒环境下才能进行读写操作[15].Cordova-SQLitePlugin提供了四个核心类库,其中,DB⁃exception类用于异常处理、DBconnect类用于数据库连接、DBtransaction类用于事务处理、DBbackup类用于数据库备份.对数据库的CRUD操作则由Cordova-DataCachePlugin插件的execute()函数实现,检索数据、增加数据、更新数据和删除数据分别调用SmartDbHelper的query()、insert()、update()和delete(),数据库原生语句调用SmartDbHelper的exec SQL(),执行时通过actionDispatcher根据action进行逻辑分发.

图4 Sqlite数据缓存模块

4 结束语

大学生创新创业项目移动管理平台符合信息时代的管理需要,本文研究解决了平台开发的关键性技术问题.创新之处体现在四个方面:①构建了由Web应用层、桥接层、组件层和操作系统层组成的Cordova开发框架,使开发思路具体化和清晰化;②按照项目管理流程设计了功能框架,开发人员可直接部署,操作人员使用方便;③打包HTML5混合App,解决了Android和iOS两种版本程序的差异性问题,提高了程序的健壮性和维护性;④Sqlite数据缓存,直接利用Cordova插件模块化实现,减轻了服务器存取和网络传输压力.不足之处是受文章篇幅和研究时间所限,没有给出框架和模块的具体实现代码,这需要开发人员独立解决.本文的研究成果,为大学生创新创业项目移动管理平台开发提供完整解决方案,对其他移动应用项目开发也具有一定的指导作用.

猜你喜欢
创业项目数据库模块
28通道收发处理模块设计
“选修3—3”模块的复习备考
山西18个农村创业项目获资金补助
“三晋新农人”登台竞秀创新创业项目获赞 第五届“三晋新农人”创业创新竞赛成功举办
促进大学生创新创业项目可持续发展的路径研究
基于大学生创新创业项目驱动的软件工程课程教学模式分析
数据库
数据库
必修模块相关知识过关训练
数据库