一种面向多终端服务的学术会议管理系统设计与实现
2016-08-05黄景修刘清堂吴林静
黄景修 刘清堂 吴林静
(华中师范大学教育信息技术学院 湖北 武汉 430079)
一种面向多终端服务的学术会议管理系统设计与实现
黄景修刘清堂吴林静
(华中师范大学教育信息技术学院湖北 武汉 430079)
摘要在移动互联网飞速发展的背景下,学术会议管理系统尚未能提供一个更方便、更即时的服务渠道给参会人员。针对这一问题,采用“基于前后端分离的多终端适配”方案构建了一个面向多终端服务的学术会议管理系统。为了节省人力、物力和时间,系统运用KNN算法实现了论文投稿自动分类的功能,并结合倒序贪婪算法解决了智能化分配审稿任务的问题。总之,移动互联网技术的运用提高了学术会议管理的网络信息化、规范化水平以及个性化服务质量。
关键词学术会议管理移动互联网KNN算法多终端适配贪婪算法
0引言
高校举办学术会议对促进学术的交流和促进学科的发展有着重要的意义。随着科学技术的发展,国内外间的学术交流会议在国内高校中举行的次数日益增多。曾有研究指出:“根据中国学术会议在线网的最新数据统计,截止到2010年10月22日,中国高校学术会议发布排名前50的高校共计举行了1937场学术会议,其中国际会议1244场,国内会议693场[1]”。由此观之,高校如何科学、合理、规范地组织如此繁多的学术会议,将是高校信息化水平的一大考验。
在早期,高校举办学术会议的会务管理工作主要是:会议主办高校在面向世界各地发布会议信息通知时主要采用电子邮件和电话等方式,当会议日程或会议地点发生变更时,会议主办高校不得不重新发电子邮件或打电话通知。这些重复工作不仅耗时、耗力、耗金钱,而且参会人员获取会议信息的途径也相当少。从接收投稿到论文评审都是通过电子邮件的方式进行,这过程需要大量的人力进行手工整理,工作极其繁琐,容易遗漏。收发会议参会回执也基本上是电子邮件或传真,然后手工录入回执表,最后统计回执信息以便安排餐饮和预定酒店等。
为了解决会务工作花费大量的人力、物力和时间等问题,国内的专家学者设计和开发了基于互联网的学术会议管理系统。如王亮等人在分析大型学术会议工作流程的基础上开发了会议注册系统,并提出了会议管理系统的结构模块以及技术解决方案[1];陈华等人借助电子商务的框架,采用当前比较流行的Java技术,实现了一个在线提交论文的系统[2];刘聪等人提出了“四位一体”的系统设计目标和功能模型,实现了会议管理的网络化和电子化[3]。然而与国外相比,我国在学术会议管理系统方面研究起步比较晚,国外在学术会议的在线管理方面已经有了很多成熟的系统,如EasyChair、VSIS ConfTool、Cyberchair、MyReview、Continue、Suvisoft、START等,其中EasyChair[4]是由英国曼彻斯特大学开发学术会议管理平台,提供了注册、审稿号自动配发、自动邮件提醒等服务。
虽然基于互联网的学术会议管理系统缩减了会务工作所花费的人力和物力,但是从以人为本的角度看,由于参会人员的生活习惯、教育背景、时间安排、性格等各有不同,每个参会人员对会议服务都会有不同的需求,进而对会议组织质量、获取信息的渠道和效率的要求越来越高,所以学术会议管理系统还需提供一个更方便、更即时的服务渠道。而近些年来,移动互联网蓬勃发展,移动终端也不断普及,这为解决这一问题提供了很好的基础条件。在国外,许多会议服务公司利用移动互联技术和终端设备相结合的技术弥补了其传统会议服务模式的不足,促使公司得到进一步发展,其中最为成功的案例是全球最大的会议管理技术公司Cvent;在国内,有些IT服务公司也开始聚焦新兴的会议服务市场业务,如31会议网,但是基于移动互联网的会议管理系统研究仍然缺乏。
综上所述,基于互联网的学术会议管理系统虽能解决会务工作花费大量的人力、物力和时间等问题,却无法满足参会人员的个性化需求。基于移动互联网的学术会议管理系统恰好能弥补这一不足,本文设计并开发了一个面向多终端服务的学术会议管理系统。提供了会议信息管理、会议论文管理、会务管理等服务。对高校信息化水平的提高有着重要参考价值,有利于实现学术会议管理的网络信息化和规范化,提高高校组织学术会议的工作效率和质量,从而增强了参会人员的参会体验。
1系统设计
1.1系统架构设计
本系统是一个面向多终端服务的学术会议管理系统,其架构采用了常见软件开发架构模型——MVC模型,如图1所示,包括了模型、视图和控制器三层。每一层各自处理自己的业务,同时不同层之间又按照MVC体系结构的规范进行信息交换。因此,本系统具有耦合度低、逻辑业务和数据显示分离等特点。并且为了实现多终端服务的业务逻辑共享,即共享模型,采用了“基于前后端分离的多终端适配[5]”的方案。其基本过程是用户在客户终端发出请求后,用户代理(UA)获取客户端信息并传递给路由控制器,路由控制器根据客户端信息分发终端控制器,然后终端控制器会统一访问相同的模型,获取系统数据并对返回的数据进行处理,进而渲染到终端视图。此外,本系统还可以结合开源的跨平台移动开发框架PhoneGap开发并生成混合模式的移动应用。
图1 系统架构图
1.2系统功能与用例的设计
如图2所示,本系统由后台管理和用户前台两个子系统组成,共有12个功能模块,分别是系统配置模块、用户管理模块、会务管理模块、会议管理模块、会议主题管理模块、论文管理模块、数据库管理模块、权限管理模块、用户信息模块、用户论文模块、论文审阅模块以及移动终端模块。限于篇幅,本文主要介绍以下6个功能模块。1) 用户管理模块。该模块除了对系统用户的信息进行增、删、改、查外,还可以对用户的参会注册信息进行审核管理,同时提供电子邮件发送的功能,以便为个别用户发送会议信息通知。2) 会务管理模块。这模块又由会议新闻通知和住宿管理两个子模块组成,前者主要是发布会议新闻以及其他相关的通知,如会议变更通知、会议议程通知等;后者则主要是提供住宿信息,并对参会注册用户的住宿预订信息进行管理。3) 论文管理模块。该模块是本系统的核心功能模块,除了提供对用户投稿信息的增、删、改、查基本功能外,还提供了投稿论文的下载、在线预览以及审阅分配的功能。为了方便对论文进行分类管理,本系统还利用文本挖掘中的KNN算法实现了论文自动分类的功能。4) 数据库管理模块。此模块是对本系统的数据库进行维护,提供了数据库备份、数据库导入、数据库压缩包以及数据库优化修复的功能。5) 论文审阅模块。本模块实现了在线审稿的功能,并且审稿用户可以把审稿意见通过邮件的方式发给投稿用户。6) 移动终端模块。移动终端模块是本系统的创新之处,系统用户可以使用移动终端随时随地了解学术会议的相关信息。
图2 系统功能模块示意图
本系统的用户角色共有四种,分别是系统管理员、会议主席、审稿专家、投稿作者,而不同的用户角色拥有不同的功能,具体的系统用例如图3所示。
图3 系统用例图
1.3系统数据库的设计
系统选用的数据库是当前比较流行的MySQL数据库,其原因主要是MySQL数据库是一个关系型数据库,其体积小,速度快,稳定性和安全性较高,适用于许多中小型系统的开发。根据系统功能模块的设计,本系统的数据库一共涉及了17个表,其中最主要的数据表有用户信息表、论文稿件信息表、会议信息表、会议主题表、论文出版费用表、参会注册费用表、论文审阅表、用户角色表。在数据库设计中,所有数据表的主键均采用自增的方式,而各个表之间的关联是:会议信息表与会议主题表是一对多的关系,因为一个会议拥有多个会议主题;论文稿件信息表与会议主题表是一对一的关系,因为一篇论文只能属于一个会议主题;由于用户信息表中合并了投稿作者信息表和评审专家信息表,所以论文稿件信息表与用户信息表既有多对一的关系,即一个投稿作者可以在一个学术会议上提交多篇论文,又有多对多的关系,即一个评审专家可以评审多篇论文,而一篇论文则也可由多个专家评审;用户信息表与用户角色表为一对一的关系;用户信息表与会议信息表也存在多对多的关系,也就是说一个用户可以参加多个学术会议,而每个学术会议也存在多个参会人员。
2系统功能的实现及其关键技术
2.1在线投稿功能
在线投稿是学术会议管理系统的核心功能之一,其主要的业务逻辑:1) 判断用户是否已登录,若登录成功,则检测用户个人信息的完整性以确保用户已填写投稿作者的联系方式,否则提示用户先登录。2) 当用户个人信息完整时跳转到“填写论文信息”界面,填写论文信息并上传论文附件。当投稿作者输入论文题目信息后,即是论文题目文本框失去焦点时,系统会自动提交论文题目,检测其是否存在,并返回提示结果,如“可以使用”或“已重复”。3) 当用户个人信息不完整时则跳转“个人信息修改”界面,待用户完善个人信息后再跳转到“填写论文信息”界面。为了防止论文表单提交时,出现论文附件提交不成功而论文信息提交成功、论文信息提交不成功而论文附件则提交成功这两种情况出现,本系统采用JqueryForm插件中ajaxSubmit方法实现了论文附件上传的进度条,从而减轻了服务器端的压力,并且增强了用户体验,其效果如图4所示。
图4 论文提交效果图
从上面的描述可知,在线投稿功能实现的关键技术是AJAX技术,其指的是一套综合了多项技术的浏览器端网页开发技术,于1998年前后得到首次应用。但是经过十多年的发展,综合各种变化的技术和强耦合的客户服务端环境,AJAX提出了一种新的开发方式——AJAX开发模式,并且随着AJAX开发模式的提出,国内外出现了大量的AJAX开发框架,其中比较著名的有AjaxPro、ExtJS、JSer、Jquery等。因此,本系统的在线投稿功能主要采用Jquery框架进行开发实现。
2.2多终端服务的实现
多终端服务本质是多终端适配问题,而当前解决这类问题的方案主要有“基于浏览器原生 CSS3 Media Query的响应式设计”、“基于云端智能重排的多终端适配”、“基于前后端分离的多终端适配”等。本系统在架构设计中采用了“基于前后端分离的多终端适配”方案。常见的“前后端分离”案例是SPA(Single Page Application)[6],其展现数据是后端通过异步接口(AJAX/JSONP)的方式提供,而前端则负责数据展现。从表面上看。SPA实现了前后端分离,但是在实际开发中SPA只能作为简单的应用模式,无法满足复杂的业务需求,甚至有时候为了提高效率,后端也会参与到数据展现的逻辑中,导致了部分前后端工作混杂在一起。究其原因,SPA模式的前后端分离只是从物理层区分前后端。所以,在本系统的架构设计中,前后端分离是从职责上划分的,即前端负责视图层和控制器,根据应用情境设计URL。而后端只负责Model层,实现具体的业务逻辑以及数据处理。同时为了实现各个终端共享同一份数据和业务逻辑,把数据来源抽象成Model,提供给不同终端的控制器组合使用。
在本系统的架构设计中,用户代理(UA)探测是实现多终端服务的核心环节。目前,国内外已有非常成熟并能兼容大量设备的UA特征库和探测工具,其中既有运行在浏览器端的,又有运行在服务器端的。实验证明,尽管市场上移动终端设备层出不穷,甚至不同厂家有不同的标准,通过利用WURFL移动设备特征库,只要及时地把最新的移动设备信息添加到设备库中,其检测移动终端的准确率理论上可达100%[7]。本系统把WURFL封装成一个小型的UA探测工具类MobileDetect,其实现关键代码如下。
define(″WURFL_DIR″,dirname(__FILE__).′/Common/WURFL/′);
define(″RESOURCES_DIR″,dirname(__FILE__).″/resources/″);
require_once WURFL_DIR.′Application.php′;
$configFile=RESOURCES_DIR . ′wurfl-config.xml′;
$config=new WURFL_Configuration_XmlConfig($configFile);
$factory=new WURFL_WURFLManagerFactory($config);
$manager=$factory->create();
$deviceInfo=$manager->getDeviceForHttpRequest($_SERVER);
$deviceOS=$deviceInfo->getCapability(“device_os”);
$isTablet=$deviceInfo->getCapability(“is_tablet”);
首先,配置WURFL的文件夹及所需要资源的相对路径,然后调用Application.php并创建WURFL Manager对象。WURFL Manager对象则可以根据HTTP请求探测出客户终端设备类型。最后,路由控制器调用MobileDetect工具类获取客户终端类型,并分配与之对应的终端控制器。实现多终端集成,其效果如图5所示。
图5 多终端集成效果图
2.3论文自动分类
在学术会议管理系统中,投稿作者提交会议论文时往往是需要选择与论文相关的会议主题。在现实中,有些投稿作者并不能准确把握投稿论文的归属主题,导致很多会议论文归属的会议主题有误,阻碍了会议论文集的出版工作。在大多数情况下,会议论文集都会按照会议主题进行目录组织,要求在论文集出版时必须要认真校对每篇论文所归属的会议主题,在这过程中会花费大量的人力和时间。针对上述问题,本系统采用了论文自动分类的解决方案。
论文自动分类本质上是文本分类,是指在预定义的分类体系下,根据文本的特征(内容或属性),将给定文本与一个或多个类别相关联的过程。早在2002年,F.Sebastain用一个函数Φ:D×C→{T,F},其中D={d1,d2,…,d|D|}表示需要进行分类的文档,C={c1,c2,…,c|C|}表示预定义的分类体系下的类别集合;而T值表示对于
图6 论文自动分类流程图
由于论文自动分类功能的实现涉及到自然语言处理和机器学习两个领域,而Python是这两个领域较好的语言工具,所以本系统采用了ppython开源框架[10]。它是一种使用socket进行通讯的“PHP+Python”混合编程技术,实现的关键步骤如下:① 安装python,并把python.exe所在目录写入系统变量Path中;② 把ppython框架的主文件php_python.py和process.py,以及业务文件paper_auto_classify.py放入单独的目录中,并在修改php_python.py文件权限“可执行”后将其运行;③ 在本系统的web目录下放入ppython框架的主文件php_python.php,重启Apache服务器。
这样之后便可通过代码require_once(′php_python.php′)和ppython(“doClassify”,$text)实现论文自动分类。业务文件paper_auto_classify.py的关键代码如下:
## 第一步:计算Euclidean距离
diff=tile(newText,(samplesCount,1))-dataSet
squaredDiff=diff ** 2
squaredDist=sum(squaredDiff,axis=1)
distance=squaredDist**0.5
## 第二步:将第一步结果Euclidean距离进行排序
orderedDistIndices=argsort(distance)
classCount={}
for i in xrange(k):
## 第三步:选出最小的k距离
label=labels[orderedDistIndices[i]]
## 第四步:算出类别标签出现的次数
classCount[label]=classCount.get(label,0)+1
## 第五步:返回最大类别标签索引
maxCount= 0
for key, value in classCount.items():
if value>maxCount:
maxCount=value
maxIndex=key
returnmaxIndex
2.4智能化分配审稿任务
3结语
在移动互联网高速发展形势下,学术会议管理系统如何提供一个更方便、更即时的服务渠道给参会人员是一个亟待解决的问题。鉴于此,本文采用“基于前后端分离的多终端适配”方案构建了一个面向多终端服务的学术会议管理系统。本系统除
了利用KNN算法实现了论文投稿自动分类的功能外,还结合倒序贪婪算法巧妙地解决了智能化分配审稿任务的问题,这无疑是让学术会议管理系统走向自动化、人性化以及智能化的一次大胆尝试。为了验证系统的可用性和有效性,本系统应用于2013年11月底在武汉市华中师范大学召开的“第十二届教育技术国际论坛(ETIF2013)”会议,最终得到了参会人员的一致好评。下一步的工作主要有两点:一是结合流媒体技术实现会议视频在线直播或点播的功能,从而提高学术会议的影响力;另一是优化KNN算法,提高论文投稿自动分类的准确性。
参考文献
[1] 王亮,徐明.大型学术会议注册系统解决方案探析[J].中国医学教育技术,2011,25(2):178-181.
[2] 陈华,梁循.使用Java实现学术会议论文管理系统[J].计算机技术与发展,2007,17(1):185-188.
[3] 刘聪,石晓磊.会议管理系统的研究与应用[J].实验技术与管理,2011(4):231-235.
[4] Voronkov A.Easy chair conference system[EB/OL].(2002-01-01).[2014-11-20].http://www.easychair.org.
[5] 筱谷.基于前后端分离的多终端适配[EB/OL].(2014-05-16).[2014-11-20].http://ued.taobao.org/blog/2014/05/cross-platform-tpl/.
[6] Mikowski M S,Powell J C.Single Page Web Applications[M].Manning Publications Co. ISBN,2013.
[7] 艾军.面向移动终端的Web内容适配研究[D].华中师范大学,2014.
[8] 史忠植.知识发现[M].清华大学出版社,2002.
[9] 韩家炜,坎伯.数据挖掘:概念与技术[M].北京:机械工业出版社,2001.
[10] Diaoyifei@gmail.com.ppython[EB/OL].(2012-05-22).[2015-03-11].https://code.google.com/p/ppython/.
收稿日期:2014-12-25。国家自然科学基金项目(61272205);教育部新世纪优秀人才计划项目(NCET-13-0818);华中师范大学中央高校基本科研专项项目(CCNU14A03010)。黄景修,硕士,主研领域:语义与知识服务。刘清堂,教授。吴林静,讲师。
中图分类号TP311
文献标识码A
DOI:10.3969/j.issn.1000-386x.2016.07.016
DESIGN AND IMPLEMENTATION OF MULTI-TERMINAL SERVICES-ORIENTED ACADEMIC CONFERENCE MANAGEMENT SYSTEM
Huang JingxiuLiu QingtangWu Linjing
(SchoolofEducationalInformationTechnology,CentralChinaNormalUniversity,Wuhan430079,Hubei,China)
AbstractWith the rapid development of mobile internet, academic conference management system has not yet been able to provide a more convenient and instant service channels to participants. In light of this problem, we built a multi-terminal services-oriented academic conference management system by adopting the scheme of multi-terminal adaptation based on the separation of front-end. For saving the manpower, material resources and time, the system employs KNN algorithm to achieve the function of automatic classification for papers contribution and combines the reverse greedy algorithm to solve the problem of intelligent assignation of peer reviewing tasks. In a word, the application of mobile internet technology improves the levels of network informatisation and standardisation as well as the quality of individual services in regard to academic conference management.
KeywordsAcademic conference managementMobile InternetKNN algorithmMulti-terminal adaptationGreedy algorithm