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 PDFInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/77—Software 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
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.
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)
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 |
-
2018
- 2018-10-31 CN CN201811287634.4A patent/CN109542502A/en active Pending
Patent Citations (4)
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)
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 |