APP下载

基于Web Service的数字离校系统的设计和实现

2018-03-22蔡利军周益飞

中国管理信息化 2018年5期
关键词:数据集成

蔡利军 周益飞

[摘 要] 以Web Service替代数据集成的数字离校系统,是高校毕业生离校工作的迫切需求。本文以本科毕业生的数字化离校工作为背景,介绍了武汉大学基于Web Service的数字离校系统设计理念及系统实现,并重点描述了系统建设过程中的特色解决方案。

[关键词] 数字离校;数据集成;Web Service

doi : 10 . 3969 / j . issn . 1673 - 0194 . 2018. 05. 062

[中图分类号] G647;TP311.52 [文献标识码] A [文章编号] 1673 - 0194(2018)05- 0146- 04

0 引 言

作为全国最大的高校之一,武汉大学每年有近8 000本科生毕业离校,虽然毕业生离校工作已经采用在线系统办理,离校系统通过数据集成平台的支持,从不同业务系统中抽取业务数据,实时将各个业务系统、业务信息集成到离校系统中。但系统同步各业务部门的数据十分频繁,离校峰值期间也不堪重负,经常导致数据更新不及时。因此,如何提升毕业生数字离校的效率和体验是一个亟待解决的问题。随着武汉大学数字化校园建设的推进,信息化水平持续提高,各个业务部门的应用系统上线运行,建设数字离校系统的新思路就是基于Web Service来替代数据集成,并采用更适合高并发业务的平台,下面就为大家介绍武汉大学数字离校系统的设计与实现。

武汉大学毕业生离校工作涉及财务部、图书馆、水电中心及各学院等多个部门,以往使用Oracle的 ODI集成工具完成各业务系统数据的集成。ODI(Oracle Data Integrator),是Oracle公司推出的异构数据迁移工具,通过一致性对不同数据源的变化数据捕获,从而完成近乎实时的数据集成工作。由于使用了中间共享库与业务双向联系的方式,因此从数据源创建到流向最终的数据使用信息系统,整个数据信息的流转过程一般需要2个小时才能够完成,在目前武汉大学的数据集成系统中,总共有几百个同步Agent在进行数据的同步工作,一般的数据同步间隔为每小时一次,对于部分实时性要求高的数据则根据实际业务需要达到分钟级同步。采用数据集成的方式有很多问题和缺陷,根据往年毕业生的相关数据统计,我们发现仅有不到5%的毕业生在毕业前存在欠费的现象,而超过95%的毕业生没有欠费,这种同步所有数据方式不仅浪费时间,而且成倍地增加了ODI的工作量,类似的现象在其他离校办理环节也很普遍,最终的结果是造成中心数据库负荷超载,因此我们迫切需要改变这种现状。基于Web Service的数字离校系统以调用各业务系统提供的接口来替代数据集成,能够更有效融合各部门业务系统的数据,让毕业生能够在线实时完成离校手续的办理,提高毕业离校手续的办理效率,同时提升毕业生离校体验。

1 数字离校系统建设

1.1 数字离校系统的设计

传统的数字离校系统通过共享数据库平台,利用ODI实现与教务数据库、图书馆数据库、财务数据库及水电中心数据库的数据集成。数字离校系统所需的毕业生名单抽取自教务数据库,图书借阅信息抽取自图书馆数据库,学费数据抽取自财务数据库,住宿数据抽取自宿舍管理系统数据库。

基于Web Service的数字离校系统架构如图1所示,系统采用B/S模式,用户权限分为毕业生、院系审核员及各级领导。毕业生通过系统查看各项离校手续的在线办理;院系审核员负责最后在线审批毕业生的离校手续;院系领导可以实时查询离校手续办理的统计数据,便于相关工作的调整和部署。同时,数字离校系统通过Web Service接口调用财务、图书馆、住宿、空调卡数据,最终对涉及毕业生离校工作的现有业务系统进行有机整合。

1.2 数字离校系统的实现

为了使毕业生能够自主选择离校手续办理的先后顺序,系统将除学院领证外的所有环节设计为可并行办理,系统的流程如下:

(1)缴清费用环节主要是确认毕业生是否欠费,系统中可查看欠费明细:学费、住宿费、学分学费等,如有欠费请到财务部缴清,无欠费系统将自动把本环节置为“已办理”。

(2)如果毕业生无欠书欠费(研究生还需在图书馆提交论文),该环节显示为“未办理”。毕业生在离校系统中自注销图书证后,系统将自动把本环节置为“已办理”,如果有欠书欠费情况,需到图书馆或所在院系资料室办理归还图书、缴清欠费等手续。

(3)空调卡环节对于没有借空调卡的毕业生,系统将提示无需办理;而对有的学生则在其归还空调卡后,由业务操作人员在空调卡系统中确认其“已通过”,完成空调卡环节的手续办理。

(4)毕业生到楼栋管理员处归还钥匙(或支付押金)和缴清电费后,可办理退宿手续。公寓管理办的业务操作人员将离校系统中的该环节状态置为“已通过”,完成公寓退宿手续的办理,未住宿的毕业生不需办理此项。

(5)毕业生在完成前面的所有手續办理后,便可到学院领取毕业相关证书,最终完成毕业离校手续的办理。

上述办理环节在具体实现过程中,全部基于Web Service接口获取离校数据的解决方案,是我校数字离校系统中最具特色的部分,下面就分别介绍各环节调用Web Service接口方式。

2 Web Service接口调用方式

2.1 财务数据的“实时”同步

由于高校财务系统属于相对独立的系统,出于安全的考虑,一般不允许连接外网,也不允许与其他系统集成,因此,离校系统无法直接读取财务系统数据。要确保毕业生办理离校手续的连贯性,就必须保证财务数据的实时同步。为了解决因财务系统封闭性而造成的数据同步问题,传统的方案是设置一台财务前置机作为中转,以此实现财务数据的实时同步。财务前置机数据库与财务数据库采用专用的同步程序,以数据库增量的方式,每60秒进行一次数据同步。每次同步完成后,前置机数据库立即将增量数据写入共享数据库。最后共享数据库通过ODI工具,以60秒一次的频率将更新的财务数据同步至离校数据库。为了尽可能达到实时同步的要求,通过Web Service接口直接读取共享数据库中毕业生的欠费状态,在确认无欠费后便可立即办理后续离校手续,无需等待,极大地方便了毕业生。

2.2 图书馆环节的在线自主办理

在传统离校办理方式中,图书馆环节的通常做法是:由学校划定统一的截止日期,开启图书借阅状态查询,如果没有欠书欠费则注销毕业生的图书借阅功能,若此截止日期过早,部分仍有借阅需求的毕业生将失去借阅机会;而若截止日期过晚,部分需要提前离校的学生又无法办理图书馆离校手续。为了解决这个问题,我们在离校系统的图书馆环节设计了一个人性化的解决方案。图书馆系统可提供Web Service系统接口,允许授权的系统利用该接口来查询和改变图书馆系统中的用户状态,因此,离校系统就通过该接口与图书馆系统实现系统集成。该接口的调用参数为毕业生学号,接口返回的数据包括借阅状态code(正常或已注销)和message(欠书欠费信息)。

调用接口地址为:http://apps.lib.whu.edu.cn/aleph/bor_check.asp?bor_id=XXXXXXXX

参数id为学号,返回值为JSON对象,示例{"code":"0","message":"303_2:状态正常,已办理图书馆离校手续。"}

其中code为返回值,message为说明信息,code值有如下类别:

0: 状态正常,已办理图书馆离校手续。

1: 状态正常,但还未办理图书馆离校手续(可以到图书馆或网上自助办理图书馆离校手续)。

2:存在欠费/欠书以及其他限制情况,不能办理图书馆离校手续。

3: 论文未提交, 不能办理图书馆离校手续。

-1:证号错误。

-2:IP地址不在调用范围内。

-3:其他系统错误。

毕业生可直接在离校系统中关闭图书借阅功能,完成图书馆手续的办理,且可在一个较长的时间段内自由选择办理时间。当毕业生在离校系统中进行图书馆手续的办理时,离校系统通过Web Service接口查询图书馆系统中该毕业生的状态,若查询到存在欠费或欠书,会在离校系统中提示该毕业生归还欠书、结清欠费;若没有欠书和欠费,离校系统会询问是否立即关闭图书借阅功能,此时,该生可根据自己的需求来自主选择暂不注销或立即注销。最终,当该毕业生自主关闭图书借阅功能后,图书馆的离校手续便办理完结。

图书馆离校手续的在线自主办理,使毕业生可在允许的时间段内自由决定关闭图书借阅功能的时间,有效解决因学校统一关闭而造成的“过早”和“过晚”问题,显得非常人性化。

2.3 退宿环节的在线办理

调用学生是否住宿Web Service接口地址为:

http://mydorm.whu.edu.cn//appdm/rest/api/accommodation/resident_stay_info/2007xxxx

其中2007xxxx为学号,返回JSON格式数据示例如下:

{"publicUserSn":"2007xxxx","publicUserName":"孙XX","isStayIn":true,"bunkInfo":"医学部-宿舍321-4号床"}

參数publicUserSn为学号,publicUserName为姓名,isStayIn为是否住宿状态(true为住宿中,false为未住宿),bunkInfo为床位信息。

2.4 空调卡系统接口调用

空调卡系统由我们帮助水电中心开发,为了实现Web Service接口功能,我们增加了一个Server文件提供Web Service服务,同时用client文件调用该服务,空调卡系统Web Service接口地址为:http://it.whu.edu.cn/ktk/server.php

程序用PHP编写,通过ktkws(¥xh)获取空调卡状态后,实现Web Service功能的语句如下:

¥server = new SoapServer(null,array('uri' => 'http://soap/','location'=>'http://it.whu.edu.cn/ktk/server.php'));

¥server->setClass('ktk');

¥server->handle();

提供学号,调用服务获取状态的语句如下:

¥soap = new SoapClient(null, array('location'=>'http://it.whu.edu.cn/ktk/server.php','uri' =>'http://soap/'));

¥xh='2007xxxx';

echo ¥soap->ktkws(¥xh);

ktkws(¥xh)返回1表示“空调卡未归还”,0表示“空调卡已归还”,如果需要提供JSON格式的数据给其他 类型程序调用,可以用json_encode函数格式化变量,然后通过html的header功能输出返回变量。

3 应用效果

基于Web Service的特色解决方案,使我校的数字离校系统从更深的层次理解了用户需求,利用先进的信息化技术对原有业务流程进行了重构,全面实现了毕业生离校工作的信息化,彻底改变了毕业生离校工作的落后局面。与传统数据集成的离校办理方式相比,用户体验度得到了质的提高。以退宿环节为例,在采用传统离校办理方式时,所有毕业生在宿舍现场办理退宿后,需等待半个小时,状态变化才能在离校系统中反映,而改用Web Service接口调用住宿系统数据后,退宿状态可以实时反映在离校系统中,极大地方便了毕业生离校手续的办理。由于采用Web Service接口方式导致离校系统程序设计极为简洁,我们只花了半个月的时间独立设计程序,节省了大量资金投入。离校期间两个工作人员轻松应对离校高峰,使用户深刻感受到了良好的信息化服务,取得了圆满的应用效果,达到了系统预期的建设目标。

武汉大学基于Web Service的数字离校系统于2016年6月正式投入使用,至今已顺利完成两届毕业生的数字化离校工作。在系统开发过程中,我们同时利用“大数据”的建设思想进行数据挖掘,增加了对毕业生离校办理情况进行按专业的实时统计功能。从实际的应用效果来看,该系统基本满足了我校毕业生离校工作的需求,从根本上提高了毕业生离校工作的效率,有效减轻了毕业生和业务部门的负担。基于Web Service的数字离校系统建设,很好地体现了教育信息化所承载的服务属性。

主要参考文献

[1]朱浩,左志宏,颜 凯,等.电子科技大学数字离校系统建设实践[J].中国教育信息化,2015(5):86-89.

[2]闫晓弟,李娟,李一鸣,等.读者更新WebService与校园自助离校系统——以西安交通大学为例[J].中国现代教育装备,2012(21):69-71.

[3]田鹏,吴庆杰,陈翼.基于数据集成的毕业工作服务管理系统的设计与实现[J].实验技术与管理,2011(5):316-319.

[4]杨帆,杨洁,李一鸣.基于SOA架构的自助离校系统设计与实现[J].中山大学学报:自然科学版,2009(s1):210-212.

猜你喜欢

数据集成
造船生产计划管理信息化
基于“三流合一”的云南烟草商业系统供应链的构建
成本与制造数据集成分析
基于Biztalk的异构医疗信息系统数据集成研究
信息系统集成与数据集成策略研究
XML数据交换技术在中医智能化诊断数据集成中的应用
数字图书馆分布式存储设计
高校一表通系统建设探究
浅谈数据集成相关技术
基于数据集成的水上项目国家队数据库网络管理平台的设计与开发