数据事件发送方法和装置以及事件处理系统的制作方法

文档序号:6461208阅读:127来源:国知局
专利名称:数据事件发送方法和装置以及事件处理系统的制作方法
技术领域
本发明一般涉及事件处理领域,特别涉及用于发送数据事件以使 得数据事件与工作流事件相关联的方法与装置,以及用于处理工作 流事件和数据事件的系统。
背景技术
业务监测是业务流程生命周期的重要部分,业务监测使得业务流 程是实时可见的,并能够及时提供有关业务流程的信息。通常,业 务监测包括分析从业务流程执行过程中发送的事件,提取关心的信 息,并将这些信息进行分析和处理,以便用于后续的数据挖掘中。
在业务流程中,节点可以在进行业务处理的同时发出工作流事 件,来标识业务流程的执行状况和节点的状态等。同时,节点还可 以操控业务流程中的数据。
已经有 一 些应用可以用于监测工作流事件,以便客户掌控业务流 程的进度和状态。如果整个工作流中的事件与数据都是由一个软件 系统完成的,通过检查工作流事件则可以得到工作流中事件与数据 的完整状态。但是,在有些应用中,工作流的控制与数据的操作分 离了。例如,在一个由银行控制的申请信用卡的应用中,申请流程 由工作流引擎控制,而对数据库的操作是由工作流引擎请求现有的
操作数据库的应用来完成。这样,工作流事件监测软件只能得到工 作流引擎发出的工作流事件,而无法得到这些事件所涉及的数据操 作。同样,通过数据库日志,客户可以得到数据修改的记录。用户 只知道数据被修改了 ,而不知道是哪些工作流事件请求了相关数据。 这样,由于工作流事件缺少了对数据操作的控制或对数据的操作缺 少工作流事件的上下文,客户无法将工作流事件与数据事件相关联,不便于后续的事件处理。因此,客户非常希望能够同时监测业务流 程中的工作流事件和数据事件并把工作流事件和数据事件关联。
此外,客户更加希望在不改变对现有数据的操作的前提下,同时 监测业务流程中的工作流事件和数据事件。
因此,目前存在这样的问题,即怎样在不影响已有架构的情况下, 将业务流程中的工作流事件和数据事件进行关联,以便对业务流程 进行更好地监测或控制。

发明内容
针对以上问题,本发明提供了 一种用于发送数据事件以便工作 流事件与数据事件得以关联的方法与装置。
本发明的目的是在业务流程中发送数据事件,以便在不影响已 有架构的情况下,使得业务流程中的工作流事件和数据事件得以关 联,从而对业务流程进行更好地监测或控制。
根据本发明的第一方面,提供了一种数据事件发送方法,包括
步骤接收由发出工作流事件的节点修改的数据;根据针对修改的 数据的预定义逻辑,得到与工作流事件有关的相关性信息;对修改 的数据和相关性信息格式化,得到数据事件;发送数据事件。
根据本发明的第二方面,提供了一种数据事件发送装置,包括 步骤接收器,用于接收由发出工作流事件的节点修改的数据;格 式化器,用于根据针对修改的数据的预定义逻辑以得到与工作流事 件有关的相关性信息,以及对修改的数据和相关性信息格式化以得 到数据事件;发送器,用于发送数据事件。
根据本发明的第三方面,提供了一种事件处理系统,包括数 据存储装置,用于存储数据;节点,用于发出工作流事件,并用于 对数据存储装置中的数据进行修改;数据事件发送装置,包括接 收器,用于接收由发出工作流事件的节点修改的数据,格式化器, 用于根据针对修改的数据的预定义逻辑以得到与工作流事件有关的 相关性信息,以及对修改的数据和相关性信息格式化以得到数据事
6件,发送器,用于发送数据事件;以及事件处理装置,用于将数据 事件与工作流事件相关联。本发明能够在不影响现有业务处理架构的情况下,方便地获取 和发送业务流程中的数据事件,以便业务流程中的工作流事件和数 据事件得以关联,从而使得客户能够对业务流程进行更好地监测或 控制。图,本发明的其他特征以及优点将会是显而易见的。


通过以下结合附图的说明,并且随着对本发明的更全面了解,本 发明的其他目的和效果将变得更加清楚和易于理解,其中 图1是按照本发明的一个实施例的事件处理系统; 图2是按照本发明的另 一 个实施例的数据事件发送方法的流程图;图3是按照本发明的另一个实施例的数据事件发送装置的方框 图;以及图4是示出适于实施本发明的计算机系统的结构的方框图。 在所有的上述附图中,相同的标号表示具有相同、相似或相应的 特征或功能。
具体实施方式
以下将详细描述本发明的实施方式。在本发明所用的术语中,业务流程是一个或多个节点将输入转换 成更有价值的输出的一组相互关联的活动。工作流事件是由节点发 出的标识业务流程的执行状况和节点的状态等的消息。数据事件是 根据节点修改数据存储装置中的数据而生成的消息,可以包括基本 部分和扩展部分,其中基本部分可以包含纟皮^修改的数据,而扩展部分可以包含被修改的数据与工作流事件的相关性信息,以使得数据7事件可以与工作流事件相关联。图1是按照本发明的一个实施例的事件处理系统。该实施例的系统包括节点111-113、数据存储装置120、数据事件发送装置 130以及事件处理装置140。应该注意的是,虽然在该实施例中仅示 出了三个节点,但本发明并不限于此,而是可以应用于任意多个节 点。数据存储装置120用于存储数据。数据存储装置120可以是数 据库,该数据库可以包括多个表、每个表可以包括多个条目、每个 条目可以包括字段等。数据存储装置120也可以是数据文件,该数 据文件可以存储二进制码或ASCII码形式的数据。节点111 - 113可以直接修改数据存储装置120中的数据,例如 可以对数据库或数据文件中的数据执行增加、删除、更新等修改操 作,或者可以如图1所示的那样通过请求操作数据库的应用来间接 地修改数据。另外,节点111 - 113还可以在业务流程中发出工作流 事件,以指示业务流程的执行状况和节,泉的状态等。数据事件发送装置130用于执行以下功能从数据存储装置接 收由发出工作流事件的节点修改的数据,在一个例子中,当接收到 指示数据库中的数据被节点111 - 113修改的消息时,数据事件发送 装置130从数据存储装置120读取该修改的数据,在另一个例子中, 数据事件发送装置130定期检测数据存储装置120中的数据文件中 的数据是否被节点修改,当检测到有数据被修改时,数据事件发送 装置130接收该修改的数据;根据针对修改的数据的预定义逻辑得 到与工作流事件有关的相关性信息,其中预定义逻辑中定义了针对 何种数据设置何种相关性信息,这些相关性信息包括与工作流事件 相关的信息,例如,节点标识符、实例标识符、序列标识符和时间 戳等;将修改的数据连同与工作流事件有关的相关'l"生信息进行格式 化处理,从而得到数据事件;以及,发送该数据事件。事件处理装置140用于将来自数据事件发送装置130的数据事 件与来自节点111 -113的工作流事件相关联,以便用户能够在业务流8程的过程中对相互关联的工作流事件和数据事件进行监测或控制等 处理。图2是按照本发明的另 一 个实施例的数据事件发送方法的流程 图。在该实施例中,业务流程以信用卡申请流程为例。在该信用卡 申请流程中的节点可以例如是申请接收节点、审批节点、复查节点 等多种节点。该实施例针对申请节点描述本发明的数据事件发送方 法。通过使用本发明的方法,用户可以对从申请节点发出的工作流 事件以及与工作流事件关联的数据事件进行同时监测或控制。在步骤201,获取与工作流事件有关的相关性信息,该相关性信 息可以例如是节点标识符、实例标识符、序列标识符(诸如时间戳)等。在该实施例的信用卡申请流程中,例如,申请信用卡的动作都 是向申请接收节点(ApplicationReceiver节点)发出的,因此节点标 识符(NodeID)可以用于标识与该节点有关的事件。如果工作流事 件和数据事件具有相同的节点标识符"ApplicationReceiver",也就 是说这些工作流事件和数据事件与同 一 个节点相关,即都与申请接 收节点相关,则可以对与该节点相关的工作流事件和数据事件进行 监测或控制。同时,该监测或控制不会受到与其他节点相关的工作 流事件和数据事件的影响。这样,可以保证该监测或控制的相对独 立性。由于在信用卡申请流程中,每 一 个信用卡申请实例都是唯 一 的, 所以每个信用卡申请实例标识符(InstanceID)标识的信用卡申请实 例各不相同。可以利用流水号和字母数字排列等来设置信用卡申请 实例标识符,例如,实例标识符可以是1182261010219。如果工作流 事件和数据事件具有相同的实例标识符"1182261010219",也就是 说这些工作流事件和数据事件与同 一 个信用卡申请实例相关,则可 以对这些与同一个信用卡申请实例相关的工作流事件和数据事件进 行监测或控制。同时,该监测或控制不会受到与其他信用卡申请实 例相关的工作流事件和数据事件的影响。这样,可以保证该监测或控制的相对独立性。在该实施例中,申请接收节点通过调用应用来执行向数据存储 装置添加数据的操作,将该数据添加到数据存储装置的时间可以作 为时间戳,用于将各个事件与时间序列关联起来。如果已知工作流 事件和数据事件分别具有的时间戳,则可知这些事件的先后关系, 便于对这些事件进行监测或控制。另外,本领域的技术人员可以理 解,除时间戳之外,也可以使用其他序列标识符来标识时间序列。在步骤202,利用在步骤201获取的相关性信息,设置数据与工 作流事件对应的逻辑。数据存储装置可以是一个或多个数据库。可以针对多个数据库 中的每一个设置预定义逻辑,也可以更进一步地针对每一个数据库 中的每一个表分别设置预定义逻辑。数据存储装置还可以是一个或 多个数据文件。可以针对多个数据文件中的每一个设置预定义逻辑。在该实施例中,数据存储装置是一个数据库,该数据库包括诸 如申请人信息表、信用卡信息表的多个表。申请人信息表包括申请人姓名、年龄、电子邮箱等字段。申请 人信息表与工作流事件对应的逻辑例如可以设置如下向申请人信 息表中的数据添加申请接收节点标识符"ApplicationReceiver"、信用 卡申请实例标识符"1182261010219"、以及时间戳"2007-06-19 13:50:16"。这样,申请人信息表中的数据与标识符为"ApplicationReceiver,, 的节点、标识符为"1182261010219"的实例、2007年6月19日13点 50分16秒发出的工作流事件相关联。例如,申请人信息表中的数据 修改可以由标识符为"ApplicationReceiver"的节点所请求,在标识符 为"1182261010219,,的实例中进行,并且与2007年6月19日13点 50分16秒发出的工作流事件密切相关。信用卡信息表可以包括申请人希望申请的信用卡名称、币种、 额度等字段。信用卡信息表与工作流事件对应的逻辑例如可以设置 如下向信用卡信息表中的数据添加申请接收节点标识符10"ApplicationReceiver"、信用卡申请实例标识符"1182261010001"。这样,信用卡信息表中的数据与节点标识符为 "ApplicationReceiver"的节点发出的、实例标识符为"l 182261010001"的工作流事件相关联。例如,信用卡信息表中的数据修改可以由标 识符为"ApplicationReceiver,,的节点所请求,也可能在标识符为 "1182261010001"的实例中进4亍,在该例子中,假设信用卡信息表与时间的关系较少,所以没有 在相关性信息中加入时间戳。本领域的技术人员应该理解,以上的 预定义逻辑设置仅仅是示例性的,而不是必须限制于此。在步骤203,接收指示数据被修改的消息。当申请接收节点修改数据库中的数据时,数据库可以通过内部 的消息传递机制发送指示数据被修改的消息。例如,数据库的触发 器中加入当数据被修改时记录一个更新标记,形成更新日志。另一 种可能的方式是,数据库外部的检测器可以定期检测数据库的变化, 从而当发现数据库中的数据被修改时,该检测器发送指示数据被修 改的消息。该检测器可以在数据库内部实现,也可以适当的方式在 其他位置处实现。指示数据被修改的消息例如可以包括以下信息修改的数据来自哪一个数据库或哪一个数据文件,修改的数据来自该数据库中的 哪一个表(如果修改的数据是存储在数据文件中的,则该消息可以 指示修改的数据来自哪一个数据文件)。在该实施例中,指示数据 被修改的消息包括修改的数据来自申请接收数据库中,并来自该 申请接收数据库中的申请人信息表等。在步骤204,根据在步骤203接收的指示数据被修改的消息,从 申请接收数据库中的申请人信息表查找并读取该修改的数据。例如, 该修改的数据可以是向申请人信息表插入的一个新条目,该条目包 括申请人姓名"李明"、年龄"30"岁、电子邮箱 "111^1^30@乂&1100.(;0111.01,,等信息。以下描述了该新条目<applicationData>〈CustomerName〉李明々CustomerName > <CustomerAge>3 0</Customer Age><CustomerMail〉 liming30@yahoo.com.cn </CustomerMail> <applicationData〉在步骤205,根据修改的数据来自哪个数据库中的哪个表,查找 针对该数据设置的预定义逻辑。由于在步骤202设置了申请人信息 表与工作流事件对应的逻辑,因此可以查找有关申请人信息表的预 定义逻辑,以便得到与工作流事件相关联的相关性信息。在步骤206,根据从步骤205得到的针对修改的数据的预定义逻 辑,得到与工作流事件有关的相关性信息。如果查找到存在关于申请人信息表的在预定逻辑,则可以得到 申请人:信息表中的数据与工作流事件关联的相关性信息。在该实施 例中,相关性信息包括申请接收节点的标识符"ApplicationReceiver"、 实例标识符"1182261010219"、时间戳"2007画06國19 13:50:16"。所得到 的相关性信息如下<EventHeaderData><NodeID>ApplicationReceiver</ApplicationID><InstanceID> 1182261010219</InstanceID><TimeStamp>2007-06-19 13:50:16</TimeStamp> </EventHeaderData〉在步骤207,对修改的数据及其相关性信息格式化,得到数据事件。首先可以建立 一 个空的数据事件,然后将在步骤204接收的修 改的数据作为数据事件的基本信息、将在步骤206得到的与工作流 事件相关联的相关性信息作为数据事件的扩展信息分别填充到数据 事件的适当位置,从而完成数据事件的格式化,得到一个完整的数 据事件。可以理解,在格式化过程中,只要后续的处理中能够知道数据事件的格式,则可以将数据事件的基本信息和扩展信息按照任何方 式放置,即可以以任何方式对数据事件进行格式化。例如,扩展事 件可以放置在数据事件的头部,而扩展信息可以放置在基本事件之 后,反之亦然。再例如,扩展事件可以分为两部分或更多个部分, 分别放置在数据事件的头部、尾部或其他位置。在步骤208,将得到的数据事件进行发送,以便数据事件能够与 工作流事件相关联。在另一个实施例中,数据存储装置是一个或多个数据文件,其 中存储有二进制码或ASCII码形式的数据。所以,在步骤202中设 置数据与工作流事件对应的逻辑时,针对各个数据文件而不是针对 数据库或数据库中的各表进行设置预定义逻辑。另外,在步骤203 接收指示数据被修改的消息时,由于数据文件自身不具有发送指示 数据被修改的消息的内部消息传递机制,所以可以利用检测器对于 数据文件进行定期检测,来发现该数据文件中的数据是否有修改。 该检测器可以在能够访问该数据文件的任何位置实现。图3是按照本发明的另一个实施例的数据事件发送装置130的 方框图。该数据事件发送装置130包括接收器310、格式化器320、 发送器330和逻辑设置器340。接收器310,用于接收由节点修改的数据。在一个实施例中,接 收器310可以从数据存储装置接收指示数据被节点修改的消息,然 后根据消息接收修改的数据。在另一个实施例中,接收器310还可 以定期检测数据存储装置中的数据是否被节点修改,当检测到有数 据被修改时接收修改的数据。其中,数据存储装置可以是数据库和/ 或数据文件。格式化器320,用于根据针对修改的数据的预定义逻辑得到与工 作流事件有关的相关性信息,然后修改的数据作为数据事件的基本 信息、将与工作流事件有关的相关性信息作为数据事件的扩展信息 来进行格式化,从而得到数据事件;发送器330,用于发送所得到的数据事件。13逻辑设置器340,用于获取与工作流事件有关的相关性信息,利 用所述相关性信息,设置数据与工作流事件对应的逻辑,从而完成 预定义逻辑的设置。其中,相关性信息可以包括节点标识符、实例 标识符、序列标识符以及时间戳中的至少 一个。图4示意性示出了可以实现根据本发明的实施例的计算设备的 结构方框图。图4中所示的计算机系统包括CPU(中央处理单元)401、 RAM(随 机存取存储器)402、 ROM(只读存储器)403、系统总线404,硬盘控 制器405、键盘控制器406、串行接口控制器407、并行接口控制器 408、显示器控制器409、硬盘410、键盘411、串行外部设备412、 并行外部设备413和显示器414。在这些部件中,与系统总线404 相连的有CPU401、 RAM 402、 ROM 403、硬盘控制器405、键盘控 制器406,串行接口控制器407,并行接口控制器408和显示器控制 器409。硬盘410与硬盘控制器405相连,键盘411与键盘控制器 406相连,串行外部设备412与串行接口控制器407相连,并行外部 设备413与并行接口控制器408相连,以及显示器414与显示器控 制器409相连。图4中每个部件的功能在本技术领域内都是众所周知的,并且图 4所示的结构也是常规的。这种结构不仅用于个人计算机,而且用于 手持设备,如PalmPC、 PDA(个人数字助理)、移动电话等等。在 不同的应用中,例如用于实现包含有根据本发明的客户端模块的用可以向图4中所示的结构添加某些部件,或者图4中的某些部件可 以被省略。图4中所示的整个系统由通常作为软件存储在硬盘410 中、或者存储在EPROM或者其他非易失性存储器中的计算机可读 指令控制。软件也可从网络(图中未示出)下载。或者存储在硬盘 410中,或者从网络下载的软件可^皮加载到RAM402中,并由CPU 401执行,以便完成由软件确定的功能。尽管图4中描述的计算机系统能够支持根据本发明的方案,但是该计算机系统只是计算机系统的 一 个例子。本领域的技术人员可以 理解,许多其他计算机系统设计也能实现本发明的实施例。
本发明还可以实现为例如由图4所示计算机系统所使用的计算 机程序产品,其可以包含有用于实现根据本发明的数据事件发送方 法的代码;其还可以包含有用于实现根据本发明的数据事件发送装 置的代码。在使用之前,可以把代码存储在其他计算机系统的存储 器中,例如,存储在硬盘或诸如光盘或软盘的可移动的存储器中, 或者经由因特网或其他计算机网络进行下载。
所公开的本发明的方法可以在软件、硬件、或软件和硬件的结合 中实现。硬件部分可以利用专用逻辑来实现;软件部分可以存储在 存储器中,由适当的指令执行系统,例如微处理器、个人计算机(PC) 或大型机来执行。
本发明还涉及一种计算机程序产品,该计算机程序产品包括用 于执行如下的代码接收由发出工作流事件的节点修改的数据;根 据针对修改的数据的预定义逻辑,得到与工作流事件有关的相关'性 信息;对修改的数据和相关性信息格式化,得到数据事件;发送数 据事件。
这样的计算机程序产品可以存储在存储载体中。 虽然已经参考目前考虑到的实施例描述了本发明,但是应该理解 本发明不限于所公开的实施例。相反,本发明旨在涵盖所附权利要 求的精神和范围之内所包括的各种修改和等同布置。以下权利要求 的范围符合最广泛解释,以便包含所有这样的修改及等同结构和功 能。
1权利要求
1. 一种数据事件发送方法,包括接收由发出工作流事件的节点修改的数据;根据针对所述修改的数据的预定义逻辑,得到与所述工作流事件有关的相关性信息;对所述修改的数据和所述相关性信息格式化,得到数据事件;发送所述数据事件。
2. 根据权利要求l的方法,所述接收由节点修改的数据的步骤 包括从数据存储装置接收指示数据被节点修改的消息; 根据所述消息,读取所述修改的数据。
3. 根据权利要求l的方法,所述接收由节点修改的数据的步骤 包括定期检测数据存储装置中的数据是否被节点修改; 当检测到有数据被修改时,读取所述修改的数据。
4. 根据权利要求2或3的方法,其中所述数据存储装置是数据 库和/或数据文件。
5. 根据权利要求1的方法,还包括 预先设置所述预定义逻辑。
6. 根据权利要求5的方法,其中所述预先设置所述预定义逻辑 的步骤包括获取与工作流事件有关的相关性信息;利用所述相关性信息,设置数据与工作流事件对应的逻辑。
7. 根据权利要求6的方法,其中所述相关性信息包括节点标识 符、实例标识符、序列标识符以及时间戳中的至少一个。
8. —种数据事件发送装置,包括接收器,用于接收由发出工作流事件的节点修改的数据; 格式化器,用于根据针对所述修改的数据的预定义逻辑以得到与所述工作流事件有关的相关性信息,以及对所述修改的数据和所述相关性信息格式化以得到数据事件; 发送器,用于发送所述数据事件。
9. 根据权利要求8的装置,其中所述接收器还用于 从数据存储装置接收指示数据被节点修改的消息; 根据所述消息,读取所述修改的数据。
10. 根据权利要求8的装置,其中所述接收器还用于 定期检观'j数据存储装置中的数据是否被节,S修改;当检测到有数据被修改时,读取所述修改的数据。
11. 根据权利要求9或10的装置,其中所述数据存储装置是数 据库和/或数据文件。
12. 根据权利要求8的装置,还包括 逻辑设置器,用于预先设置所述预定义逻辑。
13. 根据权利要求12的装置,其中所述逻辑设置器还用于 获取与工作流事件有关的相关性信息;利用所述相关性信息,设置数据与工作流事件对应的逻辑。
14. 根据权利要求13的装置,其中所述相关性信息包括节点标 识符、实例标识符、序列标识符以及时间戳中的至少一个。
15. —种事件处理系统,包括 数据存储装置,用于存储数据;节点,用于发出工作流事件,并用于对所述数据存储装置中的 数据进行修改;数据事件发送装置,包括接收器,用于接收由发出工作流事件的节点修改的数据, 格式化器,用于根据针对所述修改的数据的预定义逻辑以得到与所述工作流事件有关的相关性信息,以及对所述修改的数据和所述相关性信息格式化以得到数据事件,发送器,用于发送所述数据事件;以及事件处理装置,用于将所述数据事件与所述工作流事件相关联。
16. 根据权利要求15的系统,其中所述接收器还用于 从数据存储装置接收指示数据被节点修改的消息; 根据所述消息,读取所述修改的数据。
17. 根据权利要求15的系统,其中所述接收器还用于 定期检测数据存储装置中的数据是否被节,泉修改;当检测到有数据被修改时,读取所述修改的数据。
18. 根据权利要求16或17的系统,其中所述数据存储装置是数 据库和/或数据文件。
19. 根据权利要求15的系统,其中所述数据事件发送装置还包括逻辑设置器,用于预先设置所述预定义逻辑。
20. 根据权利要求19的系统,其中所述逻辑设置器还用于 获取与工作流事件有关的相关性信息;利用所述相关性信息,设置数据与工作流事件对应的逻辑。
21. 根据权利要求20的系统,其中所述相关性信息包括节点标 识符、实例标识符、序列标识符以及时间戳中的至少一个。
全文摘要
公开了一种数据事件发送方法和装置以及事件处理系统。该方法包括步骤接收由发出工作流事件的节点修改的数据;根据针对修改的数据的预定义逻辑,得到与工作流事件有关的相关性信息;对修改的数据和相关性信息格式化,得到数据事件;发送数据事件。本方法能够在不影响现有业务处理架构的情况下,获取和发送业务流程中的数据事件,以便业务流程中的工作流事件和数据事件得以关联。
文档编号G06Q10/00GK101520861SQ20081008093
公开日2009年9月2日 申请日期2008年2月29日 优先权日2008年2月29日
发明者M·斯塔基, 艳 周, 成 张, 轶 车 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1