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

文档序号:8412352阅读:来源:国知局
的系统的结构框图。
[0040] 图2为本发明的HTML DOM的对象模型的示意图。
[0041] 图3为本发明的业务流程引擎支持的实体的示意图。
[0042] 图4为本发明的业务流程编排模块的工作流程图。
[0043] 图5为本发明的业务流程执行模块的结构框图。
[0044] 图6为本发明的服务发布模块的结构框图。
[0045] 图7为本发明的一个实施例的执行步骤的流程图。
[0046] 图8为本发明的一个实施例的录制功能点操作后形成的脚本的示意图。
【具体实施方式】
[0047] 为了能够更清楚地描述本发明的技术内容,下面结合具体实施例来进行进一步的 描述。
[0048] 1、理论基础:
[0049] 在B/S应用中,用户的所有操作都可以通过页面对象智能识别抓取技术进行精确 的记录,我们通过分析和处理这些记录,将其中需要用户输入的内容转化为可通过配置、 或者动态传入的可变输入参数,将其中可输出的内容转化为动态输出参数,然后将这些输 入参数、输出参数以及其处理过程,通过Web Services协议发布出来,将页面对象所具备的 能力暴露为服务,使之能够被其他IT系统所访问。
[0050] 1)基于页面对象智能识别抓取技术,完整的记录用户在企业IT应用访问时所作 的任何操作,包括文本框录入、下拉框选择等;
[0051] 2)可智能抓取页面上输出的任意数据;
[0052] 3)基于这些操作所产生的业务能力和抓取的数据,暴露为可访问的Web服务;所 有用户录入的内容通过可变输入参数配置功能,转化为Web服务的输入参数,抓取的输出 数据,可转化为服务的输出参数;
[0053] 4)基于分布式、高性能执行框架,这些服务可以支撑大并发的业务访问。
[0054] 2、PKUIBus 框架:
[0055] 在实际应用中,本发明的一种产品命名为PKUIBus (Pu kun User Interface Bus, 普坤用户界面总线)系统,以下结合图1对本发明的基于识别抓取技术实现企业IT应用集 成管理的系统做进一步地描述。
[0056] 1)页面总线引擎
[0057] 支撑PKUIBus的核心引擎,支持页面对象智能识别抓取技术,将用户的页面操作 精准的进行记录,同时可抓取页面输出的数据;支持通过回放的方式,自动、多次访问企业 IT系统。
[0058] 2)用例库管理模块
[0059] 所有用例的集合,用户对企业IT系统访问时的所有操作、页面输出内容组合在一 起,形成可重复使用的用例。
[0060] 3)业务流程编排模块
[0061] 将用例按照实际业务流程的要求进行编排,可以形成页面总线引擎中可回放的业 务流程,业务流程支持分支、状态保持等流程特性,业务流程直接复用用例库管理模块中的 用例,也可以服用已经组装过的流程。
[0062] 4)业务流程执行模块
[0063] 为了满足企业应用并发量大的需求,所有的业务流程都在分布式、高性能的执行 框架中执行;为了更好的提升执行效率,我们对IE浏览器进行了扩展,同时提供分布式执 行引擎,使业务流程执行能力可水平扩展。
[0064] 5)服务发布模块
[0065] 基于WebServices协议,将业务流程发布成其他IT应用可以访问的服务,实现页 面对象能力的开放,也可提供为其它应用进行二次开发,操作简单,低成本实现多系统之间 的集成。
[0066] 3、页面对象智能识别与抓取技术
[0067] 页面对象智能识别与抓取技术是基于HTML的DOM(Document Object Mode,文档对 象模型)模型的,其HTML DOM的对象模型如图2所示,结合Windows系统的键盘钩子、鼠标 钩子技术,智能化识别企业IT用户访问网页时的所有操作和输入参数,将用户的输入参数 和页面中的对象关联起来,形成对企业IT应用访问的输入参数,同时可将页面输出的内容 进行精准定位和抓取,形成企业IT应用的输出参数。
[0068] 页面对象智能识别与抓取技术主要功能如下:
[0069] 1)脚本录制
[0070] (1)在页面中嵌入鼠标和键盘钩子,精准记录用所有操作过程;
[0071] (2)基于用户的鼠标和键盘操作,智能化识别用户对页面对象的访问;
[0072] (3)精确定位用户访问的页面对象,以脚本的方式记录;
[0073] 脚本录制后形成的脚本实例:HtmlTableRow(用户地址,0)->HtmlTableCell (用 户地址,0)->HtmlInput (#userAddress, 0),change (上海张江达尔文路88号半岛科技园7 号楼5楼)
[0074] (4)以多行脚本的方式识别用户的连续操作;
[0075] 2)脚本回放
[0076] (1)从数据库中获得可执行的脚本后,精准定位页面对象;
[0077] (2)将配置的可变输入参数实时填充到页面对象中;
[0078] (3)智能抓取页面执行过程中的输出数据;
[0079] (4)将输出数据放入页面总线引擎的上下文中,供业务流程执行时调用,或者转化 为输出参数,供Web服务输出时调用;
[0080] (5)连续的回放脚本,实现对企业IT系统的完整操作过程。
[0081] 4、流程引擎
[0082] 流程引擎用于解析业务流程,将实际业务操作中的业务流程转为技术表达。
[0083] 流程引擎基于BPMN2. 0标准,BPMN的主要目标就是要提供被所有业务用户理解的 一套标记语言,包括业务分析者、软件开发者以及业务管理者与监察者。BPMN还将支持生成 可执行的BPEL4WS语言。所以,BPMN在业务流程设计与流程实现之间搭建了一条标准化的 桥梁。
[0084] 业务流程引擎支持的实体如图3所示,其中:
[0085] 子流程:业务流程引擎中支持对另一个业务流程的引用,这种被引用的业务流程 叫做子流程;
[0086] 活动:业务流程中的一个节点,页面总线中对应于一个功能点;
[0087] 数据:数据访问接口,可以读取数据库中的相应数据;
[0088] 接口:可以对 WSDL(Web Services Description Language,服务描述语言)接口 进行访问;
[0089] 验证:验证活动,基于JS(JavaScript)表达式,完成各种复杂验证内容。
[0090] 流程引擎支持的主要业务场景包括顺序执行、分支执行、子流程嵌套等。
[0091] 5、流程编排
[0092] 基于可视化界面,通过简单的鼠标拖拽操作,可以快速的实现对业务流程的编排。 流程编排中直接复用用例库管理模块中已经录制好的用例;同时支持分支、条件判定、状态 保持等流程特性;可自定义用例库/流程的输入/输出、参数初始化等,如图4所示。
[0093] 6、分布式、高并发业务流程执行模块
[0094] 分布式业务流程执行模块将大量执行任务通过主控服务分散到多台代理服务机 上,并行实现对页面对象的访问,实现业务流程的并发执行,同时将执行结果汇总到主控服 务。
[0095] 如图5所示,分布式业务流程执行模块由三部分组成:页面总线主控服务单元、消 息队列、页面总线代理服务单元。
[0096] 页面总线主控服务单元获取所有要执行的业务流程任务,将任务发布到消息队列 中,然后将任务按照指定的规则分配到合适的页面总线代理服务单元上,由代理服务调用 页面总线引擎的服务完成企业IT应用的访问,然后将执行结果上报给主控服务。
[0097] 7、自定义浏览器提供更高性能
[0098] 由于页面操作回放时,系统资源耗费比较严重,而页面弹出框、弹出窗口对于鼠标 事件的焦点处理有时也会发生冲突,
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1