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 PDFInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test 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
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>&cup;</mo>
</mrow>
<mrow>
<mi>p</mi>
<mo>&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>&cup;</mo>
</mrow>
<mrow>
<mi>n</mi>
<mo>&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').
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)
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)
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 |
-
2017
- 2017-08-02 CN CN201710650778.0A patent/CN107463498A/en active Pending
Patent Citations (2)
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)
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)
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 |