CN101833481A - 一种用于检测组合服务中并发安排不当的伙伴服务的方法 - Google Patents
一种用于检测组合服务中并发安排不当的伙伴服务的方法 Download PDFInfo
- Publication number
- CN101833481A CN101833481A CN 201010172366 CN201010172366A CN101833481A CN 101833481 A CN101833481 A CN 101833481A CN 201010172366 CN201010172366 CN 201010172366 CN 201010172366 A CN201010172366 A CN 201010172366A CN 101833481 A CN101833481 A CN 101833481A
- Authority
- CN
- China
- Prior art keywords
- message
- movable
- activity
- concurrent
- services
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 35
- 230000000694 effects Effects 0.000 claims abstract description 64
- 239000002131 composite material Substances 0.000 claims description 43
- 230000015572 biosynthetic process Effects 0.000 claims description 14
- 230000008878 coupling Effects 0.000 claims description 3
- 238000010168 coupling process Methods 0.000 claims description 3
- 238000005859 coupling reaction Methods 0.000 claims description 3
- 230000000644 propagated effect Effects 0.000 claims description 3
- 230000001902 propagating effect Effects 0.000 claims description 3
- 238000011161 development Methods 0.000 abstract description 6
- 230000003068 static effect Effects 0.000 abstract description 3
- 238000013461 design Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 239000012467 final product Substances 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 108010064245 urinary gonadotropin fragment Proteins 0.000 description 1
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明提供了一种用于检测组合服务中并发安排不当的伙伴服务的方法,属于基于服务的软件开发过程的软件质量保障领域,是一种用于辅助查错的静态分析方法。该方法包括:首先,构造组合服务的消息传播图;其次,构造与伙伴服务相关的活动之间依赖关系图;再次,构造可并发运行的活动序列组的队列;最后,检测并发相关不当安排的活动。本方法可单独作为一款工具或一个插件集成到基于业务流程执行语言的服务开发集成开发环境,辅助开发人员自动检测组合服务中可能存在并发相关的伙伴服务不当安排,以提高所设计服务的质量。
Description
技术领域
本发明属于基于服务的软件开发过程的软件质量保障领域,是一种用于辅助查错的静态分析方法。
背景技术
面向服务的软件体系结构(SOA),因其具有异构系统互操作性、遗留系统重用性与松耦合性,而得到业界普遍接受。基于Web服务的软件开发作为SOA具体实现也已成为常见的软件开发方法。在这种软件开发方法中,服务组合是生成新服务与构建应用的重要方式。服务组合方式之一是用Web服务业务流程执行语言(WS-BPEL)将多个称为伙伴服务的服务组装成组合服务,该组合服务作为服务可与其它服务构成新的组合服务,组合服务所提供的服务由这些伙伴服务之间合作完成。伙伴服务可分布在具有自主计算能力的不同系统中,为提高组合服务的服务质量,应尽可能安排相关的伙伴服务并发执行。伙伴服务之间可能存在复杂关系,从而导致描述组合服务的程序结构复杂。另外由于流程执行语言本身特点,通常用业务流程执行语言描述的组合服务的程序可读性很差,服务开发人员很难直接用业务流程执行语言编写组合服务。
目前设计组合服务大都借助于图形设计工具,这些工具能自动将设计结果转化成由业务流程执行语言所描述的程序;然而在现存的图形设计工具中,人工编排多个伙伴服务执行顺序、设置伙伴服务属性、及指定它们间各种约束关系通常涉及多个视图区,合理正确地安排好所涉及的伙伴服务实属不易,不合理安排可能导致所得程序存在诸如死锁、活锁、执行不可达活动、接收消息冲突、将不能并发执行的伙伴服务安排成并发执行(可能导致错误发生)、以及将可并发执行的伙伴服务没有安排成并发执行(可能导致该组合服务质量下降)等错误;人工检查这些不当的服务安排代价很大。为方便见,本文后面将不能并发执行的伙伴服务安排成并发执行、以及将可并发执行的伙伴服务没有安排成并发执行的称为与并发相关的伙伴服务不当安排。
学术界用模型检测的方法(如C.Ouyang,E.Verbeek,W.M.P.van der Aalst,S.Breutel,M.Dumas,and A.H.M.ter Hofstede.Formal semantics and analysis of controlflow in WS-BPEL.Science of Computer Programming,67(2-3):162-198,2007.)检测用业务流程执行语言所描述的组合服务是否存在死锁、活锁、执行不可达活动、接收消息冲突等错误。目前没有解决并发相关的伙伴服务不当安排的技术。
发明内容
本发明旨在检测用WS-BPEL描述组合服务中与并发相关的伙伴服务不当安排,即检测将不能并发执行的伙伴服务安排成并发执行、以及将可并发执行的伙伴服务没有安排成并发执行的安排。基于对组合服务消息流的静态分析导出伙伴服务的依赖关系,据此得到伙伴服务安排正确与合理的判别依据,从而有效地解决了检测组合服务中与并发相关的伙伴服务安排不当的问题。
本发明的主流程如图4所示,具体包括如下四个步骤:
第一步:构造组合服务的消息传播图(MPG)。其流程如图5所示。
消息传播图是一个有向图,用于表示在不同伙伴服务中通信的消息之间一种依赖关系,其顶点表示消息,有向边表示其所连接的两消息之间直接传播关系。组合服务中消息直接传播关系有四种:
1.消息A部分或全部信息复制到消息B,则称消息A直接传播到消息B。
2.组合服务同步调用一个伙伴服务。在过程执行语言中用带有一个输入消息与输出消息(Invoke类型)的活动(Activity)完成同步调用,若输入消息为A且输出消息为B,则称消息A直接传播到消息B。
3.组合服务异步调用一个伙伴服务。在过程执行语言中用具有相同的伙伴链接的两个活动来实现异步调用一个伙伴服务,其中一个活动只有一个输入消息(Invoke类型),另一个只有输出消息(Receive类型);若输入消息为A,输出消息为B,则称消息A直接传播到消息B。
4.组合服务为其用户(其它服务)提供异步服务。在过程执行语言中用具有相同的伙伴链接的两个活动来提供异步服务,其中一个活动只有一个输出消息(Receive类型),另一个活动只有输人消息(Reply类型);若输出消息为A,输人消息为B,则称消息A直接传播到消息B。
若消息A直接传播到B,则在消息传播图中存在一条有向边由表示消息A的顶点指向表示消息B的顶点。
通过解析描述组合服务的WS-BPEL程序,可以得到所有上述四种直接传播关系,这些直接传播关系及与传播关系相关联的所有消息构成该组合服务的消息传播图。
第二步:构造与伙伴服务相关的活动之间依赖关系图(ADG)。处理流程如图6所示。
以下提到的活动都仅跟伙伴服务相关,与之无关的其它活动都不在所要构造的ADG中。
活动依赖关系图(ADG)是一个有向图,用于表示在不同活动之间一种因数据耦合或其它约束而存在的一种依赖关系,其顶点表示活动,有向边表示其所连接的两个活动之间执行时间顺序关系,有向边的起始顶点所表示的活动必须先于该边终点所表示的活动运行。组合服务中与伙伴服务有关的活动存在两种依赖关系:
1.若活动S输出消息为A,活动T输入消息为B,且在组合服务的消息传播图MPG中存在一条有向路径P,P的起始点是消息A所对应的顶点,终点是消息B所对应的顶点,则称活动T依赖于活动S。
2.若活动S与活动T存在链接(LINK)关系,且活动S是链接的源(SOURCE),T是链接的目标(TARGET),则称活动T依赖于活动S。
若活动T依赖于活动S,则在活动依赖关系图中存在一条有向边由表示活动S的顶点指向表示活动T的顶点。
通过解析描述组合服务的WS-BPEL程序,可以得到上述两种依赖关系所有关系,这些依赖关系及与依赖关系相关联的所有活动构成该组合服务的活动依赖关系图ADG。
第三步:构造可并发运行的活动序列组的队列Q。其处理流程如图7所示。
队列Q包含若干活动序列组,每一活动序列组G包含若干个活动序列,每一活动序列L包含若干与伙伴服务有关的活动。队列Q具有如下性质:
1.属不同活动序列组中的活动不能并发运行;
2.同一活动序列组中不同活动序列间的活动可以并发运行;
3.同一活动序列组中属同一活动序列中的活动只能顺序运行。
通过对第二步所得活动依赖关系图ADG作若干遍如下处理直至ADG为空时即可得队列Q,其中每一遍处理可得到一个活动序列组G,每一遍处理过程如下:
1.将集合G置为空;
2.对于ADG中每一个入度为零的顶点U,在ADG中求一条有向路径P,P中的顶点所代表的活动依有向边的方向组成一活动序列L,将L并入G中;所求的有向路径P满足条件:[1]若U的出度不等于1,P只包含一个顶点U;[2].若U的出度等于1,则路径P=UV1…VnV满足:Vk的入度与Vk的出度都等于1;V的入度等于1且V的出度大于1,或V的入度与出度都等于1但V后继顶点的入度大于1;
3.将2所得G插入队列Q,并将G中顶点及与之相连的边从ADG中删除掉,得到新ADG。
第四步:检测并发相关不当安排的活动。
检查描述组合服务的WS-BPEL程序中,被安排成并发运行的活动中是否存在若干活动分属不同活动序列组,或虽属同一个活动序列组但却在同一活动序列中;若存在,则这些活动即属于把不能并发执行伙伴服务安排成并发执行,从而可能导致错误发生。
同样,检查描述组合服务的WS-BPEL程序中,被安排成顺序运行的活动中是否存在若干活动属同一活动序列组,若存在,则这些活动即属于把可并发执行的伙伴服务没有安排成并发执行,从而可能导致该组合服务质量下降。
本发明的有益效果:本方法可单独作为一款工具或一个插件集成到基于业务流程执行语言的服务开发集成开发环境,辅助开发人员自动检测组合服务中可能存在并发相关的伙伴服务不当安排,即时排除因将不能并发执行伙伴服务安排成并发执行而可能导致错误、以及将可并发执行的伙伴服务没有安排成并发执行而可能导致该组合服务质量下降等失误,以提高所设计服务的质量。
附图说明
图1:Travel的消息传播图(MPG);
图2:Travel的活动依赖图(ADG);
图3:Travel的可并发运行的活动序列组的队列Q;
图4:主流程图;
图5:解析BPEL程序并构造消息传播关系集合的流程图;
图6:解析BPEL程序并根据MPG构造活动依赖关系图的流程图;
图7:构造并发运行的活动序列组的队列Q流程图;
其中图1~图3为实施例中所使用的图形。
具体实施例
下面通过一个具体的例子对本发明作进一步的说明,但本发明并不仅适用于以下例子。
下面是一个Travel服务,它是一个提供旅游服务的组合服务,当它接收到一个包含公司某员工信息的客户请求时,Travel向名为Employee的伙伴服务发出查询该员工可享受旅行等级(travel class)的服务请求,随后它根据Employee返回的旅行等级分别向AmericanAirline与Delta Airline伙伴服务查询满足旅行等级的机票信息,并根据查询结果,将票价低的机票信息返回给客户。下面代码是服务Travel用WS-BPEL实现的核心片段。
1.<sequence>
2. <receive partnerLink=″client″
3. portType=″trv:TravelApprovalPT″
4. operation=″TravelApproval″
5. variable=″TravelRequest″createInstance=″yes″/>
6. <assign><copy><from variable=″TravelRequest″part=″employee″/>
7. <to variable=″EmployeeTravelStatusRequest″part=″employee″/>
8. </copy></assign>
9. <invoke partnerLink=″employeeTravelStatus″
10. portType=″emp:EmployeeTravelStatusPT″
11. operation=″EmployeeTravelStatus″
12. inputVariable=″EmployeeTravelStatusRequest″
13. outputVariable=″EmployeeTravelStatusResponse″/>
14. <assign><copy>
15. <from variable=″TravelRequest″part=″flightData″/>
16. <to variable=″FlightDetails″part=″flightData″/></copy><copy>
17. <from variable=″EmployeeTravelStatusResponse″part=″travelClass″/>
18. <to variable=″FlightDetails″part=″travelClass″/></copy></assign>
19. <flow><invoke partnerLink=″AmericanAirlines″
20. portType=″aln:FlightAvailabilityPT″
21. operation=″FlightAvailability″
22. inputVariable=″FlightDetails″/>
23. <receive partnerLink=″AmericanAirlines″
24. portType=″aln:FlightCallbackPT″
25. operation=″FlightTicketCallback″
26. variable=″FlightResponseAA″/></flow>
27. <invoke partnerLink=″DeltaAirlines″
28. portType=″aln:FlightAvailabilityPT″
29. operation=″FlightAvailability″
30. inputVariable=″FlightDetails″/>
31. <receive partnerLink=″DeltaAirlines″
32. portType=″aln:FlightCallbackPT″
33. operation=″FlightTicketCallback″
34. variable=″FlightResponseDA″/>
35. <switch><case condition=″...″>
36. <assign><copy><from variable=″FlightResponseAA″/>
37. <to variable=″TravelResponse″/></copy></assign></case><otherwise>
38. <assign><copy><from variable=″FlightResponseDA″/>
39. <to variable=″TravelResponse″/></copy></assign></otherwise></switch>
40. <invoke partnerLink=″client″
41. portType=″trv:ClientCallbackPT″
42. operation=″ClientCallback″
43. inputVariable=″TravelResponse″/>
44.</sequence>
下面应用本方案检测来Travel中不当安排的伙伴服务。
1.构造组合服务Travel的消息传播图(MPG)
为便于描述,用记号(A,B)表示消息A直接传播到消息B。解析Travel程序可得所有消息如表1所示:
表1.Travel中消息及编号
消息编号 | 消息名 |
V1 | TravelRequest |
V2 | EmployeeTravelStatusRequest |
V3 | EmployeeTravelStatusResponse |
V4 | FlightDetails |
V5 | FlightResponseAA |
V6 | FlightResponseDA |
V7 | TravelResponse |
根据本方法第一步中四种情形,通过检查Travel程序中所有的消息对,可得如下的所有消息传播关系集合:
{(v1,v2),(v2,v3),(v1,v4),(v3,v4),(v4,v5),(v4,v6),(v5,v7),(v6,v7)}
该关系可用消息传播图(MPG)来表示,如图1。
2.构造Travel中与伙伴服务相关的活动之间依赖关系图(ADG)
为便于描述,用记号(S,T)表示活动T依赖于活动S。解析Travel程序可得所有活动如表2所示。
表2.活动及其编号
活动编号 | 活动(类型,伙伴链接,操作) |
a1 | (receive,client,TravelApproval) |
a2 | (invoke,employeeTravelStatus,EmployeeTravelStatus) |
a3 | (invoke,AmericanAirlines,FlightAvailability) |
a4 | (receive,AmericanAirlines,FlightTicketCallback) |
a5 | (invoke,DeltaAirlines,FlightAvailability) |
a6 | (receive,DeltaAirlines,FlightTicketCallback) |
a7 | (invoke,client,ClientCallback) |
根据本方法第二步中两种情形及步骤1所得消息传播图(MPG),通过检查Travel程序中所有的活动对,可得如下的所有活动依赖关系集合:
{(a1,a2),(a1,a3),(a1,a5),(a1,a7),(a2,a3),(a2,a5),(a2,a7),(a3,a4),(a4,a7),(a5,a6),(a6,a7)}.
该关系可用活动依赖图(ADG)来表示,如图2。
3.构造Travel可并发运行的活动序列组的队列Q
根据本方法第三步,可得如下的可并发运行的活动序列组的队列Q:
{<a1>},{<a2>},{<a3,a4>,<a5,a6>},{<a7>}
该结果可用图3直观地表示。该队列表示:
1)Travel中各活动必需依其所在的组的先后顺序依次执行,即依I,II,III,IV次序执行。
2)组内各活动序列间可并发运行,如活动序列<a3,a4>与序列<a5,a6>可并发执行。
3)活动序列内部各活动只能按顺序执行,如活动a3执行才能执行a4。
4.检测Travel中并发相关不当安排的伙伴服务。
根据步骤3所得结果,检查Travel程序可得如下结果:
1)Travel中19行到26行所包含的两个活动(它们分别对应于a3与a4)安排可能有误,即这两个活动不能安排成并发执行。
2)Travel中19行到26行所包含的两个活动(它们分别对应于a3与a4)与27行到34行所包含的两个活动(它们分别对应于a5与a6)安排可能不当,即这两个活动序列能安排成并发执行。
根据服务Travel描述,容易验证上述结论是正确。
虽然通过实施例详细描述了本发明用于检测组合服务中并发安排不当的伙伴服务的方法,但是本领域的技术人员应当理解,本发明并不限于实施例中所公开的内容和范围,在不脱离本发明的实质和精神范围内,可以对本发明进行各种变换、修改和替换。
Claims (8)
1.一种用于检测WS-BPEL的组合服务中并发安排不当的伙伴服务的方法,主要包括以下步骤:
第一步:构造组合服务的消息传播图;
第二步:构造与伙伴服务相关的活动之间依赖关系图;
第三步:构造可并发运行的活动序列组的队列;
第四步:检测并发相关不当安排的活动。
2.如权利要求1所述的方法,其特征在于:消息传播图是一个有向图,用于表示在不同伙伴服务中通信的消息之间一种依赖关系,其顶点表示消息,有向边表示其所连接的两消息之间直接传播关系。
3.如权利要求1或2所述的方法,其特征在于,组合服务中消息直接传播关系有四种:
a)消息A部分或全部信息复制到消息B,则称消息A直接传播到消息B;
b)组合服务同步调用一个伙伴服务,若输入消息为A且输出消息为B,则称消息A直接传播到消息B;
c)组合服务异步调用一个伙伴服务,若输入消息为A,输出消息为B,则称消息A直接传播到消息B;
d)组合服务为其用户提供异步服务,若输出消息为A,输人消息为B,则称消息A直接传播到消息B;
通过对WS-BPEL程序进行解析,能够得到上述四种传播关系,从而构建出完整的消息传播图。
4.如权利要求1或2所述的方法,其特征在于:活动依赖关系图是一个有向图,用于表示在不同活动之间一种因数据耦合或其它约束而存在的一种依赖关系,其顶点表示活动,有向边表示其所连接的两个活动之间执行时间顺序关系,有向边的起始顶点所表示的活动必须先于该边终点所表示的活动运行。
5.如权利要求4所述的方法,其特征在于,组合服务中与伙伴服务有关的活动存在两种依赖关系:
I)若活动S输出消息为A,活动T输入消息为B,且在组合服务的消息传播图中存在一条有向路径P,P的起始点是消息A所对应的顶点,终点是消息B所对应的顶点,则称活动T依赖于活动S;
II)若活动S与活动T存在链接关系,且活动S是链接的源,T是链接的目标,则称活动T依赖于活动S;
通过解析描述组合服务的WS-BPEL程序,能够得到上述两种依赖关系所有关系,这些依赖关系及与依赖关系相关联的所有活动构成该组合服务的活动依赖关系图。
6.如权利要求1或2所述的方法,其特征在于,可并发运行的活动序列组的队列包括以下性质:属不同活动序列组中的活动不能并发运行;同一活动序列组中不同活动序列间的活动可以并发运行;同一活动序列组中属同一活动序列中的活动只能顺序运行。
7.如权利要求6所述的方法,其特征在于,可并发运行的活动序列组队列的获取方法如下:
1)将集合G置为空;
2)对于活动依赖关系图中每一个入度为零的顶点U,在活动依赖关系图中求一条有向路径P,P中的顶点所代表的活动依有向边的方向组成一活动序列L,将L并入G中;所求的有向路径P满足条件:若U的出度不等于1,P只包含一个顶点U;若U的出度等于1,则路径P=UV1…VnV满足:Vk的入度与Vk的出度都等于1;V的入度等于1且V的出度大于1,或V的入度与出度都等于1但V后继顶点的入度大于1;
3)将2)所得G插入队列Q,并将G中顶点及与之相连的边从原活动依赖关系图中删除掉,得到新的活动依赖关系图;
4)循环执行上述步骤,直至活动依赖关系图为空,即可得到所需队列。
8.如权利要求1或2所述的方法,其特征在于:检查并发不当安排的方法是,检查描述组合服务的WS-BPEL程序中,被安排成并发运行的活动中是否存在若干活动分属不同活动序列组,或虽属同一个活动序列组但却在同一活动序列中,若存在,则这些活动即属于把不能并发执行伙伴服务安排成并发执行;同时,检查描述组合服务的WS-BPEL程序中,被安排成顺序运行的活动中是否存在若干活动属同一活动序列组,若存在,则这些活动即属于把可并发执行的伙伴服务没有安排成并发执行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010101723669A CN101833481B (zh) | 2010-05-14 | 2010-05-14 | 一种用于检测组合服务中并发安排不当的伙伴服务的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010101723669A CN101833481B (zh) | 2010-05-14 | 2010-05-14 | 一种用于检测组合服务中并发安排不当的伙伴服务的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101833481A true CN101833481A (zh) | 2010-09-15 |
CN101833481B CN101833481B (zh) | 2012-07-04 |
Family
ID=42717558
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010101723669A Expired - Fee Related CN101833481B (zh) | 2010-05-14 | 2010-05-14 | 一种用于检测组合服务中并发安排不当的伙伴服务的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101833481B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103970860A (zh) * | 2014-05-07 | 2014-08-06 | 华为技术有限公司 | 一种数据处理的方法、装置及系统 |
CN109634561A (zh) * | 2018-10-16 | 2019-04-16 | 阿里巴巴集团控股有限公司 | 一种在线可视化编程方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1914630A (zh) * | 2004-01-05 | 2007-02-14 | 迪迪尔·蒂加德 | 作为数据类型的基于行为的多代理系统 |
CN101354643A (zh) * | 2008-08-26 | 2009-01-28 | 中国科学院软件研究所 | 一种基于有状态方面的bpel流程运行时监控方法 |
-
2010
- 2010-05-14 CN CN2010101723669A patent/CN101833481B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1914630A (zh) * | 2004-01-05 | 2007-02-14 | 迪迪尔·蒂加德 | 作为数据类型的基于行为的多代理系统 |
CN101354643A (zh) * | 2008-08-26 | 2009-01-28 | 中国科学院软件研究所 | 一种基于有状态方面的bpel流程运行时监控方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103970860A (zh) * | 2014-05-07 | 2014-08-06 | 华为技术有限公司 | 一种数据处理的方法、装置及系统 |
CN103970860B (zh) * | 2014-05-07 | 2017-05-24 | 华为技术有限公司 | 一种数据处理的方法、装置及系统 |
CN109634561A (zh) * | 2018-10-16 | 2019-04-16 | 阿里巴巴集团控股有限公司 | 一种在线可视化编程方法及装置 |
CN109634561B (zh) * | 2018-10-16 | 2022-03-04 | 创新先进技术有限公司 | 一种在线可视化编程方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101833481B (zh) | 2012-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103608779B (zh) | 粘贴数据的或涉及粘贴数据的改进 | |
CN102591910B (zh) | 用于组合oltp数据库和olap数据库环境的计算机方法和系统 | |
Schlingloff et al. | Modeling and model checking web services | |
CN101226471A (zh) | 一种基于构件的领域基础业务平台及其构建方法 | |
Oliva et al. | Characterizing key developers: a case study with apache ant | |
CN101833481B (zh) | 一种用于检测组合服务中并发安排不当的伙伴服务的方法 | |
Liu et al. | A data‐operation model based on partial vector space for batch processing in workflow | |
Buczacki et al. | Proposal for an integrated framework for electronic control unit design in the automotive industry | |
Kamburjan et al. | Deductive verification of railway operations | |
CN103164200A (zh) | 一种用于应用系统开发的控制方法 | |
CN102520971A (zh) | 基于cad软件的数据交互方法及装置 | |
CN102279792A (zh) | 基于xml中间模型安全检测规则库的建立方法 | |
Li et al. | Software business process adaptive approach supporting organization architecture evolution | |
Köhler et al. | Object nets for mobility | |
Jiang et al. | A BIM-based code checking approach for green construction | |
CN113377857A (zh) | 数据分发方法、装置、电子设备及可读存储介质 | |
Farrell et al. | Formalising workflow: a CCS-inspired characterisation of the YAWL workflow patterns | |
US20090171895A1 (en) | Method and system for generating dynamic associations to data objects | |
CN102663614B (zh) | 客户关系管理到服务开通的配置方法及系统 | |
Boss | Architectural aspects of software sharing and standardization: AUTOSAR for automotive domain | |
Li et al. | Research of the verification in workflow process modeling on the application of Petri nets | |
Coetzee et al. | Configuration management of a system of interdependent standards | |
Cataldo et al. | Managing complexity in collaborative software development: on the limits of modularity | |
Lee et al. | Interoperability for virtual manufacturing systems | |
CN113328913B (zh) | 一种提高项目测试效率的方法、装置和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120704 |