CN109542502A - A kind of concurrent access conflict detection method of BPEL composite services based on evolution - Google Patents

A kind of concurrent access conflict detection method of BPEL composite services based on evolution Download PDF

Info

Publication number
CN109542502A
CN109542502A CN201811287634.4A CN201811287634A CN109542502A CN 109542502 A CN109542502 A CN 109542502A CN 201811287634 A CN201811287634 A CN 201811287634A CN 109542502 A CN109542502 A CN 109542502A
Authority
CN
China
Prior art keywords
evolution
version
concurrent
node
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
CN201811287634.4A
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 CN201811287634.4A priority Critical patent/CN109542502A/en
Publication of CN109542502A publication Critical patent/CN109542502A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/77Software metrics

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The concurrent access conflict detection method of the BPEL composite services that the invention discloses a kind of based on evolution includes the following steps: the control flow model XCFG of (1) construction BPEL composite services baseline version and evolution version;(2) the concurrently collection in two versions is calculated;(3) modification of the process in evolution version is identified and analyzed, the concurrent activities collection for needing to detect is calculated;(4) detecting whether there is concurrent access conflict in evolution version.The invention has the benefit that the concurrent access conflict in evolution version is detected based on model comparative analysis, for solving the problem for quality assurance of BPEL composite services;Compared with traditional detection method, used incremental method focuses on the analysis and detection that element is influenced by modification, without completely being detected to evolution version, it is possible to reduce workload improves detection efficiency.

Description

A kind of concurrent access conflict detection method of BPEL composite services based on evolution
Technical field
The present invention is a kind of concurrent access conflict detection method of the BPEL composite services based on evolution, is mainly used for solving The problem for quality assurance of BPEL composite services.
Background technique
Services Composition technology provides service with better function by integrated fine-grained services, is Web service field core The technology of the heart and mainstream.BPEL is the industrywide standard for realizing Services Composition as a kind of combination description language.It is mentioned in BPEL specification Concurrent activities are described for flow structure, if flow campaign definitions are improper, will cause concurrent access conflict, including concurrent reading Write conflict and write write conflict.For the correctness of BPEL composite services, needs that concurrent access conflict detect and then repaired Just.
In addition, BPEL composite services also have change as traditional software, needs are repaired scarce by developing It falls into, improve performance, meet newly increased requirement, and modification done in evolutionary process may result in the generation of evolution version and concurrently rush It is prominent.Traditional method detects whether that there are concurrent access conflicts by the analysis of concurrent activities to BPEL composite services.If right Each evolution version carries out complete concurrency conflict detection, especially when subtle modification only occurs for the baseline version that compares When, complete detection is very time-consuming and is not necessarily to.Regression test passes through brought by the modification in analysis evolution version It influences, designs for the test case influenced and reduce the workload of test.The thinking is used for reference, the inspection of baseline version how is utilized It surveys, the modification focused in evolution version influences, and the detection efficiency for promoting evolution version is the problem of we pay close attention to.
Summary of the invention
Technical problem to be solved by the present invention lies in provide a kind of BPEL composite services based on evolution and concurrently access punching Prominent detection method, can effectively find the problem of influencing BPEL composite services correctness.
In order to solve the above technical problems, the present invention provides a kind of concurrent access conflict inspection of the BPEL composite services based on evolution Survey method, includes the following steps:
(1) the control flow model XCFG of BPEL composite services baseline version and evolution version is constructed;
(2) the concurrently collection in two versions is calculated;
(3) modification of the process in evolution version is identified and analyzed, the concurrent activities collection for needing to detect is calculated;
(4) detecting whether there is concurrent access conflict in evolution version.
Preferably, in step (1), the method for construction control flow model XCFG are as follows: BPEL activity is converted into XCFG model In node, and the data access information in activity is stored in the field information field of node, the association between BPEL activity Switch to for the side in XCFG model.
Preferably, in step (2), the concurrently collection in BPEL process is calculated, the concurrently collection in BPEL process is calculated, can be based on XCFG model searches for the beginning node of concurrent activities, then calculates for the beginning node of each concurrent activities and is included in this simultaneously The subactivity in structure is sent out, to obtain all subactivitys included in concurrent structure;Specific steps are as follows:
(21) search for the beginning node of concurrent activities: to a node n, check the node goes out side, if the type on the side It is CONCURRENCY, then n is the beginning node of certain concurrent activities;
(22) subactivity in concurrent structure is calculated: to some concurrent activities, from its start node NCBStart to carry out deep Preferential traversal is spent, until its end node NCM, obtain and be included in NCBAnd NCMAll child nodes in structure.
Preferably, in step (3), identify and analyze the process in evolution version modification, calculate concurrently concentrate need into The XCFG node of row detection, specific steps are as follows:
(31) identify and analyze the activity modification in BPEL process: the concurrently collection of comparison base version and evolution version is known Not evolution version concurrently concentrates newly-increased active junction point, with to be detected;
(32) modification of the link in BPEL process: the link of comparison base version and evolution version set is identified and analyzes, It identifies the link deleted from baseline version, and calculates the active section point set controlled in baseline version by link, and then identifying should The node that evolution version concurrently collects is still in set, with to be detected;
(33) the execution sequence analyzed in BPEL process is modified: to the concurrently collection of evolution version, being identified wherein by baseline version This certain link control is without being corresponded to the node that link is controlled by evolution version, with to be detected.
Preferably, in step (4), whether detection modification leads to the method for concurrent access conflict are as follows: falls into a trap for step (3) Node to be detected in the evolution version of calculating calculates active junction point concurrent therewith, detects whether they access the same change Amount.
The invention has the benefit that being compared based on model, analyzing activity modification in BPEL process, link modification and being lived Dynamic execution sequence is modified, and is identified the concurrent activities detected in evolution version, is detected whether there are concurrent access conflict, For solving the problem for quality assurance of BPEL composite services;Compared with traditional detection method, used incremental method is poly- Coke is in the analysis and detection that are influenced element by modification, without completely being detected to evolution version, it is possible to reduce workload, Improve detection efficiency.
Detailed description of the invention
Fig. 1 is method flow schematic diagram of the invention.
Fig. 2 is the flow diagram that XCFG model is constructed in the present invention.
Fig. 3 is that the flow diagram concurrently collected is calculated in the present invention.
Fig. 4 is the flow diagram identified in the present invention with analysis process modification.
Fig. 5 is the flow diagram identified in the present invention with analytic activity modification.
Fig. 6 is the flow diagram for identifying and analyzing link modification and execution sequence modification in the present invention.
Fig. 7 is the flow diagram that concurrent access conflict is detected in the present invention.
Fig. 8 is the XCFG schematic diagram that POP composite services v1.0 and v1.1 that step (1) obtains are executed in the present invention.
Specific embodiment
As shown in Figure 1, a kind of concurrent access conflict detection method of BPEL composite services based on evolution, including walk as follows It is rapid:
(1) the control flow model XCFG of BPEL composite services baseline version and evolution version is constructed;
(2) the concurrently collection in two versions is calculated;
(3) modification of the process in evolution version is identified and analyzed, the concurrent activities collection for needing to detect is calculated;
(4) detecting whether there is concurrent access conflict in evolution version.
The baseline version of BPEL composite services is enabled to be denoted as S, the evolution version of pending regression test is denoted as S', step (1) In, the XCFG model of S and S' is constructed, is denoted as G and G' respectively.As shown in Fig. 2, the extension controlling stream graph of building BPEL composite services XCFG specifically comprises the following steps:
(a) BPEL is resolved into BPEL object model BOM;
(b) the partner's set of links PL and variables set V of XCFG are constructed according to BOM;
(c) moving object in BOM model is traversed, creates XCFG node for BPEL activity, and living according to BPEL structuring Dynamic interior subactivity executes sequence, creates the corresponding side XCFG EC, while for the synchronous dependence between concurrent activities in flow Link creates the corresponding side XCFG EL.It is the information field assignment of element while creating each XCFG element.
In step (2), the concurrently collection of two versions is calculated based on G and G', is denoted as S and S' respectively.As shown in figure 3, calculating Concurrently collection in BPEL process can be based on XCFG model, search for the beginning node of concurrent activities, then be directed to each concurrent activities Beginning node to calculate include subactivity in the concurrent structure, to obtain all subactivitys included in concurrent structure. Specific steps are as follows:
(a) search for the beginning node of concurrent activities: to a node n, check the node goes out side, if the type on the side is CONCURRENCY, then n is the beginning node of certain concurrent activities;
(b) it calculates the subactivity in concurrent structure: the concurrent activities that node is n being started to some, depth is carried out since n Preferential traversal, until the end node of the concurrent structure.The line set from n is calculated, side is gone out to each, obtaining should The destination node n' on side, and judge whether n' is the end node of the concurrent structure, if not then n' addition is concurrently collected, and will Currently processed node n is updated to n', and continuation traverses down.If n' is the end node of the concurrent structure, current depth is jumped out First traversal is spent, the depth-first traversal since next of currently processed node goes out side is continued.
In step (3), as shown in figure 4, model G, G' based on two versions and concurrently collecting S, S', identifies and analyze and drill Change the process modification in version, calculates the XCFG node for concurrently collecting and being detected in S', and be stored in set Sr and specifically walk Suddenly are as follows:
(a) it identifies and analyzes the activity modification in BPEL process: as shown in figure 5, comparison base version and evolution version Concurrently collection S and S', if n is not present in set S, illustrates that n is newly-increased active junction point to each node n in S', is stored in Sr is with to be detected;
(b) it identifies and analyzes the modification of the link in BPEL process: as shown in fig. 6, calculating baseline version and evolution version Link set L and L', if l is not present in set L', illustrate that l is deleted from baseline version to each l in L Link calculates the active section point set N controlled in baseline version by ll, by NlIn belong to S' node deposit Sr with to be detected;
(c) the execution sequence analyzed in BPEL process is modified: as shown in fig. 6, if l had both been present in set L and has existed in L' In, further calculate the active section point set N controlled in evolution version by ll', the node n in S' is concurrently collected to evolution version, if n It is present in NlBut it is not present in Nl', then by n deposit Sr with to be detected.
In step (4), whether detection modification leads to the method for concurrent access conflict as shown in fig. 7, waiting for for evolution version Each node n in node Sr is detected, active junction point collection N concurrent therewith is calculated, the node in detection n and N, which whether there is, to be write The same variable or the same variable of read-write are write, then there is concurrent access conflict if it exists.
For the convenience of description, we utilize the change impact analysis method based on BPEL composite services, is combined and taken with BPEL Business Purchase Order Process (POP) v1.0 is baseline version, carries out concurrent access conflict for its evolution version v1.1 Detection, process are as follows:
(1) XCFG model is constructed for POP composite services v1.0 and v1.1, as shown in Fig. 2, BPEL document is resolved to BPEL Object model BOM, partner's set of links PL, the variables set V of analysis BOM construction XCFG, it is right to begin stepping through BOM activity from root element As creating XCFG active junction point and corresponding side.
(2) the XCFG model based on two versions calculates separately the concurrently collection in BPEL process, as shown in figure 3, search is simultaneously Send out beginning node movable, then calculating for the beginnings node of each concurrent activities includes sub- work in the concurrent structure It is dynamic, to obtain all subactivitys included in concurrent structure.
(3) modification of the process in POPv1.1 is identified and analyzes, including activity modification, link modification and execution sequence are modified (specific as Figure 4-Figure 6), calculates the concurrent activities collection for needing to detect;
(4) as shown in fig. 7, for active junction point to be detected in POPv1.1, detect it between its concurrent node whether There are access conflicts.
Through the above steps, Fig. 8 shows the XCFG flow graph of POPv1.0 and v1.1.The concurrently collection of two versions such as 1 institute of table Show, the node (node i.e. to be detected) wherein influenced in v1.1 by modification is labelled with runic.Through n in detection v1.148With n10Concomitantly define variable shippingRequest.
The concurrently collection of table 1 POP, two versions
Composite services Concurrently collect
v1.0 n8,n9,n10,n11,n12,n13,n14,n15,n16,n17,n18,n19,n20,n21
v1.1 n8,n9,n10,n11,n12,n13,n14,n15,n16,n17,n18,n20,n21,n48
The concurrent access conflict detection method of a kind of BPEL composite services based on evolution proposed by the present invention, can be applied to The maintenance phase of BPEL composite services, when occurring version evolving, the identification and analysis modified by process are rushed to detect version It is prominent, guarantee the correctness of evolution version, improves the efficiency of evolution version quality testing.

Claims (5)

1. a kind of concurrent access conflict detection method of BPEL composite services based on evolution, which comprises the steps of:
(1) the control flow model XCFG of BPEL composite services baseline version and evolution version is constructed;
(2) the concurrently collection in two versions is calculated;
(3) modification of the process in evolution version is identified and analyzed, the concurrent activities collection for needing to detect is calculated;
(4) detecting whether there is concurrent access conflict in evolution version.
2. the concurrent access conflict detection method of BPEL composite services as described in claim 1 based on evolution, which is characterized in that In step (1), the method for construction control flow model XCFG are as follows: BPEL activity is converted into the node in XCFG model, and will be lived Data access information in dynamic is stored in the field information field of node, and the association between BPEL activity switchs to for XCFG model In side.
3. the concurrent access conflict detection method of BPEL composite services as described in claim 1 based on evolution, which is characterized in that In step (2), the concurrently collection in BPEL process is calculated, XCFG model can be based on, search for the beginning node of concurrent activities, then needle Beginning node calculating to each concurrent activities includes the subactivity in the concurrent structure, to obtain all be included in concurrently The subactivity of structure;Specific steps are as follows:
(21) search for the beginning node of concurrent activities: to a node n, check the node goes out side, if the type on the side is CONCURRENCY, then n is the beginning node of certain concurrent activities;
(22) subactivity in concurrent structure is calculated: to some concurrent activities, from its start node NCBIt is excellent to start progress depth First traversal, until its end node NCM, obtain and be included in NCBAnd NCMAll child nodes in structure.
4. the concurrent access conflict detection method of BPEL composite services as described in claim 1 based on evolution, which is characterized in that In step (3), the modification of the process in evolution version is identified and analyzed, calculates the XCFG knot that concurrently concentration is detected Point, specific steps are as follows:
(31) identify and analyze the activity modification in BPEL process: the concurrently collection of comparison base version and evolution version, identification are drilled That changes version concurrently concentrates newly-increased active junction point, with to be detected;
(32) identify and analyze the modification of the link in BPEL process: the link of comparison base version and evolution version set, identification The link deleted from baseline version, and the active section point set controlled in baseline version by link is calculated, and then identify the set In be still in the node that evolution version concurrently collects, with to be detected;
(33) the execution sequence analyzed in BPEL process is modified: to the concurrently collection of evolution version, being identified wherein by baseline version Link is controlled without being corresponded to the node that link is controlled by evolution version, with to be detected.
5. the concurrent access conflict detection method of BPEL composite services as described in claim 1 based on evolution, which is characterized in that In step (4), whether detection modification leads to the method for concurrent access conflict are as follows: for calculated evolution version in step (3) In node to be detected, calculate concurrent active junction point therewith, detect whether they access the same variable.
CN201811287634.4A 2018-10-31 2018-10-31 A kind of concurrent access conflict detection method of BPEL composite services based on evolution Pending CN109542502A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811287634.4A CN109542502A (en) 2018-10-31 2018-10-31 A kind of concurrent access conflict detection method of BPEL composite services based on evolution

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811287634.4A CN109542502A (en) 2018-10-31 2018-10-31 A kind of concurrent access conflict detection method of BPEL composite services based on evolution

Publications (1)

Publication Number Publication Date
CN109542502A true CN109542502A (en) 2019-03-29

Family

ID=65845745

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811287634.4A Pending CN109542502A (en) 2018-10-31 2018-10-31 A kind of concurrent access conflict detection method of BPEL composite services based on evolution

Country Status (1)

Country Link
CN (1) CN109542502A (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106569870A (en) * 2016-11-18 2017-04-19 河海大学 Program conversion method based on extended control flow graph
CN107463498A (en) * 2017-08-02 2017-12-12 河海大学 A kind of dataflow analysis method based on BPEL composite services
CN107480058A (en) * 2017-08-02 2017-12-15 河海大学 A kind of change impact analysis method based on BPEL composite services
US20180203890A1 (en) * 2017-01-17 2018-07-19 International Business Machines Corporation Sanitizing virtualized composite services

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106569870A (en) * 2016-11-18 2017-04-19 河海大学 Program conversion method based on extended control flow graph
US20180203890A1 (en) * 2017-01-17 2018-07-19 International Business Machines Corporation Sanitizing virtualized composite services
CN107463498A (en) * 2017-08-02 2017-12-12 河海大学 A kind of dataflow analysis method based on BPEL composite services
CN107480058A (en) * 2017-08-02 2017-12-15 河海大学 A kind of change impact analysis method based on BPEL composite services

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
吉顺慧: "《基于演化的Web组合服务测试和验证》", 《中国博士学位论文全文数据库 信息科技辑》 *

Similar Documents

Publication Publication Date Title
van der Aalst et al. Finding structure in unstructured processes: The case for process mining
Babar et al. Comparison of scenario-based software architecture evaluation methods
RU2010123911A (en) ADDITIONAL CONTENT ON THE BASIS OF THE DESIGNED DESTINATION POINT OF THE ROUTE
Petersson et al. Capture–recapture in software inspections after 10 years research––theory, evaluation and application
CN102231134A (en) Method for detecting redundant code defects based on static analysis
De Lucia et al. Improving behavioral design pattern detection through model checking
CN102063374A (en) Method for selecting regression test case for clustering with semi-supervised information
CN102222035A (en) Software behavior detection system based on symbolic execution technology and detection method thereof
CN102968375B (en) Based on the infeasible paths detection method of association rule mining
US8244570B2 (en) Business flow analysis method and apparatus
KR20110068137A (en) System and method for constructing named entity dictionary
CN102117228A (en) Dynamic and static combined Java program exception handling and optimization method
CN111198897B (en) Scientific research hotspot topic analysis method and device and electronic equipment
CN103123607A (en) Software regression testing method based on formal conceptual analysis
CN106569870B (en) A kind of program transformation method based on extension controlling stream graph
CN102185741B (en) Method for estimating needs of transaction in processor in multi-tier architecture
CN109542502A (en) A kind of concurrent access conflict detection method of BPEL composite services based on evolution
CN107480058A (en) A kind of change impact analysis method based on BPEL composite services
Maras et al. Generating feature usage scenarios in client-side web applications
KR101806669B1 (en) Method and apparatus for providing predictive information on technology transfer using patent analysis
Augusto et al. Automated discovery of process models with true concurrency and inclusive choices
US8266599B2 (en) Output from changed object on application
CN106021401A (en) Extensible entity analysis algorithm based on reverse indices
CN103778498A (en) Method for improving college innovation and entrepreneurial ability PDCA based on benchmarking management
Coles et al. Completeness-preserving pruning for optimal planning

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: 20190329

RJ01 Rejection of invention patent application after publication