首页> 中国专利> 基于识别抓取技术实现企业应用集成管理的系统及方法

基于识别抓取技术实现企业应用集成管理的系统及方法

摘要

本发明涉及一种基于识别抓取技术实现企业IT应用集成管理的系统,其中包括页面总线引擎、用例库管理模块、业务流程编排模块、业务流程执行模块和服务发布模块;本发明还涉及一种基于识别抓取技术实现企业IT应用集成管理的方法,包括:页面总线引擎记录用户访问页面的页面对象、操作数据、操作步骤和页面输出数据,并保存至用例库管理模块;业务流程编排模块将用例编排并形成业务流程;业务流程执行模块执行业务流程;服务发布模块将业务流程为可访问的服务。采用本发明的基于识别抓取技术实现企业应用集成管理的系统及方法,降低了企业IT应用集成的难度,缩短了企业IT应用集成的周期,节约了客户实施企业IT应用集成项目的成本,具有更广泛的应用范围。

著录项

  • 公开/公告号CN104731606A

    专利类型发明专利

  • 公开/公告日2015-06-24

    原文格式PDF

  • 申请/专利权人 上海普坤信息科技有限公司;

    申请/专利号CN201510169619.X

  • 发明设计人 肖菁;刘正云;李泓川;

    申请日2015-04-10

  • 分类号

  • 代理机构上海智信专利代理有限公司;

  • 代理人王洁

  • 地址 201203 上海市浦东新区张江高科技园达尔文路88号7号楼5楼

  • 入库时间 2023-12-18 09:23:37

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-05-18

    授权

    授权

  • 2015-07-22

    实质审查的生效 IPC(主分类):G06F9/44 申请日:20150410

    实质审查的生效

  • 2015-06-24

    公开

    公开

说明书

技术领域

本发明涉及计算机网络技术领域,尤其涉及企业IT应用的集成管理技术,具体是指一种 基于识别抓取技术实现企业应用集成管理的系统及方法。

背景技术

目前已经有非常多的技术实现企业IT系统之间的集成,比如ESB(Enterprise Service Bus, 企业服务总线)、Web(互联网)服务等,它们都支持通过统一、规范的协议和框架,通过二 次开发的方式,将企业IT应用封装成可访问的服务,从而实现企业IT系统之间的集成。从 企业IT集成现状来看,这些技术的实现过程都有较大的局限性,首先需要对原有系统的技术 架构有很深的了解,才能够对原有应用进行包装,其次需要很多的二次开发工作量,才能够 将这些已有能力包装成其他系统可访问的服务。

从企业IT应用的发展趋势来看,B/S(Browser/Server,浏览器/服务器模式)应用已经成 为主流,越来越多的企业应用都是基于B/S架构来构建的,而B/S应用的访问是可以模拟仿 真的,因此,需要寻找一种能够基于页面对象人工智能识别抓取技术实现对B/S应用的模拟 仿真的技术方案,通过针对页面操作的录制与回放,将企业IT应用已经具备的能力服务化, 在不进行二次开发的情况下将企业IT应用已经具备的能力开放为服务,供其他IT应用访问。

发明内容

本发明的目的是克服了上述现有技术的缺点,提供了一种能够智能识别抓取页面对象、 对页面对象服务进行编排与组装、实现高并发页面对象访问和服务的基于识别抓取技术实现 企业应用集成管理的系统及方法。

为了实现上述目的,本发明的基于识别抓取技术实现企业应用集成管理的系统及方法具 有如下构成:

该基于识别抓取技术实现企业IT应用集成管理的系统,其主要特点是,系统包括:

页面总线引擎,基于页面Dom(Document Object Model,文档对象模型)智能解析(综 合了对象标识识别、字符串识别、Dom层次路径xPath识别等相结合的综合解析)记录用户 访问企业IT应用的页面对象、操作数据(包含输入信息或选择项)与操作步骤(键盘及鼠标 操作顺序),并抓取所述的企业IT应用的页面输出数据(返回结果或自动填写内容),并且通 过回放的方式自动化重现应用操作过程,回放中可调整输入参数的取值以实现页面复用,其 中,一组记录下来的页面对象、操作数据、操作步骤和对应抓取的页面输出数据组合起来叫 做一个用例;

用例库管理模块,用以组织并管理多个可重复执行的用例;

业务流程编排模块,用以将所述的用例按照实际业务流程的要求进行流程编排并形成可 在页面总线引擎中回放的业务流程,该业务流程具备全局参数能力;

业务流程执行模块,用以采用分布式执行框架来执行所述的业务流程并IE对浏览器进行 扩展,解决IE浏览器执行业务流程时资源占用率高、多IE浏览器之间鼠标/键盘焦点的抢占 等缺陷,以支持更好的性能和高并发;

服务发布模块,用以将所述的业务流程发布成其他IT应用可以访问的服务。

更进一步地,所述的对浏览器进行扩展具体为:

所述的业务流程执行模块通过扩展浏览器内核屏蔽所述的游览器的所有可视化页面、弹 出框和弹出窗口,并在所述的业务流程执行模块执行所述的业务流程时,将对所述的页面的 访问操作转化为对WebBrowser对象(WebBrowser对象是IE浏览器内核在Windows内存中 的对象实例)中Dom对象的操作,避免直接打开IE浏览器带来的资源消耗,提升并发数量 及性能。

更进一步地,所述的业务流程执行模块包括页面总线主控服务单元、消息队列、页面总 线代理服务单元,其中:

所述的页面总线主控服务单元用以获取所有要执行的业务流程并将所述的业务流程发布 至所述的消息队列中;

所述的消息队列用以将所述的业务流程按照指定的规则分配到相应的页面总线代理服务 单元上;

所述的页面总线代理服务单元用以完成企业IT应用的访问并将访问结果通过所述的消 息列队上传至所述的页面总线主控服务单元。

此外,本发明还提供一种基于识别抓取技术实现企业IT应用集成管理的方法,其主要特 点是,所述的方法包括以下步骤:

(1)所述的页面总线引擎记录所述的用户访问所述的企业IT应用的页面对象、操作数 据与操作步骤;

(2)所述的页面总线引擎抓取页面上的页面输出数据,并且通过回放的方式自动化重现 应用操作过程,回放中可调整输入参数的取值以实现页面复用;

(3)所述的系统将所述的页面对象、所述的操作数据、所述的操作步骤和所述的页面输 出数据保存至所述的用例库管理模块;

(4)所述的业务流程编排模块按照实际业务流程的要求对所述的用例进行流程编排并形 成所述的业务流程;

(5)所述的业务流程执行模块采用分布式执行框架来执行所述的业务流程并对所述的浏 览器进行扩展;

(6)所述的服务发布模块将业务流程暴露为可以被其它企业IT应用访问的服务;

(7)所述的页面总线引擎将所述的页面对象、操作数据与操作步骤转化为服务输入参数 并将所述的页面输出数据转化为服务输出参数。

进一步地,所述的页面总线引擎记录所述的用户访问所述的企业IT应用的页面对象、操 作数据与操作步骤,包括以下步骤:

(1.1)所述的页面总线引擎在所述的企业IT应用的页面中嵌入鼠标钩子和键盘钩子并 记录所述的用户对所述的页面对象的操作过程;

(1.2)所述的页面总线引擎识别所述的用户对所述的页面对象的操作过程并得到所述的 操作数据;

(1.3)所述的页面总线引擎根据所述的操作数据定位所述的用户访问的页面对象并以脚 本的方式记录;

(1.4)所述的页面总线引擎以多行脚本的方式识别所述的用户的连续的操作步骤。

进一步地,所述的页面总线引擎抓取页面上的页面输出数据,并且通过回放的方式自动 化重现应用操作过程,回放中可调整输入参数的取值以实现页面复用,包括以下步骤:

(2.1)所述的页面总线引擎获得所述的脚本并定位所述的页面对象;

(2.2)所述的页面总线引擎将所述的输入参数填充到页面对象中;

(2.3)所述的页面总线引擎抓取页面执行过程中的页面输出数据;

(2.4)所述的页面总线引擎将所述的页面输出数据放入自身的上下文中。

采用了本发明的基于识别抓取技术实现企业应用集成管理的系统及方法,将企业IT应用 集成方式由原来必须专业软件开发人员开发接口,转换为只需要由业务操作员直接操作界面, 自动生成可执行脚本,然后经过配置、组装、编排就可以直接发布为服务,大大降低了企业 IT应用集成的难度。

本发明提供的页面总线技术简便易用,大大缩短了企业IT应用集成的周期,使企业能够 快速的根据市场变化的情况调整IT系统,原来企业内部一个服务的开放可能花费2周到一个 月,现在只需要1周或者更少的时间即可完成。

本发明的系统及方法还可以极大的降低客户实施企业IT应用集成项目的成本,采用了本 发明的基于识别抓取技术实现企业应用集成管理的系统及方法,企业IT应用集成不再依赖于 专业软件开发人员,而且实施周期比原来缩短了50%或者更多,因此企业IT应用集成项目的 实施成本可以得到极大的缩减。

附图说明

图1为本发明的基于识别抓取技术实现企业IT应用集成管理的系统的结构框图。

图2为本发明的HTML DOM的对象模型的示意图。

图3为本发明的业务流程引擎支持的实体的示意图。

图4为本发明的业务流程编排模块的工作流程图。

图5为本发明的业务流程执行模块的结构框图。

图6为本发明的服务发布模块的结构框图。

图7为本发明的一个实施例的执行步骤的流程图。

图8为本发明的一个实施例的录制功能点操作后形成的脚本的示意图。

具体实施方式

为了能够更清楚地描述本发明的技术内容,下面结合具体实施例来进行进一步的描述。

1、理论基础:

在B/S应用中,用户的所有操作都可以通过页面对象智能识别抓取技术进行精确的记录, 我们通过分析和处理这些记录,将其中需要用户输入的内容转化为可通过配置、或者动态传 入的可变输入参数,将其中可输出的内容转化为动态输出参数,然后将这些输入参数、输出 参数以及其处理过程,通过Web Services协议发布出来,将页面对象所具备的能力暴露为服 务,使之能够被其他IT系统所访问。

1)基于页面对象智能识别抓取技术,完整的记录用户在企业IT应用访问时所作的任何 操作,包括文本框录入、下拉框选择等;

2)可智能抓取页面上输出的任意数据;

3)基于这些操作所产生的业务能力和抓取的数据,暴露为可访问的Web服务;所有用 户录入的内容通过可变输入参数配置功能,转化为Web服务的输入参数,抓取的输出数据, 可转化为服务的输出参数;

4)基于分布式、高性能执行框架,这些服务可以支撑大并发的业务访问。

2、PKUIBus框架:

在实际应用中,本发明的一种产品命名为PKUIBus(Pu kun User Interface Bus,普坤用 户界面总线)系统,以下结合图1对本发明的基于识别抓取技术实现企业IT应用集成管理的 系统做进一步地描述。

1)页面总线引擎

支撑PKUIBus的核心引擎,支持页面对象智能识别抓取技术,将用户的页面操作精准的 进行记录,同时可抓取页面输出的数据;支持通过回放的方式,自动、多次访问企业IT系统。

2)用例库管理模块

所有用例的集合,用户对企业IT系统访问时的所有操作、页面输出内容组合在一起,形 成可重复使用的用例。

3)业务流程编排模块

将用例按照实际业务流程的要求进行编排,可以形成页面总线引擎中可回放的业务流程, 业务流程支持分支、状态保持等流程特性,业务流程直接复用用例库管理模块中的用例,也 可以服用已经组装过的流程。

4)业务流程执行模块

为了满足企业应用并发量大的需求,所有的业务流程都在分布式、高性能的执行框架中 执行;为了更好的提升执行效率,我们对IE浏览器进行了扩展,同时提供分布式执行引擎, 使业务流程执行能力可水平扩展。

5)服务发布模块

基于WebServices协议,将业务流程发布成其他IT应用可以访问的服务,实现页面对象 能力的开放,也可提供为其它应用进行二次开发,操作简单,低成本实现多系统之间的集成。

3、页面对象智能识别与抓取技术

页面对象智能识别与抓取技术是基于HTML的DOM(Document Object Mode,文档对象 模型)模型的,其HTML DOM的对象模型如图2所示,结合Windows系统的键盘钩子、鼠 标钩子技术,智能化识别企业IT用户访问网页时的所有操作和输入参数,将用户的输入参数 和页面中的对象关联起来,形成对企业IT应用访问的输入参数,同时可将页面输出的内容进 行精准定位和抓取,形成企业IT应用的输出参数。

页面对象智能识别与抓取技术主要功能如下:

1)脚本录制

(1)在页面中嵌入鼠标和键盘钩子,精准记录用所有操作过程;

(2)基于用户的鼠标和键盘操作,智能化识别用户对页面对象的访问;

(3)精确定位用户访问的页面对象,以脚本的方式记录;

脚本录制后形成的脚本实例:HtmlTableRow(用户地址,0)->HtmlTableCell(用户地址, 0)->HtmlInput(#userAddress,0),change(上海张江达尔文路88号半岛科技园7号楼5楼)

(4)以多行脚本的方式识别用户的连续操作;

2)脚本回放

(1)从数据库中获得可执行的脚本后,精准定位页面对象;

(2)将配置的可变输入参数实时填充到页面对象中;

(3)智能抓取页面执行过程中的输出数据;

(4)将输出数据放入页面总线引擎的上下文中,供业务流程执行时调用,或者转化为输 出参数,供Web服务输出时调用;

(5)连续的回放脚本,实现对企业IT系统的完整操作过程。

4、流程引擎

流程引擎用于解析业务流程,将实际业务操作中的业务流程转为技术表达。

流程引擎基于BPMN2.0标准,BPMN的主要目标就是要提供被所有业务用户理解的一 套标记语言,包括业务分析者、软件开发者以及业务管理者与监察者。BPMN还将支持生成 可执行的BPEL4WS语言。所以,BPMN在业务流程设计与流程实现之间搭建了一条标准化 的桥梁。

业务流程引擎支持的实体如图3所示,其中:

子流程:业务流程引擎中支持对另一个业务流程的引用,这种被引用的业务流程叫做子 流程;

活动:业务流程中的一个节点,页面总线中对应于一个功能点;

数据:数据访问接口,可以读取数据库中的相应数据;

接口:可以对WSDL(Web Services Description Language,服务描述语言)接口进行访问;

验证:验证活动,基于JS(JavaScript)表达式,完成各种复杂验证内容。

流程引擎支持的主要业务场景包括顺序执行、分支执行、子流程嵌套等。

5、流程编排

基于可视化界面,通过简单的鼠标拖拽操作,可以快速的实现对业务流程的编排。流程 编排中直接复用用例库管理模块中已经录制好的用例;同时支持分支、条件判定、状态保持 等流程特性;可自定义用例库/流程的输入/输出、参数初始化等,如图4所示。

6、分布式、高并发业务流程执行模块

分布式业务流程执行模块将大量执行任务通过主控服务分散到多台代理服务机上,并行 实现对页面对象的访问,实现业务流程的并发执行,同时将执行结果汇总到主控服务。

如图5所示,分布式业务流程执行模块由三部分组成:页面总线主控服务单元、消息队 列、页面总线代理服务单元。

页面总线主控服务单元获取所有要执行的业务流程任务,将任务发布到消息队列中,然 后将任务按照指定的规则分配到合适的页面总线代理服务单元上,由代理服务调用页面总线 引擎的服务完成企业IT应用的访问,然后将执行结果上报给主控服务。

7、自定义浏览器提供更高性能

由于页面操作回放时,系统资源耗费比较严重,而页面弹出框、弹出窗口对于鼠标事件 的焦点处理有时也会发生冲突,为了提高页面总线引擎执行效率,我们在底层对浏览器进行 了扩展,屏蔽所有页面弹出框、弹出窗口,将对页面的访问操作全部转化为内存中对 WebBrowser(IE浏览器的内存对象)的直接操作,而不需要再打开多个IE浏览器,鼠标、 键盘事件的回放也采用模拟操作的方式运行,大大降低了系统资源的耗费,而且解决了多流 程执行时的鼠标焦点冲突。

8、业务流程服务开放

如图6所示,所有被编排的业务流程,都可以基于自动或者手动发布为服务,页面总线 中内置Web服务引擎,支持将业务流程发布成服务。这些服务可以直接被其他IT系统访问, 也可以和其他服务一起再次编排后形成新的服务,满足快速变化的客户需求。

9、实施例:

实施场景:假设某电信运营商需要给虚拟电信运营商开放其手机清卡重开功能,由于该 电信运营商自己的IT系统中这些功能都具备,只需要开放相应接口即可,我们可以使用页面 总线技术帮助某电信运营商简单快速实现这种需求。通常清卡重开流程涉及到CRM (Customer Relationship Management,客户关系管理系统)受理、服务开通系统、订单管理 系统(TSAP)及相应的执行步骤等,详细流程如图7和图8所示。

实施过程:该流程基于本发明的系统(以下简称为“页面总线中间件”)的执行过程主要 步骤包括功能点录制、流程编排、服务暴露三个步骤。

1)功能点录制:

基于页面总线中间件提供的录制与回放功能,将办理清卡重开业务、到SPS(Service  Process System,服务开通系统)系统查询对应订单、到TSAP(Transport Service Access Point, 传输服务访问点)中查询对应订单、到SPS系统中查询执行结果、到CRM中查询执行结果、 告警等功能点录制为页面总线中间件可识别的脚本。

2)流程编排:

基于页面总线中间件提供的流程编排工具,将这些功能点按照实际业务流程的要求,加 入流程状态、分支条件等,形成页面总线中间件中可执行的流程。

3)服务暴露:

通过简单的参数配置,将该流程发布成其他IT系统可访问的服务,实现将页面能力转化 为可复用能力的目标。

主要代码如下:

采用了本发明的基于识别抓取技术实现企业应用集成管理的系统及方法,将企业IT应用 集成方式由原来必须专业软件开发人员开发接口,转换为只需要由业务操作员直接操作界面, 自动生成可执行脚本,然后经过配置、组装、编排就可以直接发布为服务,大大降低了企业 IT应用集成的难度。

本发明提供的页面总线技术简便易用,大大缩短了企业IT应用集成的周期,使企业能够 快速的根据市场变化的情况调整IT系统,原来企业内部一个服务的开放可能花费2周到一个 月,现在只需要1周或者更少的时间即可完成。

本发明的系统及方法还可以极大的降低客户实施企业IT应用集成项目的成本,采用了本 发明的基于识别抓取技术实现企业应用集成管理的系统及方法,企业IT应用集成不再依赖于 专业软件开发人员,而且实施周期比原来缩短了50%或者更多,因此企业IT应用集成项目的 实施成本可以得到极大的缩减。

在此说明书中,本发明已参照其特定的实施例作了描述。但是,很显然仍可以作出各种 修改和变换而不背离本发明的精神和范围。因此,说明书和附图应被认为是说明性的而非限 制性的。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号