网站首页  词典首页

请输入您要查询的论文:

 

标题 高校学生工作信息在线采集系统设计与实现
范文

    黄中海 罗紫航 王萌 朱行浩 黄建铭

    

    

    

    摘 要:为解决高校日常学生工作中信息快速、准确采集与统一管理的问题,介绍一种利用CodeIgniter框架技术,充分考虑网络流量优化,基于B/S架构的高校学生工作信息采集系统,并对系统实现所涉及的动态表单创建、存储与解析,以及电子签名、Redis消息队列等关键技术进行阐述。通过测试运行,系统在实现日常学生工作中信息采集的规范性与时效性,保证学生隐私安全性以及易用性方面取得了较好效果。

    关键词:表格电子化;信息采集;权限控制;CodeIgniter

    DOI:10. 11907/rjdk. 191997 开放科学(资源服务)标识码(OSID):

    中图分类号:TP319文献标识码:A 文章编号:1672-7800(2020)007-0144-04

    The Design and Implementation of an Online Information Collection System

    for College Students Work

    HUANG Zhong-hai, LUO Zi-hang, WANG Meng, ZHU Xing-hao, HUANG Jian-ming

    (School of Management, Wuhan University of Science and Technology,Wuhan 430065,China)

    Abstract: In order to solve the problem of fast and accurate information collection and unified management in the daily work of college students, this paper introduces an information collection system for college students work based on B/S framework, which uses CodeIgniter framework technology and fully considers the optimization of network traffic. The key technologies of creating, storing and parsing dynamic forms, electronic signature and Redis message queue involved in the implementation of the system are described. Through the test, the system has achieved practical results in realizing the standardization and timeliness of information collection in the daily work of students, the security of students privacy and the ease of use of the system.

    Key Words: electronization of forms; information collection; privilege control; CodeIgniter

    0 引言

    如今各高校學生工作信息采集及管理方式大多还停留在通过即时通讯软件及电子邮箱收发Word文件、Excel表格,并辅以纸质表格填写存档的阶段。由于每次采集的信息量大小与格式要求不一,若学生群体基数很大,可能会出现重复填写、格式错误等问题,由此衍生出的进一步核查与重填既增加了工作人员的工作量和难度,也降低了信息收集的时效性。近年来国内出现了以腾讯文档、WPS在线文档等为代表的在线文档软件,可应用于多人协作填写工作,但难以实现数据自动归档、智能化辅助填写等功能,且学生的隐私敏感信息存在泄露与被利用的风险。

    目前,在高校管理信息化建设方面,很多学者进行了大量研究。如张运敏等[1]阐述对学生基本信息进行精准管理,推进学生信息采集手段现代化以及强化信息审核力度的思想;李淑玲[2]对当前高校学生管理信息化建设现状进行深入分析,提出应构建学生数字化信息管理体系,以实现对学生信息的快速搜寻、查找、与管理;刘影等[3]提出高校管理信息化建设中存在的问题与解决对策;张超[4]研究了大数据背景下高校学生隐私保护的基本问题。在应用信息技术方面,程佳等[5]提出通用Web表单数据采集系统的设计与应用方案;殷旭等[6]阐述了基于Web表单的工作流管理系统;黄慧等[7]将AJAX技术应用于B/S电子表单填写模式中,增强了系统的可交互性和易用性;宋奕爽等[8-9]研究并设计了Web动态表单生成引擎;喻莹莹等[10]探讨了前后端分离开发技术在动态表单系统设计中的应用。

    在已有研究基础上,本文针对高校学生工作信息采集系统,设计一种新型信息采集业务流程,在权限管理与学生隐私安全方面作了进一步探究,考虑在实际应用中移动终端设备的人机交互问题与网络流量优化问题,并进一步探讨在典型应用场景下所需的扩展功能如电子签名设计与应用等。

    1 系统设计

    1.1 功能模块设计

    学生工作信息采集系统以电子表单为基础,实现信息采集表单的多样性、通用性与可共享性[11]。系统功能模块如图1所示,系统运维模块主要包括用户基础信息管理、权限配置以及系统日常运行维护功能;汇总表模块主要针对工作信息采集统计业务,通过汇总表创建、组织填写、班级干部审核,最终完成统计与数据导出工作;工作表模块主要包括登记、申请类Word表格在线填写与文档打印导出功能。

    1.2 系统架构设计

    根据系统实践要求,学生工作信息采集系统应具备安全性、可靠性、可维护性、可容错性以及可拓展性。系统采用B/S(Browser/Server)架构设计模式,主要服务设施包括:①Apache Web服务器,受理用户连接请求;②应用服务器,处理系统业务逻辑;③MySQL数据库,存储系统数据与业务数据。

    为提升系统数据读取性能,系统采用Redis作为系统内存数据库。Redis是一个key-value存储系统,支持存储的value类型包括string(字符串)、list(链表)、set(集合)、zset(有序集合)和hash(哈希类型),数据均存储在内存中[12]。

    系统前端基于HTML5规范,遵循前后端分离的设计思想,数据交互使用JSON(JavaScript Object Notation),且易读性强、解析快速[13]。系统后端应用程序基于MVC设计模式,使用PHP环境下的CodeIgniter作为基础开发框架。CodeIgniter是一种基于PHP开发语言的轻量级开发框架,具有代码库丰富、配置简单以及快速、简洁的特性[14]。CodeIgniter较好地实现了MVC设计模式,即将系统分为模型(Model)、视图(View)、控制器(Controller)3个模块。各模块相对独立,降低了系统模块间的耦合性,提高了系统的可维护性。

    1.3 业务流程设计

    1.3.1 信息采集汇总流程

    学生信息采集汇总是系统的主要业务功能之一,涉及的主要工作流程如图2所示。其核心流程为:信息采集方登录系统,创建汇总表任务,包括编辑数据项、配置属性、设置汇总对象与审核人权限等;任务创建完成后,通过分享链接到工作群的形式通知填写对象填报信息,并通知审核人按时完成审核工作;填写人(一般为学生)通过链接进入系统,填写必填的条目内容,确认无误后提交;信息采集需求方可实时查看当前汇总完成状态与各班填写进度,汇总完成后即可查看或导出采集的信息,进行后续数据分析与信息归档管理工作[15]。

    1.3.2 工作模板表流程

    工作模板表一般是高校各部门基于工作需要,采集信息并进行存档的专用表,如学分申请表、奖学金申请表、社会实践认证表等。这类表通常以Word表格形式为主,有严格的填写规范,编制完成后可复用时间较长,需要填写人签字以及打印存檔。

    为确保官方信息的准确性,工作模板表由管理员上传,检查并配置相关属性。学生登录系统,通过填写链接或直接搜索两种途径获取所需表格,然后直接在浏览器上在线编辑填写,系统提供格式验证功能辅助规范输入,填写无误后即可打印或导出文档。

    1.4 权限控制设计

    作为信息采集入口,用户隐私与数据安全至关重要[16-17]。系统设计有两种权限控制模式:①基于组织结构的权限控制。根据高校组织结构中的层级关系设置权限类别,如学院管理员、年级管理员、班级管理员等,主要管理学生基础信息及部分学生事务数据;②以表创建者为中心的权限控制。表创建者对其创建的表拥有管理与编辑权限,并能分配表的查看、审核及填写权限。

    对于新创建的表,通过系统管理员审核,可以转变为基于组织结构的权限控制模式,表中数据供组织结构在权限控制下共享。

    2 系统实现关键技术

    2.1 动态表创建、存储与解析

    由于每次信息采集的内容与类型可能都不太一致,提供给用户的根据具体情况自定义表结构、动态生成与管理表单等功能是简化信息采集及适配各类应用场景的关键。

    (1)动态表创建。用户与网站交互生成的表定义数据,将以序列化JSON的方式传递给后台服务器,服务器根据规则动态创建关系表并存储表的定义信息。动态表定义的主要JSON数据结构如下:

    标题:“”,描述:“”,审核方式:“”,审核人:“”,回收方式:“”,截止时间:“”,数据项配置:?[ {项编号:1,项名称:“”,输入控件类型:“”,必填设置: “”,数据验证规则: “”, 数据绑定规则: “”,填写提示: “”},……]

    (2)动态表存储。系统采用三级表结构存储动态表:①管理表:记录基本属性、结构框架定义以及状态跟踪信息,如标题、创建人、审核方式、回收方式、回收状态、提醒邮箱等;②设计表:记录表数据项的名称、格式、提示、绑定规则等;③内容表:存储用户填写、提交的数据,是系统动态创建的关系表,表的命名规则是“f_content_”前缀加上表的编号,如“f_content_2019010”。

    (3)动态表解析。系统读取数据库中的动态表定义信息,通过后端模板映射规则生成HTML文档,添加CSS样式及JS行为交互代码,完成对动态表的解析,并对解析得到的HTML文档进行缓存。

    2.2 绑定项自动完成

    在创建与定义动态表过程中,可为数据项设置绑定规则,实现绑定项自动完成。例如对“姓名”一项进行绑定,用户在进入填写页面时,“姓名”一项将直接填充用户数据库中存储的姓名信息,以避免重复输入。

    绑定项自动完成实现原理如下:动态表在解析过程中会根据在数据库中定义的绑定规则,解析为一段JS异步请求代码片段,插入到填写页面中;填写页面在浏览器端渲染加载完成后,执行该代码片段;浏览器异步请求绑定数据,返回得到服务器查询数据库的信息,自动填充相应表单项。

    2.3 输入控件与格式验证

    对于普通的学生信息采集,系统默认采用短文本输入控件,对于有选项的输入框,则以下拉列表形式供用户选择填写。该方式既能降低系统操作复杂度,又能满足大多数应用场景,用户体验较好。

    同时,对于格式要求严格的工作信息采集,系统提供诸如单选、多选、数值、日期、时间、邮箱等输入控件以规范用户输入[18]。用户输入数据以异步方式传递给系统后台,通过正则表达式工具对用户输入进行验证,并反馈相应提示信息,以帮助用户以规范的格式填写表格。

    2.4 电子签名

    电子签名是纸质手写签名的替代方案,也是在无纸化办公过程中进行身份验证与责任追溯的重要一环[19-20]。

    签名数据采集由前端JS库Signature Pad实现,调用 SignaturePad(canvas,{backgroundColor:‘rgba(255,255,255,0)})方法,传入一个空白的Canvas画布对象,即可生成一个背景透明的签名面板,并能监听用户行为,采集鼠标轨迹或触屏手写笔迹数据,调用signaturePad.toDataURL()方法导出签名数据;用户提交后,签名数据以base64编码格式通过HTTP POST方法发送给后台服务器,在服务器端进行图像空白区域裁剪、缩放至指定大小等操作后,以图像格式存储签名数据,并将存储路径和签名时间戳添加到数据库中;电子签名最终以图片形式显示在浏览器页面上,或通过CodeIgniter集成PHPOffice插件导出到Word、Excel、PDF等文件中。

    系统采用用户认证、文档消息摘要、数据资源隔离等策略,确保签名数据的采集与修改仅由签名人控制,并且对数据电文内容的任何改动都能被发现,以此保障用户电子签名的法律效力[19]。

    2.5 Redis消息队列

    对于工作信息采集汇总业务,由于学生群体基数较大,短时间内大量用户提交的请求与数据存储处理难以得到稳定保障,甚至可能引起服务器宕机。系统采用Redis消息队列写入的方式,对短时间内的突发请求,在合理负载下进行排队处理。基本原理如图3所示。

    用户提交的数据会传递到Redis消息队列中,并快速释放与用户终端的连接。在服务器后台一直运行着一个小型处理程序,作为消息的消费者,每隔一段时间会被唤醒,从Redis消息队列中选取一条或一组消息,进行数据处理后存储到数据库中。如发生错误,则回退数据到消息队列中,程序进入休眠状态。根据系统资源和用户数量合理设置程序运行间隔,可以起到网络流量削峰填谷的作用。采用消息队列写入方式,对于用户突发的大量填写请求,系统仍能保证在合理负载下稳定、高效地运行,从而保障采集的数据存储无误。

    3 系统运营实例

    系统信息采集汇总业务已在武汉科技大学管理学院大三学生群体中投入运营,采集汇总任务创建(见图4)和汇总状态查看(见图5)是五一假期学生去向信息采集过程中的系统运行界面,共收集了802份去向信息。

    4 结语

    系统投入实际运营后,为在校师生提供了一个在线采集与管理信息的平台,为学生管理工作提供了便利。通过对日常信息采集流程进行电子化与规范化,提高了信息采集效率,在校师生反馈良好。

    系统提供了一个采集学生工作信息的入口,但其数据和信息管理还处于初级阶段,因此下一步需要进行的工作有:①高校事务活动繁杂,信息采集需要细分各个场景,系统后期扩展需要设计高并发、高可扩展性架构,为各场景提供功能支持;②系统需要对接高校各个数据源,整合信息资源,进行数据分析与挖掘工作,以更好地支持高校事务工作管理。

    参考文献:

    [1] 张运敏,刘洋. 基于系统协同的开放大学学生基本信息精准化管理[J]. 湖南广播电视大学学报,2017(2):89-92.

    [2] 李淑玲. 高校学生管理信息化创新分析[J]. 中国管理信息化,2018,21(23):199-200.

    [3] 刘影,祁思恺,王兆旭,等. 高校管理信息化建设中存在问题与对策探索[J]. 西北工业大学学报(社会科学版),2017,37(1):96-100.

    [4] 张超. 大数据背景下高校学生隐私权保护的基本问题研究[J]. 教育教学论坛,2018(30):46-47.

    [5] 程佳,陈涛,王成. 通用Web表单数据采集系统的设计与实现[J]. 软件工程,2016,19(8):30-33.

    [6] 殷旭,廖斌,王新平. 基于Web的工作流表单的柔性建模[J]. 计算机工程与设计,2009,30(14):3429-3432.

    [7] 黄慧,孙静. 基于AJAX的B/S电子表单填写模式研究[J]. 计算机工程与设计,2008,29(5):1055-1056,1146.

    [8] 宋奕爽,刘绍华. WEB端可视化表单生成引擎的设计与实现[J]. 软件,2017,38(12):153-159.

    [9] 李维佳,汪洪江. 基于ASP.NET的Web表单自动生成引擎[J]. 计算机与网络,2015,41(17):60-63.

    [10] 喻莹莹,李新,陈远平. 前后端分离的终端自适应动态表单设计[J]. 计算机系统应用,2018,27(4):70-75.

    [11] 秦俊男. 基于Yii框架下通用电子表单系统的设计与实现[D]. 天津:天津大学,2015.

    [12] 郎泓钰,任永功. 基于 Redis 内存数据库的快速查找算法[J]. 计算機应用与软件,2016,33(5):40-43,52.

    [13] 徐宝磊,罗江,潘刚. 基于JSON的数据交换技术应用研究[J]. 软件导刊,2017,16(10):173-175.

    [14] 杨彦侃,谭心. 一种基于CodeIgniter框架科研论文管理系统的研究与实现[J]. 计算机应用与软件,2012,29(12):223-224,251.

    [15] 李婷蔚,张明,张力. 高校数据可视化分析浅试[J]. 信息系统工程,2018(9):111-113.

    [16] 罗佳. 基于云计算的信息安全风险评估[J]. 中国新通信,2016,18(10):103-104.

    [17] COBB C,SUDAR S,REITER N,et al. Computer security for data collection technologies[C]. the Eighth International Conference,ACM, 2016.

    [18] 姜涛,邱宁. 基于Excel模板的在线填表系统的设计[J]. 科技致富向导,2012(2):10.

    [19] 闫春荣,郝亚飞. 基于电子签名技术的营业厅工单电子化方案研究[J]. 邮电设计技术,2014(4):62-66.

    [20] 胡俊伟,刘建华. 通航机务维修电子工卡手写电子签名方案[J]. 民航学报,2018,2(6):102-103.

    (责任编辑:黄 健)

随便看

 

科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。

 

Copyright © 2004-2023 puapp.net All Rights Reserved
更新时间:2024/12/22 10:59:55