CN107463498A - A kind of dataflow analysis method based on BPEL composite services - Google Patents

A kind of dataflow analysis method based on BPEL composite services Download PDF

Info

Publication number
CN107463498A
CN107463498A CN201710650778.0A CN201710650778A CN107463498A CN 107463498 A CN107463498 A CN 107463498A CN 201710650778 A CN201710650778 A CN 201710650778A CN 107463498 A CN107463498 A CN 107463498A
Authority
CN
China
Prior art keywords
definition
xcfg
node
mrow
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.)
Pending
Application number
CN201710650778.0A
Other languages
Chinese (zh)
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 CN201710650778.0A priority Critical patent/CN107463498A/en
Publication of CN107463498A publication Critical patent/CN107463498A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention discloses a kind of dataflow analysis method based on BPEL composite services, comprise the following steps:(1) the extension controlling stream graph XCFG of BPEL composite services is built;(2) the reachable definition of XCFG nodes is calculated;(3) the definition use pair of variable is calculated.Beneficial effects of the present invention are:The definition of variable in BPEL composite services is calculated using to based on extension controlling stream graph XCFG, for solving the problems, such as Test cases technology in its data current test;Compared with traditional dataflow analysis method, used model can cover distinctive element in BPEL stipulations, and defined data-flow equations formula considers the semanteme of the peculiar element of BPEL stipulations, can effectively analyze the data stream association in BPEL composite services.

Description

A kind of dataflow analysis method based on BPEL composite services
Technical field
The present invention relates to field of service calculation, especially a kind of dataflow analysis method based on BPEL composite services.
Background technology
Make a general survey of the development of software engineering, software development from initial process type programming paradigm, object-oriented pattern, be based on The pattern of component, it is developed to present service-oriented pattern.Service-oriented technology is made by the use of service as networking component Obtain software has more preferable reusability under distributed application environment.It is with the rapid development of information technology, existing basic Service far can not meet the increasingly diversified demand of user.Services Composition technology can freely be defined to apply and patrolled as needed Collect that some Services Compositions get up to realize specific function, realize the increment and multiplexing of service.Many services are had pointed out at present Compositional language, including XLANG, WSFL, BPEL, WS-CDL, OWL-S etc..BPEL Services Composition description languages are actual bases Develop the industrywide standard of executable business procedure in Web service, it from the visual angle of composite services describe its with participate in flow into The interaction of member's service and the sequential logic of interaction.
The complicated characteristic of BPEL language easily causes its composite services described to make a mistake, and test is a kind of effective matter Guarantee technology is measured, therefore the Test cases technology technology for studying BPEL composite services is extremely necessary.The general base of current research Tested in controlling stream coverage criterion, and the elementary object for going into seriously programming is obtained correctly for specific input energy Output, it is to be realized by a series of definition of variables in program using association to input associating between output, can be recognized For the controlling stream in program be correctly to realize data flow service, so in test b PEL composite services data flow correctness It is particularly important.The key of data current test is generation test case to cover the definition-use pair of variable, traditional data Analysis method is flowed based on controlling stream graph CFG come the definition-use pair of computation sequence structure program, and this method can not handle BPEL Concurrent and synchronous dependency characteristic in stipulations, the data flows of BPEL composite services how is analyzed to obtain the definition of each variable-make With to being the problem of we pay close attention to.
The content of the invention
The technical problems to be solved by the invention are, there is provided a kind of data-flow analysis side based on BPEL composite services Method, it can effectively calculate the definition-use pair of variable in BPEL composite services.
In order to solve the above technical problems, the present invention provides a kind of dataflow analysis method based on BPEL composite services, bag Include following steps:
(1) the extension controlling stream graph XCFG of BPEL composite services is built;
(2) the reachable definition of XCFG nodes is calculated;
(3) definition-use pair of variable is calculated.
Preferably, in step (1), the extension controlling stream graph XCFG of structure BPEL composite services specifically comprises the following steps:
(a) BPEL is resolved into BPEL object models BOM;
(b) XCFG partner's set of links PL and variables set V are constructed according to BOM, and is the information field assignment of each element;
(c) moving object in BOM models is traveled through, is that BPEL activities create XCFG nodes, and lived according to BPEL structurings The execution sequence of subactivity, creates corresponding XCFG sides E in dynamicC, while for the synchronous dependence between concurrent activities in flow Link, create corresponding XCFG sides EL.It is the information field assignment of element while each XCFG elements are created.
Preferably, in step (2), the reachable definition of each XCFG nodes is calculated, can first analyze can between neighborhood of nodes The association of definition is reached, the equation of reachable definition is defined, then equation is solved, concretely comprised the following steps:
(a) calculation equation of reachable definition is defined:In (n) and Out (n) is made to be illustrated respectively in entering for XCFG node ns Mouth is defined as follows with the accessibility variable-definition in outlet, then its calculation formula:
Out (n)=Gen (n) ∪ (In (n)-Kill (n))
Wherein, the generation definition collection of Gen (n) and Kill (n) difference representation program node n and kill definition collect;pred(n) Represent the direct preamble node set of node n;To K, if n is concurrent end node or link destination node, K concurrently ties to be corresponding The active junction point set necessarily performed before n in structure, otherwise, K is
(b) calculation equation of reachable definition is solved:Using the greatest fixpoint MFP methods of classics, to each node Equation carry out continuous iteration until final convergence, obtains greatest fixpoint solution;Specifically, initialize first in XCFG figures Each the In () and Out () of node areThen two above formula is constantly iterated to calculate, in each iterative process Determine whether that the Out () in the presence of some node changes with a Boolean variable, only when all nodes Out () all When not changing, iteration could terminate, and final solution is exactly the reachable definition of each XCFG nodes.
Preferably, in step (3), the method for calculating the definition-use pair of variable is:Make def (n) and use (n) tables respectively Show the variables set that activity corresponding to node n is defined and used, to variable-definition (x, n), travel through each node in XCFG, Find out meet x ∈ use (n') (x, n) ∈ In (n') node n ', so as to obtain definition-use pair (x, n, n').
Beneficial effects of the present invention are:The definition of variable in BPEL composite services is analyzed based on extension controlling stream graph XCFG Association between use, the different types of activities of BPEL are represented in XCFG with different types of node, and use is different types of The synchronous dependence of the side execution sequence between expression activity and concurrent activities respectively, and define the data-flow equations formula based on XCFG To calculate the reachable definition of each node, so as to obtain the definition-use pair of variable in composite services, for data current test Test cases technology.Compared with traditional dataflow analysis method, used model can cover distinctive in BPEL stipulations Element, defined data-flow equations formula consider the semanteme of the peculiar element of BPEL stipulations, can effectively analyze BPEL combinations Data stream association in service.
Brief description of the drawings
Fig. 1 is the schematic diagram of XCFG elements in the present invention.
Fig. 2 is the method flow schematic diagram of the present invention.
Fig. 3 is the schematic flow sheet for the extension controlling stream graph XCFG that BPEL composite services are built in the present invention.
Fig. 4 is the schematic flow sheet that BPEL atom actions are converted into XCFG subgraphs in the present invention.
Fig. 5 is the schematic flow sheet that sequence activities are converted into XCFG subgraphs in the present invention.
Fig. 6 is the schematic flow sheet that if activities are converted into XCFG subgraphs in the present invention.
Fig. 7 is the schematic flow sheet that while activities are converted into XCFG subgraphs in the present invention.
Fig. 8 is the schematic flow sheet that repeatUntil activities are converted into XCFG subgraphs in the present invention.
Fig. 9 is the schematic flow sheet that flow activities are converted into XCFG subgraphs in the present invention.
Figure 10 is the schematic flow sheet for the reachable definition that XCFG nodes are calculated in the present invention.
Figure 11 is the schematic flow sheet that variable-definition-use pair is calculated in the present invention.
Figure 12 is the XCFG schematic diagrames that the loan portfolio service that step (1) obtains is performed in the present invention.
Embodiment
XCFG is a five-tuple<N,E,PL,V,F>, wherein:N represents the set of node, and E represents the set on side, PL tables Show that partner links partnerLink set, V represents variables collection, and F is the domain of each elements 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 order node (Sequence Node), representative order 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 it there are three types:SEQUENCE, CHOICE and CONCURRENCY, realized by the side of these three types to order, selection and the differentiation of concurrent structure semanticses;ELIt is link sides (Link Edge), represents the link in BPEL stipulations, for representing the synchronous dependence between concurrent branch's activity.Fig. 1 gives The graphical schematic diagram of XCFG elements, table 1 give classification and the mark of XCFG elements.
The classification of table 1XCFG elements and mark
In addition, the information field of the domain F record corresponding elements of XCFG elements, node, side, partner's link and variable are corresponding different Domain.
For XCFG node N, each node includes following information field:
(1)id:The numbering of node is represented with natural number, each XCFG nodes have unique numbering.
(2)name:The title of corresponding activity is recorded with string values, for the beginning and end node of structured activities, Represented respectively with name_start and name_end.
(3)condition:It is a Boolean expression, first activity to selecting branch, records and performed corresponding to it Condition;To link goal activities, its corresponding joinCondition is recorded.
(4) outEdges and inEdges:Represent that going out for node and enters line set at side respectively.
(5) outLinks and inLinks:Record respectively using the active junction point as incipient activity and the link collection of goal activities Close.Except the source activities in flow, other movable outLinks areExcept the target in flow is movable, other Activity inLinks be
(6) readVars and writeVars:The variables collection that the active junction point is used and defined is recorded respectively.
(7)partnerLink:Record the partner that the active junction point interacts with flow to link, exist only in interacting activity (bag Include receive, reply, the onMessage in invoke and pick) node in, the partnerLink attributes of corresponding activity.
For XCFG side E, ECAnd ELComprising information field in the presence of some distinguish:
(1)id:Side E is represented with natural numberCAnd ELNumbering, there is unique numbering on every XCFG side.
(2) source and target:Writing edge E respectivelyCAnd ELStart node and destination node, ELStart node and Destination node is the source activities and target activities being associated with corresponding link respectively.
(3)type:Record ECType, SEQUENCE, CHOICE or CONCURRENCY.
(4)name:Record ELCorresponding link title.
(5)condition:Record ELCorresponding link transitionCondition.
PL is linked for partner, each partnerLink includes following information field:
(1)name:Record partnerLink title.
(2)endpoint:Record the bind address of member service in partnerLink.
For variable V, each variable includes following information field:
(1)name:The title of record variable.
(2)type:The type of record variable, including WSDL type of messages, XML Schema simple types or self-defined multiple Miscellany type.
As shown in Fig. 2 a kind of dataflow analysis method based on BPEL composite services, comprises the following steps:
(1) the extension controlling stream graph XCFG of BPEL composite services is built;
(2) the reachable definition of XCFG nodes is calculated;
(3) definition-use pair of variable is calculated.
As shown in figure 3, in step (1), the extension controlling stream graph XCFG of structure BPEL composite services specifically includes following step Suddenly:
(a) BPEL is resolved into BPEL object models BOM;
(b) XCFG partner's set of links PL and variables set V are constructed according to BOM, and is the information field assignment of each element;
(c) moving object in BOM models is traveled through, is that BPEL activities create XCFG nodes, and lived according to BPEL structurings The execution sequence of subactivity, creates corresponding XCFG sides E in dynamicC, while for the synchronous dependence between concurrent activities in flow Link, create corresponding XCFG sides EL.It is the information field assignment of element while each XCFG elements are created.
As shown in figures 4-9, it is different to different BOM objects, processing method:
If current BOM objects are invoke activities, a base node N is created in XCFGB, NB.name, NB.condition, NB.outLinks, NB.inLinks, NBAnd N .readVarsB.writeVars invoke can be passed through respectively The getName (), getJoinCondition (), getLinkSources (), getLinkTargets of corresponding BOM objects (), getInputVariable () and getOutputVariable () operations obtain.
If current BOM objects are receive activities, a base node N is created in XCFGB, NB.name, NB.condition, NB.outLinks, NBAnd N .inLinksB.writeVars BOM pairs can be corresponded to by receive respectively The getName () of elephant, getJoinCondition (), getLinkSources (), getLinkTargets () and GetVariable () operations obtain.
If current BOM objects are reply activities, a base node N is created in XCFGB, NB.name, NB.condition, NB.outLinks, NBAnd N .inLinksB.readVars BOM objects can be corresponded to by reply respectively GetName (), getJoinCondition (), getLinkSources (), getLinkTargets () and getVariable () operation obtains.
If current BOM objects are assign activities, a base node N is created in XCFGB, NB.name, NB.condition, NBAnd N .outLinksB.inLinks the getName () of BOM objects can be corresponded to by assign respectively, GetJoinCondition (), getLinkSources () and getLinkTargets () operation obtain.Then in assign The variable variable occurred in each copy from and to is assigned to N respectivelyBAnd N .readVarsB.writeVars。
If current BOM objects are wait activities, a base node N is created in XCFGB, NB.name can pass through The getName () operations that wait corresponds to BOM objects obtain.
If current BOM objects are sequence activities, sequence beginning and end node N is created firstSSWith NSE, NSSAnd N .nameSE.name be entered as respectively sequence.getName () _ start and sequence.getName () _ end.In order to obtain the link associated with the activity, call sequence correspond to BOM objects getLinkSources () and GetLinkTargets () is operated, and the result of return is assigned to N respectivelySEAnd N .outLinksSS.inLinks.Call Sequence.getActivities () obtains the subactivity that sequence is included, and handles subactivity, and in NSS, subactivity and NSEBetween create SEQUENCE types side EC, every ECTwo active junction points that connection relies on sequential control.
If current BOM objects are process or scope activities, use and sequence identical processing methods, except Process does not need the analysis about link.
If current BOM objects are if activities, if beginning and end node N is created firstEDAnd NEM, NED.name and NEM.name if.getName () _ start and if.getName () _ end are entered as respectively.It is associated with the activity in order to obtain Link, call if getLinkSources () and getLinkTargets () to operate, and the result of return is distinguished assignment To NEMAnd N .outLinksED.inLinks.Then call getCases () to obtain the branch that if is included, handle each branch, In NED, branch's active junction point and NEMBetween create CHOICE types side EC, the condition of each branch is assigned in respective branches The condition domains of first active junction point.
If current BOM objects are pick activities, use and if identical processing methods.
If current BOM objects are while activities, the subactivity in loop structure may perform repeatedly, for simplified model, Any traffic flow information is not omitted again simultaneously, and we are by while activities to select the structure of branch to model, and constructor is lived respectively The dynamic situation for performing 0 time, 1 time and 2 times.While beginning and end node N is created firstEDAnd NEM, NED.name and NEM.name while.getName () _ start and while.getName () _ end are entered as respectively.In order to obtain and the activity Associated link, while getLinkSources () and getLinkTargets () is called to operate, and the knot of return Fruit is assigned to N respectivelyEMAnd N .outLinksED.inLinks.Then three branches are created, are lived in first branch for a sky Dynamic node, Article 2 branch into while subactivity node, and Article 3 branch includes two while subactivity nodes, and NED, branch's active junction point and NEMBetween create CHOICE types side EC, Article 2 and Article 3 branch head active junction points Condition thresholdings are that while subactivitys perform condition c, and the condition thresholdings of first branch's head active junction point are!c. Such processing method can avoid circulating in XCFG models, can also calculate all definition-use pairs of variable.
If current BOM objects are repeatUntil activities, although itself and loop structure, it is different from while, it Subactivity at least perform once, and subactivity has performed the condition c just judged in repeatUntil.To repeatUntil's Modeling creates beginning and end node N firstSSAnd NSE, node corresponding to subactivity is then created, then creates selection branch knot The beginning node N of structureEDWith end node NEM, first branch include an empty active junction point, and Article 2 branch includes RepeatUntil subactivity node, in NSS, subactivity node, NSEAnd NEDBetween create SEQUENCE types side EC, NED, branch's active junction point and NEMBetween create CHOICE types side EC, and the condition domains of Liang Tiao branches head active junction points It is entered as respectively!C and c.It is processed as having modeled subactivity in repeatUntil and performs the situation of 1 time and 2 times, but contains Variable is defined service condition, will not omit any traffic flow information.
If current BOM objects are forEach activities, except the condition of subactivity node is entered as startCounterValue<counterNmae<FinalCounterValue, the modeling of remainder and while processing side Method is identical.
If current BOM objects are flow activities, flow beginning and end node N is created firstCBAnd NCM, NCB.name and NCM.name flow.getName () _ start and flow.getName () _ end are entered as respectively.By calling flow's GetLinkSources () and getLinkTargets () operations can obtain NCMAnd N .outLinksCB.inLinks.Then Call getActivities () to obtain flow branch's activity, every concurrent branch is handled, in NCB, branch's subactivity and NCMIt Between create CONCURRENCY types side EC.Finally call getLinks () operations to obtain the link defined in flow, and create Build corresponding EL.For some ELIf in the presence of some active junction point n, EL∈ n.outLinks, then n is exactly ELIncipient activity Node;If EL∈ n.inLinks, then n is exactly ELGoal activities node.To EL=(n1,n2), its tc is corresponding to link's TransitionCondition, source and target are respectively n1And n2
In step (2), during reachable defined analysis, a variable-definition d is identified with (x, n), represents variable x Correspond in program and be defined at node n, for some variable-definition d and some program node n ', only when exist one from n to N' path, and d is not covered by any definition in the path, d can just reach n'.Calculate the reachable of each XCFG nodes Definition, the association of reachable definition between neighborhood of nodes can be first analyzed, the equation of reachable definition be defined, then to equation Formula is solved.As shown in Figure 10, solution concretely comprises the following steps:
(a) calculation equation of reachable definition is defined:In (n) and Out (n) is made to be illustrated respectively in entering for XCFG node ns Mouth is defined as follows with the accessibility variable-definition in outlet, then its calculation formula:
Out (n)=Gen (n) ∪ (In (n)-Kill (n))
Wherein, the generation definition collection of Gen (n) and Kill (n) difference representation program node n and kill definition collect;If program Node n defines variable x, then (x, n) ∈ Gen (n), if any node m performed in program before n defines variable x, (x,m)∈Kill(n);Pred (n) represents the direct preamble node set of node n, if (m, n) ∈ (EC∪EL), then m ∈ pred (n);To K, if n is concurrent end node or link destination node, K is the work necessarily performed before n in corresponding concurrent structure Dynamic node set, otherwise, K is
(b) calculation equation of reachable definition is solved:Using greatest fixpoint MFP (the Maximal Fixed of classics Point) method, continuous iteration is carried out to the equation of each node until final convergence, obtains greatest fixpoint solution;It is specific next Say, the In () and Out () for initializing each node in XCFG figures first areThen two above formula is constantly changed In generation, determine whether that the Out () in the presence of some node changes with a Boolean variable in each iterative process, only When the Out () of all nodes does not change, iteration could terminate, and final solution is exactly the reachable of each XCFG nodes Definition.
In step (3), the definition-use pair for calculating variable is specially:Def (n) and use (n) is made to represent node n pair respectively The variables set that the activity answered is defined and used, if some variable x is determined in activity corresponding to node n in BPEL composite services Justice, i.e. x ∈ def (n), define (x, n) reach node n ' place, i.e. (x, n) ∈ In (n'), and node n ' corresponding to it is movable in make With variable x, i.e. x ∈ use (n'), then definition-use pair (x, n, n') in BPEL composite services be present.Therefore variable-definition- Using pair calculate can the reachable definition information based on each XCFG node entries, as shown in figure 11, to variable-definition (x, N), travel through XCFG in each node, find out meet x ∈ use (n') (x, n) ∈ In (n') node n ', so as to be determined Justice-use is to (x, n, n').
In order to facilitate description, we are BPEL composite services streams using the dataflow analysis method based on extension controlling stream graph Journey LoanFlow.bpel calculates the definition-use pair of variable.Data-flow analysis flow is as follows:
(1) BPEL documents are resolved into BPEL object model BOM, analysis BOM constructions XCFG partner's set of links PL, variable Collect V, BOM moving objects are begun stepping through from root element, creating XCFG using corresponding active process flow (being specifically shown in Fig. 4-9) lives Dynamic node and corresponding side, generate the XCFG flow graphs of BPEL composite services.
(2) the XCFG flow graphs based on BPEL composite services, the association of reachable definition between neighborhood of nodes is analyzed, definition can The equation of definition is reached, then the data-flow equations formula defined in is solved and (is specifically shown in Figure 10), obtains XCFG streams The reachable definition of each node in figure.
(3) the reachable definition information based on XCFG node entries, to each variable-definition, each in XCFG is traveled through Node, the node using this definition is found out, construct its definition-use pair (being specifically shown in Figure 11).
By above-mentioned steps, Figure 12 shows the XCFG flow graphs of loan portfolio service, and part node is reachable fixed in figure It is adopted as shown in table 2.Table 3 shows the definition-use pair of variable in loan portfolio service.
The reachable definition of the part node of table 2
The definition-use pair of variable in the service of the loan portfolio of table 3
Although the present invention is illustrated and 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 (4)

1. a kind of dataflow analysis method based on BPEL composite services, it is characterised in that comprise the following steps:
(1) the extension controlling stream graph XCFG of BPEL composite services is built;
(2) the reachable definition of XCFG nodes is calculated;
(3) definition-use pair of variable is calculated.
2. the dataflow analysis method as claimed in claim 1 based on BPEL composite services, it is characterised in that in step (1), The extension controlling stream graph XCFG of structure BPEL composite services specifically comprises the following steps:
(a) BPEL is resolved into BPEL object models BOM;
(b) XCFG partner's set of links PL and variables set V are constructed according to BOM, and is the information field assignment of each element;
(c) moving object in BOM models is traveled through, is that BPEL activities create XCFG nodes, and according in BPEL structured activities The execution sequence of subactivity, create corresponding XCFG sides EC, while link is relied on for the synchronization between concurrent activities in flow, Create corresponding XCFG sides EL, it is the information field assignment of element while each XCFG elements are created.
3. the dataflow analysis method as claimed in claim 1 based on BPEL composite services, it is characterised in that in step (2), The reachable definition of each XCFG nodes is calculated, can first analyze the association of reachable definition between neighborhood of nodes, definition is reachable The equation of definition, is then solved to equation, is concretely comprised the following steps:
(a) calculation equation of reachable definition is defined:Make In (n) and Out (n) be illustrated respectively in XCFG node ns entrance and Accessibility variable-definition is exported, then its calculation formula is defined as follows:
Out (n)=Gen (n) ∪ (In (n)-Kill (n))
<mrow> <mi>I</mi> <mi>n</mi> <mrow> <mo>(</mo> <mi>n</mi> <mo>)</mo> </mrow> <mo>=</mo> <munder> <mrow> <mi></mi> <mo>&amp;cup;</mo> </mrow> <mrow> <mi>p</mi> <mo>&amp;Element;</mo> <mi>p</mi> <mi>r</mi> <mi>e</mi> <mi>d</mi> <mrow> <mo>(</mo> <mi>n</mi> <mo>)</mo> </mrow> </mrow> </munder> <mi>O</mi> <mi>u</mi> <mi>t</mi> <mrow> <mo>(</mo> <mi>p</mi> <mo>)</mo> </mrow> <mo>-</mo> <munder> <mrow> <mi></mi> <mo>&amp;cup;</mo> </mrow> <mrow> <mi>n</mi> <mo>&amp;Element;</mo> <mi>K</mi> </mrow> </munder> <mi>K</mi> <mi>i</mi> <mi>l</mi> <mi>l</mi> <mrow> <mo>(</mo> <mi>n</mi> <mo>)</mo> </mrow> </mrow>
Wherein, the generation definition collection of Gen (n) and Kill (n) difference representation program node n and kill definition collect;Pred (n) is represented The direct preamble node set of node n;To K, if n is concurrent end node or link destination node, K is in corresponding concurrent structure The active junction point set necessarily performed before n, otherwise, K is(b) calculation equation of reachable definition is solved:Using warp The greatest fixpoint MFP methods of allusion quotation, continuous iteration is carried out to the equation of each node until final convergence, is obtained maximum motionless Point solution;Specifically, the In () and Out () of each node are first in initialization XCFG figuresThen to two above formula Constantly iterated to calculate, determine whether the Out () in the presence of some node with a Boolean variable in each iterative process Change, only when the Out () of all nodes does not change, iteration could terminate, and final solution is exactly each XCFG The reachable definition of node.
4. the dataflow analysis method as claimed in claim 1 based on BPEL composite services, it is characterised in that in step (3), The method of definition-use pair for calculating variable is:Make def (n) and use (n) represents respectively activity corresponding to node n define with The variables set used, to variable-definition (x, n), each node in XCFG is traveled through, finds out and meets x ∈ use (n') (x, n) ∈ In (n') node n ', so as to obtain definition-use pair (x, n, n').
CN201710650778.0A 2017-08-02 2017-08-02 A kind of dataflow analysis method based on BPEL composite services Pending CN107463498A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710650778.0A CN107463498A (en) 2017-08-02 2017-08-02 A kind of dataflow analysis method based on BPEL composite services

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710650778.0A CN107463498A (en) 2017-08-02 2017-08-02 A kind of dataflow analysis method based on BPEL composite services

Publications (1)

Publication Number Publication Date
CN107463498A true CN107463498A (en) 2017-12-12

Family

ID=60547428

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710650778.0A Pending CN107463498A (en) 2017-08-02 2017-08-02 A kind of dataflow analysis method based on BPEL composite services

Country Status (1)

Country Link
CN (1) CN107463498A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
CN111930607A (en) * 2020-05-29 2020-11-13 中国船舶重工集团公司第七0九研究所 Method and system for generating change test case of combined Web service
CN112052166A (en) * 2020-08-26 2020-12-08 河海大学 Test case generation method and device based on domination relationship

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102902521A (en) * 2012-08-14 2013-01-30 东南大学 Composite service credibility evolution influence analyzing method based on XCFG
CN106569870A (en) * 2016-11-18 2017-04-19 河海大学 Program conversion method based on extended control flow graph

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102902521A (en) * 2012-08-14 2013-01-30 东南大学 Composite service credibility evolution influence analyzing method based on XCFG
CN106569870A (en) * 2016-11-18 2017-04-19 河海大学 Program conversion method based on extended control flow graph

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
SHUNHUI JI 等: ""Test Case Selection for Data Flow Based Regression Testing of BPEL Composite Services"", 《2016 IEEE INTERNATIONAL CONFERENCE ON SERVICES COMPUTING》 *
吉顺慧: ""基于演化的Web组合服务测试和验证"", 《中国博士学位论文全文数据库 信息科技辑》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
CN111930607A (en) * 2020-05-29 2020-11-13 中国船舶重工集团公司第七0九研究所 Method and system for generating change test case of combined Web service
CN111930607B (en) * 2020-05-29 2023-04-18 中国船舶重工集团公司第七0九研究所 Method and system for generating change test case of combined Web service
CN112052166A (en) * 2020-08-26 2020-12-08 河海大学 Test case generation method and device based on domination relationship
CN112052166B (en) * 2020-08-26 2021-05-18 河海大学 Test case generation method and device based on domination relationship

Similar Documents

Publication Publication Date Title
Curcin et al. Scientific workflow systems-can one size fit all?
CN107463498A (en) A kind of dataflow analysis method based on BPEL composite services
Knutilla et al. Process specification language: An analysis of existing representations
Yoo et al. A Petri Nets based functional validation for services composition
Biffl et al. An industry 4.0 asset-based coordination artifact for production systems engineering
Palmer et al. Reference ontologies to support the development of global production network systems
Peng et al. A constraint programming method for advanced planning and scheduling system with multilevel structured products
CN106569870A (en) Program conversion method based on extended control flow graph
Pramudianto et al. Model Driven Development for Internet of Things Application Prototyping.
Steimer et al. Approach for an integrated planning of manufacturing systems based on early phases of product development
CN107480058A (en) A kind of change impact analysis method based on BPEL composite services
Bork et al. Simulation of multi-stage industrial business processes using metamodelling building blocks with adoxx
Rosa et al. Service-based manufacturing systems: Modelling and control
Sobolewski Unifying front-end and back-end federated services for integrated product development
Bischoff et al. Generation and transformation of compliant process collaboration models to BPMN
Klatt et al. Integration of event-based communication in the palladio software quality prediction framework
Truscan et al. Tool support for DFD-UML model-based transformations
Birkmeier et al. A method to support a reflective derivation of business components from conceptual models
Suri Modeling the Internet of Things in configurable process models
Erbel et al. Dynamic Management of Multi-level-simulation Workflows in the Cloud
Prackwieser et al. Towards a generic hybrid simulation algorithm based on a semantic mapping and rule evaluation approach
CN101763262A (en) Generating method of geographic information service composition designer based on model drive
Cáceres et al. Navigation modelling from a user services oriented approach
Boufedji et al. Towards a mas product line engineering approach
Valincius et al. Understanding of e-commerce is through feature models and their metrics

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20171212

RJ01 Rejection of invention patent application after publication