CN106569870B - A kind of program transformation method based on extension controlling stream graph - Google Patents

A kind of program transformation method based on extension controlling stream graph Download PDF

Info

Publication number
CN106569870B
CN106569870B CN201611025281.1A CN201611025281A CN106569870B CN 106569870 B CN106569870 B CN 106569870B CN 201611025281 A CN201611025281 A CN 201611025281A CN 106569870 B CN106569870 B CN 106569870B
Authority
CN
China
Prior art keywords
xcfg
model
node
promela
bpel
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.)
Active
Application number
CN201611025281.1A
Other languages
Chinese (zh)
Other versions
CN106569870A (en
Inventor
吉顺慧
马魏
张鹏程
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hohai University HHU
Original Assignee
Hohai University HHU
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hohai University HHU filed Critical Hohai University HHU
Priority to CN201611025281.1A priority Critical patent/CN106569870B/en
Publication of CN106569870A publication Critical patent/CN106569870A/en
Application granted granted Critical
Publication of CN106569870B publication Critical patent/CN106569870B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code

Abstract

The invention discloses a kind of program transformation methods based on extension controlling stream graph, include the following steps: the XCFG model of (1) building BPEL combination process;(2) the XCFG model of member service is constructed;(3) the XCFG model creation Promela program based on combination process and member service.The invention has the benefit that realizing the conversion of BPEL composite services to Promela program based on mid-module XCFG, on the basis of building BPEL process corresponds to XCFG model, it analyzes and constructs the XCFG model of each member service to describe its involved workflow, and by the XCFG model conversion of combination process and member service be automated analysis and verifying of the Promela process to create complete Promela program, for BPEL composite services.Used model can not only express BPEL process, moreover it is possible to express the performing environment of BPEL process, more completely realize the conversion of BPEL composite services to Promela program.

Description

A kind of program transformation method based on extension controlling stream graph
Technical field
The present invention relates to field of service calculation, especially a kind of program transformation method based on extension controlling stream graph.
Background technique
In the development course of software development technique, the appearance of Services Oriented Achitecture SOA has landmark Progress meaning, well solved numerous problems under Distributed Application scene, the especially Interoperability between platform with And the close coupling problem between client and server-side.Web service is the main implementation of SOA, International Organization for standardization's system Determined a series of agreements relevant to Web service and specification come the description of supporting, the discovery of service and publication, service it is logical Letter, the combination serviced, including WSDL, UDDI, SOAP, BPEL, WS-CDL etc..Wherein Services Composition technology is one and crucial answers With realizing the increment and multiplexing of service.BPEL is as a kind of Services Composition description language, it has also become actual to be based on Web The industrywide standard of business procedure can be performed in service development.
Mistake occurs for the composite services that the characteristic of BPEL language complexity is easy to cause it to describe, and BPEL itself is not provided Corresponding mechanism ensures the correctness of its specification, it is therefore necessary to verify the correctness of BPEL composite services.The inspection of SPIN model Survey tool provides support for the automatic Verification of BPEL composite services, the tool receive Promela language description program and The attribute of linear state of affairs logic LTL description.In order to analyze and verify the behavior of BPEL composite services, corresponding Promela journey Sequence should be complete.Process in one complete Promela program not only comprising simulation BPEL process, it is also necessary to include mould The process of quasi- BPEL process performing environment, the i.e. corresponding process of member service.Current research is generally basede on formalized model Realize the conversion of BPEL composite services to Promela program, big multi-method only considered modeling and the BPEL stream of BPEL process Journey and supplements the corresponding Promela process of member service manually to the conversion of Promela program.Therefore, effectively will BPEL combination process and the member service for participating in combination process, which are converted to corresponding Promela process, to be particularly important, such as What creation complete Promela program of BPEL composite services is the problem of we pay close attention to.
Summary of the invention
Technical problem to be solved by the present invention lies in, a kind of program transformation method based on extension controlling stream graph is provided, The performing environment of BPEL process and BPEL process is expressed by extension controlling stream graph, completely realizes that BPEL composite services are arrived The conversion of Promela program.
In order to solve the above technical problems, the present invention provides a kind of program transformation method based on extension controlling stream graph, including Following steps:
(1) the XCFG model of BPEL combination process is constructed
BPEL is resolved into BPEL object model BOM, the partner's set of links PL and variables set V of XCFG are constructed according to BOM, time The moving object in BOM model is gone through, XCFG node is created for BPEL activity, according to the execution of subactivity in BPEL structured activities Sequentially, corresponding side is created, and is simultaneously the information field assignment of each XCFG element, generates the XCFG model G of BPEL process;
(2) the XCFG model of member service is constructed
The partner set of links PL in XCFG model G is read, identifies all member services for participating in BPEL composite services, needle To each member service pl ∈ PL, its XCFG model G ' is analyzed and created;
(3) the XCFG model creation Promela program based on combination process and member service
The XCFG model of combination process and each member service is traversed, is one proctype of each XCFG model creation Process carries out data type, channel and variable on the top of Promela program according to channel used in each process and data Definition, and create init sentence and start all processes;To each of XCFG model node n, according to the type of n using different Processing mode generate Promela sentence.
Preferably, in step (2), analyze and create the specific steps of the XCFG model G ' of member service pl are as follows:
(a) the XCFG model G of BPEL composite services is analyzed, member service pl is interacted with BPEL composite services in computation model The set MustSet of obligatory nodes and side;
(b) node since composite services XCFG model G orderly traverses XCFG element, according to necessary element set MustSet, creates corresponding XCFG element, and constructor services the XCFG model G' of pl.
Preferably, in step (3), for the node of concurrent branch pattern, the specific steps of its Promela sentence are created Are as follows: 1 subprocess is created for the concurrent branch of each of the concurrent structure, each subprocess is to send a completion mark to master Process terminates;All concurrent subprocess are run in host process, only receive the completion mark of all concurrent subprocess, Indicate that the concurrent structure movement terminates;If there are link in concurrent structure simultaneously, one is constructed with link.name for each link Assignment statement is increased after its corresponding Promela sentence for the start node of the link as the Boolean variable of title Link.name=1, accordingly for the destination node of the link, constructing a repetitive structure do...od keeps its corresponding Promela sentence, which meets corresponding condition, to be executed.
The invention has the benefit that realizing BPEL composite services to Promela program based on mid-module XCFG Conversion is analyzed on the basis of building BPEL process corresponds to XCFG model and constructs the XCFG model of each member service to retouch Its involved workflow is stated, and is Promela process to create by the XCFG model conversion of combination process and member service Build complete Promela program, automated analysis and verifying for BPEL composite services.Used model not only can be with table Up to BPEL process, moreover it is possible to express the performing environment of BPEL process, more completely realize BPEL composite services to Promela program Conversion.
Detailed description of the invention
Fig. 1 is flow diagram of the invention.
Fig. 2 is the schematic diagram of XCFG element in the present invention.
Fig. 3 is the flow diagram for constructing BPEL combination process in the present invention and corresponding to XCFG model.
Fig. 4 is the flow diagram for constructing member service in the present invention and corresponding to XCFG model.
Fig. 5 is the flow diagram that the necessary element set of member service in combination process XCFG model is calculated in the present invention.
Fig. 6 is the flow diagram that member service XCFG element is created in the present invention.
Fig. 7 is the flow diagram based on XCFG model creation Promela process in the present invention.
Fig. 8 is the XCFG model schematic that the order purchase BPEL process that step (1) obtains is executed in the present invention.
Fig. 9 is the XCFG model schematic that the member service Invoice that step (2) obtain is executed in the present invention.
Specific embodiment
As shown in Figure 1, a kind of program transformation method based on extension controlling stream graph, includes the following steps:
(1) the XCFG model of BPEL combination process is constructed
BPEL is resolved into BPEL object model BOM, the partner's set of links PL and variables set V of XCFG are constructed according to BOM, time The moving object in BOM model is gone through, XCFG node is created for BPEL activity, according to the execution of subactivity in BPEL structured activities Sequentially, corresponding side is created, and is simultaneously the information field assignment of each XCFG element, generates the XCFG model G of BPEL process;
(2) the XCFG model of member service is constructed
The partner set of links PL in XCFG model G is read, identifies all member services for participating in BPEL composite services, needle To each member service pl ∈ PL, its XCFG model G ' is analyzed and created;
(3) the XCFG model creation Promela program based on combination process and member service
The XCFG model of combination process and each member service is traversed, is one proctype of each XCFG model creation Process carries out data type, channel and variable on the top of Promela program according to channel used in each process and data Definition, and create init sentence and start all processes;To each of XCFG model node n, according to the type of n using different Processing mode generate Promela sentence.
XCFG is a five-tuple<N, E, PL, V, F>, in which: N indicates the set of node, and E indicates the set on side, PL table Show the set of partner's link partnerLink in composite services, V indicates variables collection, and F is the domain of each element of XCFG.
N=NB∪NS∪NE∪NC, wherein NBIt is basic activity node (Basic Node), represents basic activity, such as Receive, reply, assign etc.;NSIt is sequence node (Sequence Node), representative sequence is movable, including process, Sequence and scope;NEBe selection node (Exclusive Node), represent selection activity, including if, pick, while and repeatUntil;NCIt is concurrent node (Concurrent Node), represents flow concurrent activities.E=EC∪EL, wherein ECIt is Control side (Control Edge), the control between deputy activity relies on, and there are three types of types for it: SEQUENCE, CHOICE and CONCURRENCY realizes the differentiation to sequence, selection and concurrent structure semantics by the side of these three types;ELIt is the side link (Link Edge), represents the link in BPEL specification, for indicating the synchronous dependence between concurrent branch's activity.Fig. 2 gives The graphical schematic diagram of XCFG element.
The information field of the domain F record corresponding element of XCFG element, node, side, partner's link and variable correspond to different domains.
For the node N of XCFG, each node includes information field below:
(1) id: indicating the number of node with natural number, and each XCFG node has unique number.
(2) name: with the corresponding movable title of string value record, for the beginning and end node of structured activities, It is indicated respectively with name_start and name_end.
(3) type: with the corresponding movable type of string value record, such as invoke, receive, reply, assign.
(4) pattern: movable mode is recorded with string value, in mode indicates to receive message, and out mode indicates hair Message is sent, the expression of in-out mode first receives sends message afterwards, and the expression of out-in mode is first sent receives message afterwards, normal mould Formula indicates internal activity.
(5) condition: being that it is corresponding to record its to the goal activities of link for a Boolean expression joinCondition。
(6) it outEdges and inEdges: respectively indicates the side out of node and enters line set.
(7) it outLinks and inLinks: is recorded respectively using the active junction point as the link collection of incipient activity and goal activities It closes.In addition to the source activity in flow, other movable outLinks areIn addition to the target in flow is movable, other Movable inLinks is
(8) readVars and writeVars: the variables collection that the active junction point is used and defined is recorded respectively.
(9) partnerLink: recording the partner that the active junction point is interacted with process and link, and exists only in interacting activity (packet Include receive, reply, the onMessage in invoke and pick) node in, corresponding movable partnerLink attribute.
For the side E of XCFG, ECAnd ELThere are some differences for the information field for being included:
(1) side E id: is indicated with natural numberCAnd ELNumber, there is unique number on every side XCFG.
(2) source and target: writing edge E respectivelyCAnd ELStart node and destination node, ELStart node and Destination node be respectively and the associated source activity of corresponding link and target activity.
(3) type: record ECType, SEQUENCE, CHOICE or CONCURRENCY.
(4) name: record ELThe title of corresponding link.
(5) side E condition: is branched out to selection beginning nodeC, record the execution condition of corresponding selection branch;It is right ELThe transitionCondition of corresponding link is recorded, its value determines that the state of link is true or false.
PL is linked for partner, each partnerLink includes information field below:
(1) name: the title of partnerLink is recorded.
(2) endpoint: the bind address of member service in record partnerLink.
For variable V, each variable includes information field below:
(1) name: the title of record variable.
(2) type: the type of record variable, including WSDL type of message, XML Schema simple types or customized multiple Miscellany type.
BPEL composite services are converted into Promela program based on extension controlling stream graph model XCFG and are broadly divided into following three A step:
(1) the XCFG model of BPEL combination process is constructed
BPEL is resolved into BPEL object model (BPEL Object Model, BOM) first, constructs XCFG's according to BOM Then partner's set of links PL and variables set V traverses the moving object in BOM model, create XCFG node, and root for BPEL activity Sequence is executed according to subactivity in BPEL structured activities, creates corresponding side, and is assigned simultaneously for the information field of each XCFG element Value generates the XCFG model G of BPEL process.The building process that BPEL combination process corresponds to XCFG model is as shown in Figure 3.
(2) the XCFG model of member service is constructed
The partner set of links PL in XCFG model is read, identifies all member services for participating in BPEL composite services, so It is directed to each member service pl ∈ PL afterwards, analyzes and create its XCFG model G '.Member service corresponds to the structure of XCFG model It is as shown in Figure 4 to build process.
(1) the XCFG model G of BPEL composite services is analyzed, member service pl is interacted with BPEL composite services in computation model The set MustSet of obligatory nodes and side.All XCFG nodes are searched for first, if the partnerLink thresholding of node n and pl Title is identical, then n is the active junction point that pl is interacted with composite services, is a member in pl active sequences.It finds out all necessary Interaction node after, determine whether each interaction node belongs to some selection or concurrent branch, if it exists such selection or Concurrent branch, then the branch node and its branch out side all and should be used as necessary element.In addition, if two interactive nodes belong to some The Liang Ge branch of concurrent activities then the concurrent branch node and branches out side also and should be used as necessary element accordingly.Necessary element The calculation process of set MustSet is as shown in Figure 5.
(2) node since composite services XCFG model G orderly traverses XCFG element, according to necessary element set MustSet, creates corresponding XCFG element, and constructor services the XCFG model G' of pl.The creation of member service XCFG element Process is as shown in Figure 6.
If (a) current node n is common node and belongs to necessary element set, i.e. (n ∈ NB) Λ (n ∈ MustSet), then exist Corresponding common node n', n' ∈ N are created in the XCFG model G' of member service plB, the id thresholding of n' is since 1, every creation One new node, the value of id add 1.The pattern thresholding of n' is corresponding with the pattern thresholding of n, if n.pattern==in, Then n'.pattern=out;If n.pattern==out, n'.pattern=in;If n.pattern==out-in, Then n'.pattern=in-out.ReadVars the and writeVars thresholding of n' then thresholding corresponding with n on the contrary, i.e. n' .readVars=n.writeVars, n'.writeVars=n.readVars.If n' is neither start node, also non-selection or simultaneously The first node in merger node or branch is sent out, then creates the side of SEQUENCE type between a upper newly-built node and n'.
If (b) current node n is selection branch node and belongs to necessary element set, i.e. (n ∈ NED) Λ (n ∈ MustSet), Then created in G' corresponding selection start node n ' and corresponding selection merger node n ", n', n " ∈ NED, then along n in G Each of it is necessary go out side eiIt traverses forward, until the corresponding selection merger node of n, (a) is pressed to the necessary active junction point in branch Method creation G ' in node.To between first active junction point on n' and each newly-built branch and the last one activity The side e of CHOICE type is respectively created between node and n "i', wherein ei' condition thresholding and G in correspond to eiThresholding It is identical.
If (c) current node n is concurrent branch node and belongs to necessary element set, i.e. (n ∈ NCB) Λ (n ∈ MustSet), Then processing method is identical as (b), in addition between upper first active junction point of n' and each branch and the last one active junction point With the side e created between n "1' and e2' it is CONCURRENCY type.
(3) the XCFG model creation Promela program based on combination process and member service
The XCFG model of combination process and each member service is traversed, is one proctype of each XCFG model creation Process carries out data type, channel and variable on the top of Promela program according to channel used in each process and data Definition, and create init sentence and start all processes.To each of XCFG model node n, according to the type of n using different Processing mode generate Promela sentence.Process based on XCFG model creation Promela process is as shown in Figure 7.
If (a) n is a common node, i.e. n ∈ NB, then the type of n is further judged according to the domain pattern, if n is One interactive node then sets one or two meeting millet cake channel for the interacting activity and records, in composite services XCFG It the channel that uses of interaction node and interacts and corresponds to the channel that node uses in member service and be consistent.If further Does n.pattern==in then create Promela sentence: c? writeVar, wherein c is the channel that n is used, and writeVar is Element in the domain writeVars;If n.pattern==out, Promela sentence: c is created!ReadVar, wherein ReadVar is the element in the domain readVars;If n.pattern==out-in, two Promela sentences: c are created1! readVar;c2WriteVar, wherein c1And c2It is two channels that the interacting activity uses;If n.pattern==in- Out then creates two Promela sentences: c2WriteVar;c1!readVar.If n is an internal activity node, i.e., N.pattern==normal then creates assignment statement in Promela process mentions: writeVar=readVar, the sentence There cannot be completely the same semanteme with former BPEL activity, but embody its data flow, can be used for general attribute verifying.
If (b) n is a sequence beginning or end node, i.e. n ∈ (NSS∪NSE), then it does not deal with, is visited along directed edge Ask next active junction point.
If (c) n is a selection branch node, i.e. n ∈ NED, then if....fi control stream sentence is created to indicate, and by A traversal selects branch, to every selection branch, in if...fi sentence with:: condition- > option creates its execution Sequence, wherein condition corresponds to the execution condition of the selection branch, and option is corresponding by active junction point each in branch Promela sentence composition is traversed forward along directed edge since first active junction point of selection branch until n is corresponding End node is selected, each node in traverse path is converted to corresponding Promela sentence according to its node types.
If (d) n is a concurrent branch node, i.e. n ∈ NCB, then it is the concurrent branch's creation 1 of each of the concurrent structure A subprocess, the definition of each subprocess traverse forward directly since the first active junction point of the concurrent branch of correspondence, along directed edge To the corresponding concurrent end node of n, each active junction point in traverse path is converted to corresponding Promela according to its node types Sentence is finally terminated with sending a completion mark to host process.All concurrent subprocess are run in host process, are only connect The completion mark for receiving all concurrent subprocess, just indicates that the concurrent structure movement terminates.If existing in concurrent structure simultaneously Link constructs a Boolean variable using link.name as title for each link, for the start node of the link, Increase assignment statement link.name=1 after its corresponding Promela sentence, accordingly for the destination node of the link, building One repetitive structure do...od, which makes its corresponding Promela sentence meet corresponding condition, to be executed.Link if it exists, most It is expressed as follows eventually:
Wherein, condition is the domain condition of link destination node, and statements is that destination node is corresponding Promela sentence.
For the convenience of description, we are that order buys BPEL combination using the program transformation method based on extension controlling stream graph The corresponding Promela program of service construction.Program transformation process is as follows:
(1) BPEL document is resolved into BPEL object model BOM, analysis BOM constructs partner's set of links PL, variables set V, living Dynamic node and corresponding side generate the XCFG model of BPEL process.
(2) the XCFG model for analyzing BPEL process calculates member service in the model and participates in combining necessary element set (being specifically shown in Fig. 5), the XCFG model for then traversing BPEL process use correspondence whenever encountering the necessary element of member service Method creation member service XCFG element (being specifically shown in Fig. 6).
(3) to composite services and each member service, respective XCFG model is traversed, can be mapped as whenever encountering When the XCFG node of Promela sentence, Promela sentence (being specifically shown in Fig. 7) is created using corresponding processing method, to obtain The corresponding Promela process of XCFG model.
Through the above steps, Fig. 8 shows the XCFG model of order purchase BPEL process.In the XCFG of creation member service When model, by taking Invoice member service as an example, it is 15,16 and 17 that it, which participates in the element that combination process has to pass through, in fig. 8, Based on this creation Invoice member service XCFG model as shown in figure 9, the Promela converted based on this model into Journey is as follows:
Although the present invention is illustrated and has been described with regard to preferred embodiment, it is understood by those skilled in the art that Without departing from scope defined by the claims of the present invention, variations and modifications can be carried out to the present invention.

Claims (3)

1. a kind of program transformation method based on extension controlling stream graph, which comprises the steps of:
(1) the XCFG model of BPEL combination process is constructed
BPEL is resolved into BPEL object model BOM, the partner's set of links PL and variables set V of XCFG, traversal are constructed according to BOM Moving object in BOM model creates XCFG node for BPEL activity, and the execution according to subactivity in BPEL structured activities is suitable Sequence creates corresponding side, and is simultaneously the information field assignment of each XCFG element, generates the XCFG model G of BPEL process;
(2) the XCFG model of member service is constructed
The partner set of links PL in XCFG model G is read, all member services for participating in BPEL composite services are identified, for every One member service pl ∈ PL, analyzes and creates its XCFG model G ';
(3) the XCFG model creation Promela program based on combination process and member service
Traverse combination process and each member service XCFG model, be one proctype of each XCFG model creation into It is fixed to carry out data type, channel and variable on the top of Promela program according to channel used in each process and data for journey Justice, and create init sentence and start all processes;To each of XCFG model node n, according to the type of n using different Processing mode generates Promela sentence, specifically:
If (a) n is a common node, i.e. n ∈ NB, then the type of n is further judged according to the domain pattern, if n is one Interaction node then sets one or two meeting millet cake channel for the interacting activity and records, interaction in composite services XCFG It channel that node uses and interacts and corresponds to the channel that node uses in member service and be consistent;If further Does n.pattern==in then create Promela sentence: c? writeVar, wherein c is the channel that n is used, and writeVar is Element in the domain writeVars;If n.pattern==out, Promela sentence: c is created!ReadVar, wherein ReadVar is the element in the domain readVars;If n.pattern==out-in, two Promela sentences: c are created1! readVar;c2WriteVar, wherein c1And c2It is two channels that the interacting activity uses;If n.pattern==in- Out then creates two Promela sentences: c2WriteVar;c1!readVar;If n is an internal activity node, i.e., N.pattern==normal then creates assignment statement in Promela process mentions: writeVar=readVar, the sentence There cannot be completely the same semanteme with former BPEL activity, but embody its data flow, can be used for general attribute verifying;
If (b) n is a sequence beginning or end node, i.e. n ∈ (NSS∪NSE), then it does not deal with, is accessed down along directed edge One active junction point;
If (c) n is a selection branch node, i.e. n ∈ NED, then creating if....fi control stream sentence indicates, and one by one time Go through selection branch, to every selection branch, in if...fi sentence with:: condition- > option create its execution sequence, Wherein condition corresponds to the execution condition of the selection branch, and option is by the corresponding Promela language of active junction point each in branch Sentence composition is traversed forward along directed edge since first active junction point of selection branch until the corresponding selection of n terminates knot Point, each node in traverse path are converted to corresponding Promela sentence according to its node types;
If (d) n is a concurrent branch node, i.e. n ∈ NCB, then 1 son is created for the concurrent branch of each of the concurrent structure Process, the definition of each subprocess traverse forward along directed edge until n pairs since the first active junction point of the concurrent branch of correspondence The concurrent end node answered, each active junction point in traverse path are converted to corresponding Promela sentence according to its node types, Finally terminated with sending a completion mark to host process;All concurrent subprocess are run in host process, are only received The completion of all concurrent subprocess identifies, and just indicates that the concurrent structure movement terminates;If there are link in concurrent structure simultaneously, it is Each link constructs a Boolean variable using link.name as title, corresponding at its for the start node of the link Increase assignment statement link.name=1 after Promela sentence and constructs a repetition accordingly for the destination node of the link Structure do...od, which makes its corresponding Promela sentence meet corresponding condition, to be executed.
2. the program transformation method as described in claim 1 based on extension controlling stream graph, which is characterized in that in step (2), point Analyse and create the specific steps of the XCFG model G ' of member service pl are as follows:
(a) the XCFG model G of BPEL composite services is analyzed, member service pl is interacted necessary with BPEL composite services in computation model The set MustSet of node and side;
(b) node since composite services XCFG model G orderly traverses XCFG element, according to necessary element set MustSet, creates corresponding XCFG element, and constructor services the XCFG model G' of pl.
3. the program transformation method as described in claim 1 based on extension controlling stream graph, which is characterized in that right in step (3) Each of XCFG model node n generates Promela sentence specific steps using different processing modes according to the type of n Are as follows: 1 subprocess is created for the concurrent branch of each of the concurrent structure, each subprocess is to send a completion mark to master Process terminates;All concurrent subprocess are run in host process, only receive the completion mark of all concurrent subprocess, Indicate that the concurrent structure movement terminates;If there are link in concurrent structure simultaneously, one is constructed with link.name for each link Assignment statement is increased after its corresponding Promela sentence for the start node of the link as the Boolean variable of title Link.name=1, accordingly for the destination node of the link, constructing a repetitive structure do...od keeps its corresponding Promela sentence, which meets corresponding condition, to be executed.
CN201611025281.1A 2016-11-18 2016-11-18 A kind of program transformation method based on extension controlling stream graph Active CN106569870B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611025281.1A CN106569870B (en) 2016-11-18 2016-11-18 A kind of program transformation method based on extension controlling stream graph

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611025281.1A CN106569870B (en) 2016-11-18 2016-11-18 A kind of program transformation method based on extension controlling stream graph

Publications (2)

Publication Number Publication Date
CN106569870A CN106569870A (en) 2017-04-19
CN106569870B true CN106569870B (en) 2019-09-10

Family

ID=58542348

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611025281.1A Active CN106569870B (en) 2016-11-18 2016-11-18 A kind of program transformation method based on extension controlling stream graph

Country Status (1)

Country Link
CN (1) CN106569870B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107480058A (en) * 2017-08-02 2017-12-15 河海大学 A kind of change impact analysis method based on BPEL composite services
CN107463498A (en) * 2017-08-02 2017-12-12 河海大学 A kind of dataflow analysis method based on BPEL composite services
CN109542772A (en) * 2018-10-31 2019-03-29 河海大学 A kind of method for detecting abnormality based on data-flow analysis
CN109542502A (en) * 2018-10-31 2019-03-29 河海大学 A kind of concurrent access conflict detection method of BPEL composite services based on evolution

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7536606B2 (en) * 2004-04-30 2009-05-19 Microsoft Corporation Error detection in web services systems
CN101872302B (en) * 2010-05-14 2013-02-27 东南大学 BPEL-based modeling method for control information flow graph

Also Published As

Publication number Publication date
CN106569870A (en) 2017-04-19

Similar Documents

Publication Publication Date Title
Gronau et al. KMDL-Capturing, Analysing and Improving Knowledge-Intensive Business Processes.
Strambach Knowledge-Intensive Business Services (KIBS) as drivers of multilevel knowledge dynamics
CN106569870B (en) A kind of program transformation method based on extension controlling stream graph
Pinter et al. Discovering workflow models from activities’ lifespans
Gibbon Methodological themes in Farming Systems Research and implications for learning in higher education
CN106021816A (en) Method for achieving distributed system behavior simulated analysis tool based on behavior tree
Sureephong et al. An ontology-based knowledge management system for industry clusters
Bergenthum et al. Modeling and mining of learnflows
CN106096159A (en) Distributed system behavior simulation under a kind of cloud platform analyzes the implementation method of system
Fleischmann et al. A primer to subject-oriented business process modeling
Lin et al. A hybrid approach to knowledge flow
CN107480058A (en) A kind of change impact analysis method based on BPEL composite services
Khalil Implications for the role of information systems in a business process reengineering environment
Weber et al. Using Social Network Analysis and Derivatives to Develop the S-BPM Approach and Community of Practice
Urh et al. Structural indicators for business process redesign efficiency assessment
Lang et al. Prototyping as a requirements engineering technique
Hebisch et al. Scenario-based architecting with architecture trace diagrams
Lazzeretti et al. Rethinking clusters. Towards a new research agenda for cluster research
Taipale Observations on software testing practice
Schuster et al. Temporal performance analysis for block-structured process models in Cortado
CN106547696B (en) A kind of method for generating test case and device of Workflow-oriented system
Rathod et al. Traceability evaluation in requirements engineering according to automotive SPICE
Acar et al. Designing insightful inquiring systems for sustainable organizational foresight
Gronau et al. Kmdl–capturing, analysing and improving knowledge intensive business processes
Daim et al. The application of social network analysis: case of smart roofing

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant