跨组织协同环境下时序逻辑驱动的任务协同方法

文档序号:6581103阅读:456来源:国知局
专利名称:跨组织协同环境下时序逻辑驱动的任务协同方法
技术领域
本发明涉及一种跨组织协同环境下时序逻辑驱动的任务协同方法,尤其适用于大 型计算机网络商务平台下对参与跨组织协同的协同者包含的各个任务的执行时序时序 分析。
背景技术
随着Web服务技术的发展,企业通过Web服务将自身提供的各种功能对外发布, 因此传统的企业对企业(B2B)协同逐步被企业间的Web服务整合所替代。目前,领 域内对企业间通过Web服务协同的研究主要集中在如何选择合适的协同对象、如何将 不同企业提供的Web服务组合起来等方面,很少有工作关注如何在已经确定了协同对 象的情况下根据各个协同对象不同任务的时序来确定整个协同的时间时序分析问题。

发明内容
发明目的本发明所要解决的技术问题是针对现有技术的不足,提供了一种跨组 织协同环境下时序逻辑驱动的任务协同方法。
技术方案本发明公开了一种跨组织协同环境下时序逻辑驱动的任务协同方法, 在将业务逻辑数据存入计算机存储器后,包括以下步骤
读取对本次协同的业务逻辑;
分析业务逻辑,得到参与本次协同的所有协同者及每个协同者的任务列表; 取得所有的协同者之间的任务时序逻辑关系;所述时序逻辑关系 ReKTask-A,Task-B〉为两个从属于不同协同者的任务之间时间上的相互关系,式中 Task-A, Task-B分别属于不同的协同者,二者之间存在一个任务时序逻辑关系Rel;所 述任务时序逻辑关系rel取值为BEFORE, MEET, OVERLAP, EQUAL, DURING中的 一个;
对每一个任务时序逻辑关系,取得业务逻辑数据中包含的时序逻辑参数;所述时 序逻辑参数包括时间单位、时序关系、时序关系间隔数;
为每个任务时序逻辑关系建立时间轴,并根据时序逻辑参数定位该任务时序逻辑 关系在时间轴上的位置;
合并所有的任务时序逻辑关系的时间轴;
在合并后的时间轴上判定每个任务起始、结束时间;
得到最终的执行逻辑。
本发明中,所述业务逻辑、每个协同者的任务列表以及任务之间的时序逻辑关系通过建立标签的XML (extensible Markup Language)文件形式提供。本发明中,所述为每个任务时序逻辑关系建立时间轴,并根据时序逻辑参数定位 该任务时序逻辑关系在时间轴上的位置包括以下步骤(301) 建立一个时间轴,时间单位以任务时序逻辑关系规定的时序逻辑参数中规 定的时间单位为准;(302) 根据时序逻辑参数中的时序关系确定任务时序逻辑关系中首先执行的任务 并将其起始时间规定为时间轴的起点;(303) 依据时序逻辑参数中的时序关系间隔数确定另一个任务的起始时间;(304) 记录协同者在本时间轴上的起始、结束时间和任务时序逻辑关系中包括的 各个任务的起始、结束时间。本发明中,所述合并所有任务时序逻辑关系时间轴包括以下步骤 设已建立的任务时序逻辑时间轴的集合为忍=/^,^,...;^ pc,EXS f7=< / <="卩表示忍中的一个任务时序逻辑时间轴;任意Xi包含一个任务时序逻辑关系ReKTask-A-i,Task-B-i>; TXS=①用于保存执行过程中的临时信息;(401) 设/=7; _/=/, A:=7; XS=/3f7,",…X"入.7XS=";(402) 当;'<="时转(403),否则转(407);(403) 取得&代表的任务时序逻辑关系ReKTask-A-i, Task-B-i>;(404) 当_/<="时转(405),否则转(406);(405) 若》代表的任务时序逻辑关系ReKTask-A-j, Task-B-j〉中任意一个任务与 x,代表的任务时序逻辑关系中的某一个任务同属于一个协同者,则建立二元组6^,a, rfli-Ji^ 7iwA;-lVJ ,其中7i^-X-/、 7i^-}V表示任务时序逻辑时间轴表述的两个任务 时序逻辑关系中同属于一个协同者的两个任务,将所述二元组加入至集合7XS中;转 步骤(404);(406) ! = /+/;转步骤(402);(407) 若7XS为空集则退出,否则进行步骤(408);(408) 遍历rXS中所有属于同一个协同者的任务及属于同一个协同者的任务对应 的各个任务时序逻辑时间轴,按照其执行时间的先后,在坐标在时间轴上定位;重 复本步骤直至所有待合并的时间轴合并到同一时间轴为止。有益效果本发明所述的跨组织协同环境下时序逻辑驱动的任务协同方法,从建 立对跨组织协同的业务逻辑开始,整个时序分析过程是由计算机实现自动化计算的, 无须人为因素的加入,提高了客观性和运行效率。采用任务时序逻辑模型FollowMe, 使选择结果相对以往方法也更为客观,同时使任务时序分析能更好的满足业务逻辑的需要。


下面结合附图和具体实施方式
对本发明做更进一步的具体说明,本发明的上述和/ 或其他方面的优点将会变得更加清楚。 图l为本发明流程图。图2为本发明建立某一任务时序逻辑关系时间轴的流程图。 图3为本发明合并多个任务时序逻辑时间轴的流程图。图4a、图4b、图4c、图4d、图4e为本发明中各种任务逻辑时序关系的示意图。 图5a、图5b、图5c为实施实例中任务时序逻辑关系时间轴。 图6为实施实例中合并后的时序逻辑关系时间轴。
具体实施例方式如图1所示,本发明公开了跨组织协同环境下时序逻辑驱动的任务协同方法,在将 业务逻辑数据存入计算机存储器后,开始程序运行后,包括以下步骤步骤1, CPU读取存入计算机存储器的业务过程中的业务逻辑;步骤2,分析业务逻辑,得到参与本 次协同的所有协同者及每个协同者的任务列表;步骤3,取得所有的协同者之间的任务 时序逻辑关系;所述时序逻辑关系<0^1^-人1^^8: rel〉为两个从属于不同协同者的任 务之间时间上的相互关系,式中Task-A, Task-B分别属于不同的协同者,二者之间存 在一个任务时序逻辑关系rel;所述任务时序逻辑关系rel取值为BEFORE, MEET, OVERLAP, EQUAL, DURING中的一个;步骤4,对每一个任务时序逻辑关系,取得业 务逻辑数据中包含的时序逻辑参数;所述时序逻辑参数包括时间单位、时序关系、 时序关系间隔数;步骤5,为每个任务时序逻辑关系建立时间轴,并根据时序逻辑参数 在时间轴上描述该任务时序逻辑关系;若所有的任务时序逻辑关系均已在各自时间轴 上被描述,则进行下一步;步骤6,合并所有的任务时序逻辑时间轴;步骤7,在合并 后的时间轴上判定每个任务经过时序分析后的起始、结束时间;步骤8,给出经过时序 分析的最终执行逻辑描述;所有所述业务逻辑、任务时序逻辑关系通过建立了标签的 XML文件形式提供。结束本发明分析方法的运行程序。如图2所示,所述为每个任务时序逻辑关系建立时间轴、并根据时序逻辑关系参数 在时间轴上描述该任务时序逻辑关系包括以下步骤步骤301,建立一个时间轴,时间 单位以任务逻辑时序关系规定的时序逻辑参数中规定的时间单位为准;步骤302,根据 时序逻辑参数中的时序关系确定任务时序逻辑关系中首先执行的任务并将其起始时间 规定为时间轴的起点;步骤303,依据任务时序逻辑关系中的时序关系间隔数确定另一 个任务的起始时间;步骤304,记录协同者在本时间轴上的起始、结束时间和任务时序逻辑中包括的各个任务的起始、结束时间。如图3所示,所述合并协同中所有任务逻辑时序关系时间轴包括以下步骤设已 建立的任务时序逻辑时间轴的集合为^=^/,",...;^ a,GXS (7=< / <="卩表示15中的 一个任务时序逻辑时间轴;任意Xi包含一个任务时序逻辑关系〈Task-A-i, Task-B-i: rel>; TXS二O用于保存执行过程中的临时信息;步骤401,设!'=7,^/=J^ A:=7, XS=/^,JC2,...W, ^Jffi="; 步骤402,当/<="时转步骤403,否则转步骤407;步骤403,取得;c;代表 的任务时序逻辑关系ReKTask-A-i, Task-B-i>;步骤404,_/=!'+7;当_/<="时转步骤405, 否则转步骤406;步骤405,若》代表的任务时序逻辑关系ReKTask-A-j, Task-B-j〉中任 意一个任务与;c,代表的任务时序逻辑关系中的某一个任务同属于一个协同者,则建立 二元组6^,J9, 7iwit-Z-" 7iw)WV入其中Tl^-X-i'、 7iw/t-JV表示任务时序逻辑时间轴表 述的两个任务时序逻辑关系中同属于一个协同者的两个任务,将所述二元组加入至集 合7XS中;转步骤404;步骤406, / = 转步骤402;步骤407,若7XS为空集则 转步骤409退出,否则进行步骤408;步骤408,遍历7XS中所有属于同一个协同者的 任务及属于同一个协同者的任务对应的各个任务时序逻辑时间轴,按照其执行吋间的 先后,在坐标在时间轴上定位;重复本步骤直至所有待合并的时间轴合并到同一时间 轴为止。业务逻辑是对参与本次协同的所有协同者执行的任务以及其交互信息的集合。业务 逻辑,任务时序逻辑关系通过XML文件以如下形式提供 〈business specification>(collaborator name =,C-A, task-list = 'CA-List, duration = '30s,/i>Collaborator name =,C-B, task-list = 'CB-List, duration = '28s,/>(collaborator name =tC-C, task-list = 'CC-List, duration = '35s,/> </business specification)以上文件格式是使用本发明时必须遵循的格式。business specification表示标签内描 述的是业务逻辑关系,collaborator表示参与本次协同的一个协同者。其中name表示协 同者的名称(在本次协同中其名称是唯一的),task-list表示协同者自身的任务列表; duration表示该协同者执行总时长。任务列表文件通过XML文件以如下形式提供 〈tasklist owner = 'C-A,><task name — 'T-B, collaborator —■■ 'C-B, c-task — 'TB, duration — '5s, starttime — '6s,/> </tasklist>以上文件格式是使用本发明时必须遵循的格式。tasklist表示标签内描述的是某个7协同者的任务列表,owner表示该tasklist从属与的协同者名称,task表示每个协同者 的任务,其中name表示任务名称,collaborator值表示该与该task具有任务逻辑时序 关系的task从属的协同者名称,c-task表示与该task具有任务逻辑时序关系的task名 称;duration表示该任务的执行时长,starttime表示该任务在协同者中开始执行的时间。
任务时序逻辑关系通过XML文件以如下形式提供 〈temporary interval = ' ls, relation = 'BEFORE' parameter = '5s, >
<task name = 'T-B, belong = 'C-A, duration = ',/>
<task name - 'T陽B, belong = 'C-B,/> </temporary>
以上文件格式是使用本发明时必须遵循的格式。Temporary表示标签内描述的是任 务时序逻辑关系。interval表示了本时序关系的时间单位;relation表示第一个描述的任 务与第二个描述的任务之间的任务时序关系(这个关系不是对称的);parameter表示该 任务时序逻辑关系的时序关系间隔数。Task表示任务时序逻辑关系中的一个任务,name 是其名称,belong表示其属于哪一个协同者。
时序关系包括以下几种BEFORE,MEET,OVERLAP,EQUAL,DURING等(J.RAllen 在论文"Maintaining Knowledge about temporal internals"中定义,该论文出自 Communications of the ACM, vol.26,no.11,1983 ).BEFORE(Taski,Taskj)表示Taski于Taskj 之前执行。Taski比Taskj提前的时间可在任务逻辑时序参数中parameter的值所确定; MEET(Taski,Taskj)表示Taskj在Taski执行结束后开始执行;OVERLAP(Taski,Taskj)表 示Taski与Taskj在执行时间上有重叠,若时序关系为OVERLAP,则在任务时序逻辑 关系中的parameter值域型为parameter='9s,5s,。其中第一个参数表示两个任务开始重 叠的时间,第二个参数表示重叠的时长。EQUAL(Taski,Taskj) 表示两个任务同时开 始,同时结束;DURING(Taski,Taskj)表示Taskj包含在Taski的执行时长中。图4a、图 4b、图4c、图4d、图4e为上述时序关系的示意图。
在读取了业务逻辑后,通过对业务逻辑的分析可以得到参与本次协同的协同者,并 依据协同者名称得到相应的协同者的任务列表;分析任务列表,可以得到该协同者所 有的与其他协同者具有任务时序逻辑关系的任务。通过对任务时序逻辑关系的描述文 件进行分析可以得到各个任务时序逻辑关系参数。
以如下业务逻辑为例 〈business specification)
(collaborator name =,C-A, task-list = 'CA-List' duration = ' 10s,/>
(collaborator name =,C-B, task-list = 'CB-List, duration = '9s,/>
(collaborator name ='C-C, task-list = 'CC-List, duration = '8s,></business specification
〈tasklist owner = 'C-A,〉
<task name = T-A, collaborator = 'C-B, c-task = 'T-B, duration = '2s, starttime = ' ls,/> <task name 二 'T-B, collaborator = 'C-B, c-task = 'T-B, duration = '5s, starttime = '3s,/>
</tasklist>
〈tasklist owner = 'C-B,>
<task name = 'T-A, collaborator = 'C墨A, c一task 二 'T隱A, duration = '3s, starttime = ' ls,> <task name = 'T-B, collaborator ='C-A, c-task = 'T-B, duration = '4s, start time = '3s,/> <task name = 'T-C, collaborator 二 'C-C, c-task 二 'T-A, duration = 'ls, starttime- '7.5s,/>
</tasklist>
〈tasklist owner = 'C-C,>
<task name = 'T-A, collaborator = 'C-B, c-task = 'T-B, duration = '4s, starttime = ' ls,/> </tasklist>
〈temporary interval = ' 1 s, relation 二 'MEET, parameter =', >
<task name = 'T陽A, belong = 'C-A, duration = '2s,/>
<task name = T-A, belong = 'C-B, duration = '3s,/> </temporary>
<temporary interval = 'ls, relation = 'BEFORE' parameter = 'ls, >
<task name = T-B, belong = 'C-A, duration = '5s,/>
<task name = 'T-B' belong = 'C-B, duration = '4s,/> </temporary〉
(temporary interval = 'ls, relation = 'MEET' parameter 二 '5s, >
<task name 二 'T-C, belong = 'C-A, duration = ' ls,/>
<task name = 'T-A, belong = 'C-C, duration = '4s,/> </temporary〉
首先读取业务逻辑文件,得到本次协同的协同者C-A和C-B。根据各个协同者 的名称得到其任务列表文件,分析该文件分别得到各个协同者使用的任务列表C-A: T-A, T-B; C-B: T-A,T-B,T-C; C-C: T-A。
并且得到任务时序逻辑关系如下
(1) 协同者C-A的任务T-A与协同者C-B的任务T-A具有任务逻辑时序关系, 表示如下MEET(T-Ac.a,T-Ac.b);
(2) 协同者C-A的任务T-B与协同者C-A的任务T-B具有任务逻辑时序关系, 表示如下BEFORE (T-Bc.a, T-BC.B);(3)协同者C-B的任务T-C与协同者C-C的任务T-A具有任务逻辑时序关系, 表示如下MEET (T-Cc-B, T-Ac_c);
步骤5分别建立任务时序逻辑关系时间轴描述,如图5a、图5b、图5c所示。在 任务时序逻辑关系文件中,得到的任务时序逻辑关系分别为 MEET(T陽AC-A,T-AC-B),BEFORE(T-BC-A,T-BC國B),MEET(T-CC-B,T-AC-C),分别表示 T-AC-A任务与任务T-AC-B同时发生,任务T-BC-A与任务T-BC-B之前发生,任务 T-CC-B与任务T-AC-C同时发生。具体在时间轴上的表示如图5a、图5b、图5c所示。
步骤6合并上一步骤中得到的所有时序逻辑关系时间轴,得到的合并后的时间轴 如附图6所示。
步骤7,在合并后的时间轴上判定每个任务经过时序分析后的起始、结束时间; 根据合并后时间轴上各个协同者的的不同起始、结束时间,按照如下规则取得各 个协同者时序分析后的起始、结束时间
(1) 对于起始时间,选择协同者所有起始时间中最小的;
(2) 对于结束时间,选择协同者所有结束时间中最大的; 本实施实例中各任务的起始、结束时间为
协同者C-A任务T-A:开始时间l,结束时间3;
协同者C-B任务T-A:开始时间3,结束时间6; 协同者C-A任务T-B:开始时间3,结束时间8; 协同者C-B任务T-B:开始时间9,结束时间13; 协同者C-B任务T-C:开始时间13.5,结束时间14.5; 协同者C-C任务T-A:开始时间14.5,结束时间18.5 协同者C-A起始时间1,结束时间10; 协同者C-B起始时间2,结束时间15; 协同者C-C起始时间13.5,结束时间21.5;
步骤8,给出经过时序分析的最终执行逻辑描述;所有所述业务逻辑、任务时序逻 辑关系通过建立了标签的XML文件形式提供,本实施实例得到的任务时序逻辑描述 为
〈temporary logic〉
Collaborator name = 《C-A, stime= ", etime= <10, >
<taskname= <T-A, tstime= M, tetime= <3, />
<taskname= <T-A, tstime= tetime= <8, /> </collaborator>Collaborator name = 'C-B, stime= <2, etime= <15, >
<task name = ' T陽A
<taskname= 'T-B
<taskname= 'T-C </collaborator>
(collaborator name = 'C-C' stime= , 13.5' etime=, 21.5, >
<taskname= 'T-A, tstime=, 14.5, tetime=, 18.5, /> </collaborator> 〈/temporary logic>
结束本发明分析方法的运行程序。
本发明提供了一种跨组织协同环境下时序逻辑驱动的任务协同方法的思路及方 法,具体实现该技术方案的方法和途径很多,以上所述仅是本发明的优选实施方式, 应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还 可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。本实施例中 未明确的各组成部份均可用现有技术加以实现。
tstime= '3, tetime= <6, /> tstime= <9, tetime= <13, /> tstime=' 13.5' tetime=, 14.5' />
1权利要求
1、一种跨组织协同环境下时序逻辑驱动的任务协同方法,其特征在于,在将业务逻辑数据存入计算机存储器后,包括以下步骤读取对本次协同的业务逻辑;分析业务逻辑,得到参与本次协同的所有协同者及每个协同者的任务列表;取得所有的协同者之间的任务时序逻辑关系;所述时序逻辑关系Rel&lt;Task-A,Task-B&gt;为两个从属于不同协同者的任务之间时间上的相互关系,式中Task-A,Task-B分别属于不同的协同者,二者之间存在一个任务时序逻辑关系Rel;所述任务时序逻辑关系rel取值为BEFORE,MEET,OVERLAP,EQUAL,DURING中的一个;对每一个任务时序逻辑关系,取得业务逻辑数据中包含的时序逻辑参数;所述时序逻辑参数包括时间单位、时序关系、时序关系间隔数;为每个任务时序逻辑关系建立时间轴,并根据时序逻辑参数定位该任务时序逻辑关系在时间轴上的位置;合并所有的任务时序逻辑关系的时间轴;在合并后的时间轴上判定每个任务起始、结束时间;得到最终的执行逻辑。
2、 根据权利要求1所述的跨组织协同环境下时序逻辑驱动的任务协同方法,其特 征在于,所述业务逻辑、每个协同者的任务列表以及任务之间的时序逻辑关系通过建 立标签的XML文件形式提供。
3、 根据权利要求1所述的跨组织协同环境下时序逻辑驱动的任务协同方法,其特 征在于,所述为每个任务时序逻辑关系建立时间轴,并根据时序逻辑参数定位该任务 时序逻辑关系在时间轴上的位置包括以下步骤(301) 建立一个时间轴,时间单位以任务时序逻辑关系规定的时序逻辑参数中规 定的时间单位为准;(302) 根据时序逻辑参数中的时序关系确定任务时序逻辑关系中首先执行的任务 并将其起始时间规定为时间轴的起点;(303) 依据时序逻辑参数中的时序关系间隔数确定另一个任务的起始时间;(304) 记录协同者在本时间轴上的起始、结束时间和任务时序逻辑关系中包括的 各个任务的起始、结束时间。
4、 根据权利要求1所述的跨组织协同环境下时序逻辑驱动的任务协同方法,其特 征在于,所述合并所有任务时序逻辑关系时间轴包括以下步骤设已建立的任务时序逻辑时间轴的集合为15=/^,&...^ j,eXS (7=< / <="卩表示 义S中的一个任务时序逻辑时间轴;任意Xi包含一个任务时序逻辑关系Rel:<Task-A-i,Task-B-i>; TXS= O用于保存执行过程中的临时信息;(401) 设zW; yW; A:=7; u"力7XS=,力(402) 当/<="时转(403),否则转(407);(403) 取得&代表的任务时序逻辑关系ReKTask-A-i, Task-B-i>;(404) _/=z'+7;当_/<="时转(405),否则转(406);(405) 若》代表的任务时序逻辑关系ReKTask-A-j, Task-B-j〉中任意一个任务与 jc,代表的任务时序逻辑关系中的某一个任务同属于一个协同者,则建立二元组6^,》-7iwH" 7^)t-lVJ ,其中7iwiH/、 7iwHV表示任务时序逻辑时间轴表述的两个任务 时序逻辑关系中同属于一个协同者的两个任务,将所述二元组加入至集合7XS中;转 步骤(404);(406) / = 转步骤(402);(407) 若7XS为空集则退出,否则进行步骤(408);(408) 遍历7XS中所有属于同一个协同者的任务及属于同一个协同者的任务对应 的各个任务时序逻辑时间轴,按照其执行时间的先后,在坐标在时间轴上定位;重复 本步骤直至所有待合并的时间轴合并到同一时间轴为止。
全文摘要
本发明公开了一种跨组织协同环境下时序逻辑驱动的任务协同方法,在将业务逻辑存入计算机存储器后,包括以下步骤CPU读取存入计算机存储器中的业务逻辑;取得业务逻辑中描述的各个协同者的任务列表;取得各个协同者之间的任务时序逻辑关系;对于每一组协同者之间的任务时序逻辑关系,获得时序逻辑关系参数;在时间坐标轴中建立对时序逻辑关系的描述;合并所有任务时序逻辑时间轴;取得各个协同者的始、终时间;给出执行时序逻辑描述。本发明从建立对协同任务的业务逻辑开始,整个时序分析过程都是由计算机实现自动化计算的,提高了运行效率和时序分析结果的可靠性。
文档编号G06F9/46GK101615139SQ200910183018
公开日2009年12月30日 申请日期2009年8月4日 优先权日2009年8月4日
发明者超 吕, 窦万春 申请人:南京大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1