IBM BPM, V8.0.1, All platforms > Get started with IBM BPM > Key concepts > Versioning
Versioning of BPEL processes
Business processes evolve over time. They need to reflect changing environments and business needs. These changes might be business-driven changes, such as changes in regulations, or optimizations of processes. Business-process applications can include long-running BPEL instances. These instances can run for weeks, months, or even years. This characteristic imposes specific requirements on the introduction of new versions of BPEL processes.
To create a new version of your BPEL process, create a new version of the corresponding module in Integration Designer, and make the changes that you need for the new process version. If the process is not part of a process application or toolkit, you must also give the new version of the process a valid-from date. To enable the migration of any existing process instances to the new version, you must also define a process migration specification in Integration Designer, and deploy it with the new version of the process.
After the new version of the BPEL process is deployed, new process instances can be created from the new version of the process. Existing instances continue to complete using the version that they were created and started with, or depending on the nature of the changes to the process, they can be migrated to the new version. In some situations, for example, when you want to correct an error in the process, you might also want to migrate the running instances of a process to the newer version so that they complete using this version.
In process applications or toolkits
A BPEL process that is part of a process application or a toolkit is versioned through Process Center. In Process Center, BPEL processes are versioned as part of snapshots of the corresponding process application or toolkit. The following properties uniquely identify a process version on a deployment target.
- A process version that is part of the process application, or part of a toolkit that is referenced by a process application can be identified in one of the following ways:
- Process application acronym, process application snapshot name, and process name
- Process application snapshot ID and process name
- A process version that is part of a top-level toolkit (a top-level toolkit is not referenced by a process application), or part of a toolkit that is transitively referenced by the top-level toolkit can be identified in one of the following ways:
- Top-level toolkit acronym, top-level toolkit snapshot name, and process name
- Top-level toolkit snapshot ID, and process name
In enterprise applications that were generated in Integration Designer
A BPEL process that is deployed by exporting an enterprise application (EAR) file from Integration Designer, and installing it on a process server is versioned using time-based versioning. A process version is identified on a deployment target using the process name and the valid-from date, which is based on the valid-from property that was specified in Integration Designer.
See
- Invoke different versions of a BPEL process
- Migrate running process instances to a new version of the BPEL process
Related concepts:
Versioning BPEL processes in Integration Designer
Related information:
Versioning of human tasks