Roundtrip merge of BPEL processes and BPMN models
First Claim
1. A method, performed by a computer system, ofperforming a merge operation where changes included in a second version of a first exported Business Process Execution Language (BPEL) implementation and an information technology (IT)-side modified version of the first exported BPEL implementation are propagated to a merged BPEL implementation, wherein the first exported BPEL implementation includes activities in a first business process flow modeled by a first Business Process Modeling Notation (BPMN) model, the second version of the first exported BPEL implementation includes changes made by a business unit to the activities included in the first exported BPEL implementation, the IT-side modified version of the first exported BPEL implementation has changed IT scopes and/or activities added by an IT unit subsequent to generation of the first exported BPEL implementation and a scope is a logical collection of activities, the method comprising:
- when the merge operation is a forward merge operation;
copying, by the computer system, an outline of the second version of the first exported BPEL implementation to the merged BPEL implementation;
adding, by the computer system, modified IT scopes from the IT-side modified version of the first exported BPEL implementation to the merged BPEL implementation to perform an outline merge, where modified IT scopes from the IT-side modified version of the first exported BPEL implementation are added to the merged BPEL implementation either by anchoring added IT scopes to a previous activity in the merged BPEL implementation or by anchoring added IT scopes to a subsequent activity in the merged BPEL implementation if a previous activity is not available;
matching, by the computer system, activities in the second version of the first exported BPEL implementation and the IT-side modified version of the first exported BPEL implementation by comparing previously created hash map identifiers for each activity timestamps;
creating, by the computer system, a timestamp capturing a last update time of an activity in the second version of the first exported BPEL model;
creating, by the computer system, a timestamp capturing a last update time of an activity in the IT-side modified version of the first exported BPEL model;
comparing, by the computer system, timestamps to determine if an activity in the second version of the first exported BPEL implementation has been changed more recently than a matched activity in the IT-side modified version of the first exported BPEL implementation;
copying details of a matched activity of the IT-side modified version of the first exported BPEL implementation to the merged BPEL implementation only when the matched activity in the IT-side modified version of the first exported BPEL implementation has been changed more recently than a matched activity in the second version of the first exported BPEL implementation to establish precedence of business unit changes over IT unit changes; and
performing, by the computer system, an attribute level merge for updated branch conditions in the merged BPEL implementation by replacing conditions for a switch in the merged BPEL implementation with conditions from the same switch in the IT-side modified version of the first exported BPEL implementation if the conditions are different;
and when the merge operation is a reverse merge operation;
converting the IT-side modified version of the first exported BPEL implementation to a modified BPMN model; and
adding scopes and branches from the modified BPMN model to a merged BPMN model including changes made by the business unit to the first BPMN model.
1 Assignment
0 Petitions
Accused Products
Abstract
In one embodiment, a method of performing a merge operation can include: mapping a business process modeling notation (BPMN) model to a business process execution language (BPEL) model; modifying the BPMN model to form a modified BPMN model; modifying the BPEL model to form a modified BPEL model; when the merge operation is a forward merge operation: exporting the modified BPMN model to an exported BPEL model; performing an activity level outline merge for added information technology (IT) scopes and branches from the modified BPEL model; performing an activity level detail merge for added IT details from the modified BPEL model; and performing an attribute level merge for updated branch conditions in the merged BPEL model; and when the merge operation is a reverse merge operation, adding scopes and branches from the modified BPEL model to the BPMN model.
-
Citations
14 Claims
-
1. A method, performed by a computer system, of
performing a merge operation where changes included in a second version of a first exported Business Process Execution Language (BPEL) implementation and an information technology (IT)-side modified version of the first exported BPEL implementation are propagated to a merged BPEL implementation, wherein the first exported BPEL implementation includes activities in a first business process flow modeled by a first Business Process Modeling Notation (BPMN) model, the second version of the first exported BPEL implementation includes changes made by a business unit to the activities included in the first exported BPEL implementation, the IT-side modified version of the first exported BPEL implementation has changed IT scopes and/or activities added by an IT unit subsequent to generation of the first exported BPEL implementation and a scope is a logical collection of activities, the method comprising: -
when the merge operation is a forward merge operation; copying, by the computer system, an outline of the second version of the first exported BPEL implementation to the merged BPEL implementation; adding, by the computer system, modified IT scopes from the IT-side modified version of the first exported BPEL implementation to the merged BPEL implementation to perform an outline merge, where modified IT scopes from the IT-side modified version of the first exported BPEL implementation are added to the merged BPEL implementation either by anchoring added IT scopes to a previous activity in the merged BPEL implementation or by anchoring added IT scopes to a subsequent activity in the merged BPEL implementation if a previous activity is not available; matching, by the computer system, activities in the second version of the first exported BPEL implementation and the IT-side modified version of the first exported BPEL implementation by comparing previously created hash map identifiers for each activity timestamps; creating, by the computer system, a timestamp capturing a last update time of an activity in the second version of the first exported BPEL model; creating, by the computer system, a timestamp capturing a last update time of an activity in the IT-side modified version of the first exported BPEL model; comparing, by the computer system, timestamps to determine if an activity in the second version of the first exported BPEL implementation has been changed more recently than a matched activity in the IT-side modified version of the first exported BPEL implementation; copying details of a matched activity of the IT-side modified version of the first exported BPEL implementation to the merged BPEL implementation only when the matched activity in the IT-side modified version of the first exported BPEL implementation has been changed more recently than a matched activity in the second version of the first exported BPEL implementation to establish precedence of business unit changes over IT unit changes; and performing, by the computer system, an attribute level merge for updated branch conditions in the merged BPEL implementation by replacing conditions for a switch in the merged BPEL implementation with conditions from the same switch in the IT-side modified version of the first exported BPEL implementation if the conditions are different; and when the merge operation is a reverse merge operation; converting the IT-side modified version of the first exported BPEL implementation to a modified BPMN model; and adding scopes and branches from the modified BPMN model to a merged BPMN model including changes made by the business unit to the first BPMN model. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. An apparatus that performs a merge operation where changes included in a second version of a first exported Business Process Execution Language (BPEL) implementation and an information technology (IT)-side modified version of the first exported BPEL implementation are propagated to a merged BPEL implementation, wherein the first exported BPEL implementation includes activities in a first business process flow modeled by a first Business Process Modeling Notation (BPMN) model, the second version of the first exported BPEL implementation includes changes made by a business unit to the activities included in the first exported BPEL implementation, the IT-side modified version of the first exported BPEL implementation has changed IT scopes and/or activities added by an IT unit subsequent to generation of the first exported BPEL implementation and a scope is a logical collection of activities, the apparatus comprising:
-
one or more processors; and logic encoded in one or more non-transitory tangible media for execution by the one or more processors, and when executed operable to; when the merge operation is a forward merge operation; copy an outline of the second version of the first exported BPEL implementation to the merged BPEL implementation; add modified IT scopes from the IT-side modified version of the first exported BPEL implementation to the merged BPEL implementation to perform an outline merge, where modified IT scopes from the IT-side modified version of the first exported BPEL implementation are added to the merged BPEL implementation either by anchoring added IT scopes to a previous activity in the merged BPEL implementation or by anchoring added IT scopes to a subsequent activity in the merged BPEL implementation if a previous activity is not available; match activities in the second version of the first exported BPEL implementation and the IT-side modified version of the first exported BPEL implementation by comparing previously created hash map identifiers for each activity timestamps; create a timestamp capturing a last update time of an activity in the second version of the first exported BPEL model; create a timestamp capturing a last update time of an activity in the IT-side modified version of the first exported BPEL model; compare timestamps to determine if an activity in the second version of the first exported BPEL implementation has been changed more recently than a matched activity in the IT-side modified version of the first exported BPEL implementation; copy details of a matched activity of the IT-side modified version of the first exported BPEL implementation to the merged BPEL implementation only when the matched activity in the IT-side modified version of the first exported BPEL implementation has been changed more recently than a matched activity in the second version of the first exported BPEL implementation to establish precedence of business unit changes over IT unit changes; and perform an attribute level merge for updated branch conditions in the merged BPEL implementation by replacing conditions for a switch in the merged BPEL implementation with conditions from the same switch in the IT-side modified version of the first exported BPEL implementation if the conditions are different; and when the merge operation is a reverse merge operation; convert the IT-side modified version of the first exported BPEL implementation to a modified BPMN model; and add scopes and branches from the modified BPMN model to a merged BPMN model including changes made by the business unit to the first BPMN model.
-
-
14. A non-transitory computer-readable storage device, comprising:
-
one or more instructions for determining a merge operation to perform; one or more instructions for performing a merge operation where changes included in a second version of a first exported Business Process Execution Language (BPEL) implementation and an information technology (IT)-side modified version of the first exported BPEL implementation are propagated to a merged BPEL implementation, wherein the first exported BPEL implementation includes activities in a first business process flow modeled by a first Business Process Modeling Notation (BPMN) model, the second version of the first exported BPEL implementation includes changes made by a business unit to the activities included in the first exported BPEL implementation, the IT-side modified version of the first exported BPEL implementation has changed IT scopes and/or activities added by an IT unit subsequent to generation of the first exported BPEL implementation and a scope is a logical collection of activities; when the determined merge operation is a forward merge operation; one or more instructions for copying an outline of the second version of the first exported BPEL implementation to the merged BPEL implementation; one or more instructions for adding modified IT scopes from the IT-side modified version of the first exported BPEL implementation to the merged BPEL implementation to perform an outline merge, where modified IT scopes from the IT-side modified version of the first exported BP EL implementation are added to the merged BPEL implementation either by anchoring added IT scopes to a previous activity in the merged BPEL implementation or by anchoring added IT scopes to a subsequent activity in the merged BPEL implementation if a previous activity is not available; one or more instructions for matching activities in the second version of the first exported BPEL implementation and the IT-side modified version of the first exported BPEL implementation by comparing previously created hash map identifiers for each activity timestamps; one or more instructions for creating a timestamp capturing a last update time of an activity in the second version of the first exported BPEL model; one or more instructions for creating a timestamp capturing a last update time of an activity in the IT-side modified version of the first exported BPEL model; one or more instructions for comparing timestamps to determine if an activity in the second version of the first exported BPEL implementation has been changed more recently than a matched activity in the IT-side modified version of the first exported BPEL implementation; one or more instructions for copying details of a matched activity of the IT-side modified version of the first exported BPEL implementation to the merged BPEL implementation only when the matched activity in the IT-side modified version of the first exported BPEL implementation has been changed more recently than a matched activity in the second version of the first exported BP EL implementation to establish precedence of business unit changes over IT unit changes; and one or more instructions performing an attribute level merge for updated branch conditions in the merged BPEL implementation by replacing conditions for a switch in the merged BPEL implementation with conditions from the same switch in the IT-side modified version of the first exported BPEL implementation if the conditions are different; and when the merge operation is a reverse merge operation; one or more instructions for converting the IT-side modified version of the first exported BPEL implementation to a modified BPMN model; and one or more instructions for adding scopes and branches from the modified BPMN model to a merged BPMN model including changes made by the business unit to the first BPMN model.
-
Specification