路 遥 周海亮 任女尔 林 涛 薛桂香 廖文喆
(1.天津市计量监督检测科学研究院,天津 300192;2.河北工业大学,天津 300130)
从sun公司的WSS、开源社区为iphone努力的打造wsdl2objc、andriod平台,到Nokia的Serene框架等,都对移动平台做了很好的支撑。但是,要开发面向对象的移动Web服务,并在移动设备操作系统中实现,不仅耗费资源、成本高额,而且也存在一些平台缺少本地支持的问题。平台的多样性增加了开发的难度、成本和工作量,很难快速在多样的平台上开发出一个统一的移动应用。本文设计采用html5、jquery mobile进行前段的处理开发,即混合开发模式,有效地降低了开发成本和开发周期。由于移动办公对响应速度并无过高要求,混合开发相对于原生开发来讲,虽然不能产生最优的响应速度,但其编译代码具有高度的通用性,有效解决了由于设备种类多样性带来的最关键的开发困难。此外,Wekbit是一个开源的Web浏览器引擎,是一个通用性较好的浏览器内核。同样的内核决定了代码可重复使用的特点,因此可大大减小工作量。综合各方面考虑,混合开发能更好的适应移动办公的需求。
办公自动化(Office Automation,以下简称OA)是将现代化办公和计算机网络结合起来的一种新型的办公方式。OA通用性框架可如图1中设计,而移动办公部分主要是针对其可提取的个人业务进行分析处理。
如图1所示,OA系统主要处理的是会议日程、邮件通信、公文审批及合同管理等业务,其中,通过定制工作流等技术,可以使得日程、收文、发文等公文的审批流程更加灵活,方便各级领导处理。OA本着5C理念——沟通(Communication)、协作(Cooperation)、控制(Control)、创造(Creation)和方便(Convenience),为办公自动化提出了成熟有效的解决方案,为企业的现代化、信息化、自动化作出了突出的贡献。文献[1-2]的研究者设计并证实了通信架构的可行性,其中包括存在于外部设备的中间件部件和负责与Web服务通信时的xml处理。而文献[3]提出了一个通过外部中间件承载移动网络中xml系统通信负担的Web服务交互通信体系架构,以面向服务的体系结构展示了中间件的优势。但是,其总的请求应答时间增加了。而本文提出了更加灵活、可定制和扩展的方法,主要是将接口处理、数据处理整合到中间件中,再以独立的服务方式提供给移动客户端。面向服务的方式包含灵活的应用组件集合,并且操作独立性强,为企业提供了丰富的选择性。基于Domino的移动办公系统则充分发挥了Domino的优势,进一步采取了REST(REpresentational StateTransfer,表述性状态转移)接口及其他接口相联合的综合处理的方式,提高了数据提取的速度。
图1 OA功能框架及移动办公
如图2所示移动办公框架整体分为OA和数据库系统、中间件系统和移动终端系统三部分。Domino提供了REST接口,可以方便的返回json格式数据。SEMP或MKey等中间件在框架中处于数据处理的通道位置,它将从OA系统的页面或直接从Domino数据库REST接口访问来的数据进行处理,直接进行处理解析成json格式数据,以最小的信息量返回给客户端,客户端只需要负责页面布局等简单处理即可。
图2 基于中国件的移动平台请求框架
1)数据下行处理。数据下行主要是获取列表或者详情。传统的页面解析方式获取数据的过程为,当浏览器加载页面时,从地址栏输入url回车,浏览器会进行页面解析对应到相应IP进行tcp连接,连接后给服务器发送请求。服务器收到请求之后,返回给客户端响应头和具体的html信息。随后,html内容以流的形式传递给客户端浏览器进行逐步加载,先加载html框架,再从head进行解析然后是body等。而REST接口的方式获取数据则不同,Domino数据库提供了REST接口服务,只需将要访问的库名nsf和视图view以及相应代表权限认证的信息传递给Domino就可以直接返回json格式的数据。
下行数据处理一般通用的方式为页面解析,而在手持设备中,并不希望所有的html信息都返回到移动应用中,因此将数据全部交给中间件去处理,开发的时候在中间件中开发配置服务,完成访问数据、接收html、解析提取json格式数据的工作后再返回给移动应用。然而,在提取数据时,页面解析的方式往往不如REST方式迅速、直接,所以针对Domino的OA数据,优先使用REST方式。针对一些需要再处理的数据和难以处理的数据,为了节省分析时间,可以直接页面解析进行提取。
2)数据上行处理。所谓的上行数据处理往往指的是传阅、驳回、知会、流程提交等功能,需要将一些审批意见等以参数的方式传递给OA服务器。实际上,真正的驳回等功能操作只需要将参数提交给服务器,然后由服务器完成即可。
综上所述,无论是数据的上行还是下行,真正需要处理的部分都交给了OA服务器和中间件服务器。移动应用时,需要做的就是数据展示和参数配置提交。这样,大部分计算就都均衡到服务器上了。
移动BI(Mobile Business Intelligence, 以下均简称MBI)是指通过使用移动终端设备,使用户能够随时随地获取所需的业务数据及分析展现,完成独立的分析与决策应用,实现决策分析无处不在的实时动态管理。
以三星的SEMP中间件为例,要想获取一个公文详情,根据情况,需要进行页面解析和REST请求等进行数据提取,程序如图3所示:将类以服务的方式配置到SEMP中去,基于数据库的SEMP,存储了相关的服务,通过配置服务ID,当页面进行访问更改ID时,SEMP就提供相应的服务,获取数据,再以JSON格式将数据返回。
图3 MBI配置及调用过程
认证的问题是每个企业都十分重视的问题,尤其是一些大中型国有企业,一旦信息泄露,后果不堪设想,因此很多公司甚至不会在广域网设置公网IP。信息保密是移动办公推广的一个问题。除此之外,国内很多企业并不是完全与外网屏蔽,他们配有VPN服务器,所有的系统设置在内网IP上,当有员工需要从外网登录内网系统时,可以先登录VPN,连通后再访问内网。移动办公可以在这种情况下集成VPN登录,使手机也处于VPN登录的模式。这样能够确保同等级的安全。
在公司信息安全等级条件允许范围内,更好的部署方式是设立网关,以双网卡的方式做移动办公服务器,既可以连接内网,又可以连接互联网。在实际访问中,始终通过部署有中间件的移动办公服务器去访问内部数据,再以json数据的方式返回给移动客户端。即不会破坏数据的安全性,公司路由配置也较为方便。
当进行数据访问时,需要携带cookiestore作为认证信息。在各大企业中,部署多个系统的情况较为常见,比如合同专门为一个系统,门户专门为一个系统,公文管理及其他邮件等服务为一个系统,此时需要在访问不同的系统时配置不同的认证信息。
用计算机下载数据的方式确实较为方便,但是在移动终端,以流的方式下载数据并不稳定,数据流量也不方便控制,并且智能手机并不一定能对下载下来的文本格式完美支持,比如gd、gw文件格式。本文设计在移动办公服务器上搭载document view等类似的附件解析器,解析器可以调用服务器上已有的软件将数据打开,访问数据时,将数据转换为特定的图片格式返回到移动终端,用此方式有效地解决了文本格式多样性的问题。
框架部署成功后,对基于Domino数据库的OA系统可以方便的进行处理,如图4所示测试数据,如果网络状况在20kb/s的情况下,一个普通的页面访问时间可以控制在1s左右。如果是3G网络,网络状况可达到100kb/s的情况下,加载速度就非常可观了。
图4 执行服务加载数据速度情况
在移动化办公系统中,通过中间件的框架设计进行负载均衡,有效地解决了移动设备处理能力有限的问题;以混合开发的模式兼容部署ios、andriod等操作系统;接口和页面解析的方式充分利用了既有的OA系统,可以使使用者轻松简便入手移动办公系统,方便、快捷地处理办公系统中的紧急业务。通过本论文的设计处理,给软件开发企业提出了更加高效、低成本的开发模式,促进自动化办公系统的应用,也帮助了移动办公使用者更好的处理审批和决策等办公室业务。
[1]AIJAZ F, ZAHID S A, CHAUDHARY M, et al.Enabling high performance mobile Web services provisioning [C].Vehicular Technology Conference Fall (VTC 2009 -Fall),2009:1-6
[2]Adacal M, BENER A B.Mobile Web services: a new agent-based framework[J].InternetComputing, 2006,10(3):58-65
[3]余以胜.移动网络中Web服务应用架构研究[J].微型机与应用,2012,31(13):53-55
[4]王程辉.基于Lotus Domino/Notes的[J].中国科技信息,2010(1):121-124
[5]黄俊健,区咏莹.基于SaaS移动中间件平台研究与开发[J].电子世界,2013(17):21-57
[6]温旭,万昱,骆建斌.航天科研企业计量管理信息系统的设计与实现.计量技术,2008(11):64-67