Introduction
Versioning provides the
ability for the runtime environment to identify snapshots in the lifecycle of a
process application, and to be able to concurrently run multiple snapshots on a
process server.
Overview
To understand how process
applications are versioned, it is important to remember that a process
application is a container that holds various artifacts used in or by the
process application (for example, process models or BPDs, toolkit references,
services, tracks, or monitor models). Any versioning is done at this container
level, not at the level of the individual artifacts. For process applications, that
means that versioning happens when you take a snapshot.
You can compare snapshots to
determine differences between the versions. For example, if a developer fixed a
problem with a service and took a snapshot of its containing process
application or toolkit at that point, and then a different developer made
several additional changes to the same service and took a new snapshot, the
project manager can compare the two snapshots to determine which changes were
made when and by whom. If the project manager decided that the additional
changes to the service were not worthwhile, the project manager can revert to
the snapshot of the original fix.
You can run different versions
(snapshots) of a process application concurrently on a server; when you install
a new snapshot, either remove the original or leave it running.
Version
context
Each snapshot has unique
metadata to identify the version (referred to as version context). You assign
that identifier, but IBM recommends using a three-digit numeric version system
in the format <major>.<minor>.<service>. See the topics about
naming conventions for a more detailed description of this versioning scheme.
IBM® Business Process Manager
assigns a global namespace for each process application. The global namespace
is specifically either the process application's tip or a particular process
application snapshot. The version name used by the server cannot be longer than
seven characters, so the assigned name is an acronym that uses characters from
the snapshot name that you assigned. Snapshot acronyms are identical to their
snapshot names if the snapshot names conform to the recommended IBM VRM style
and are not more than seven characters. For example, a snapshot name of 1.0.0
will have an acronym of 1.0.0, and a snapshot name of 10.3.0 will have the
acronym of 10.3.0. The snapshot acronym will be guaranteed to be unique within
the context of the process application within the scope of the Process Center
server. For that reason, you cannot edit the snapshot acronym.
Versioning
considerations for process applications in multiple clusters
You can install the same
version of a process application to multiple clusters within the same cell. To
differentiate among these multiple installations of the same version of the
process application, create a snapshot for each installation and include a
cell-unique ID in the snapshot name (for example, v1.0_cell1_1 and
v1.0_cell1_2). Each snapshot is a new version of the process application (from
a pure lifecycle management perspective), but the content and function are the
same.
When you install a process
application in a cluster, an automatic synchronization of the nodes is
performed.
Versioning
considerations for Process Designer toolkits
Remember that process
application snapshots are typically taken when you are ready to test or
install. Toolkit snapshots, however, are typically taken when you are ready for
that toolkit to be used by process applications. Afterward, if you want to
update the toolkit, you must take another snapshot of "tip" when you
are ready, and then the owners of process applications and toolkits can decide
whether they want to move up to the new snapshot.
Naming conventions
A naming convention is used to
differentiate the various versions of a process application as it moves through
the lifecycle of updating, deploying, co-deploying, un-deploying, and
archiving.
This section provides you with
the conventions that are used to uniquely identify versions of a process
application.
A version context is a
combination of acronyms that uniquely describes a process application or
toolkit. Each type of acronym has a naming convention. The acronym is limited
to a maximum length of seven characters from the [A-Z0-9_] character set,
except for the snapshot acronym, which can also include a period.
Ø
The process
application acronym is created when the process application is created. It can
be a maximum of seven characters in length.
Ø
The snapshot
acronym is created automatically when the snapshot is created. It can be a
maximum of seven characters in length.
If the snapshot name meets the
criteria for a valid snapshot acronym, the snapshot name and acronym will be
the same.
Note: When using
the mediation flow component version-aware routing function, name your snapshot
so that it conforms to the <version>.<release>.<modification>
scheme (for example, 1.0.0). Because the snapshot acronym is limited to seven
characters, the digit values are limited to a maximum of five total digits
(five digits plus two periods). Therefore, care should be taken when the digit
fields are incremented, because anything beyond the first seven characters is
truncated.
For example, a snapshot name
11.22.33 results in a 11.22.3 snapshot acronym.
Ø
The track acronym
is automatically generated from the first character of each word of the track
name. For example, a new track created with the name My New Track would result
in an acronym value of MNT.
The default track name and
acronym are Main. Deployment to a IBM® Process Center server includes the track
acronym in the versioning context if the track acronym is not Main.
A business process definition
in a process application is typically identified by the process application
name acronym, the snapshot acronym, and the name of the business process
definition. Choose unique names for your business process definitions whenever
possible. When duplicate names exist, you might encounter the following
problems:
Ø
You might be unable
to expose the business process definitions as web services without some form of
mediation.
Ø
You might be
unable to invoke a business process definition created in IBM Process Designer
from a BPEL process created in IBM Integration Designer.
Naming conventions
for Process Center server deployments
On the IBM® Process Center
server, you can deploy a snapshot of a process application as well as a
snapshot of a toolkit. In addition, you can deploy the tip of a process
application or the tip of a toolkit. (A tip is the current working version of
your process application or toolkit.) The version context varies, depending on
the type of deployment.
For process applications, the
process application tip or the specific process application snapshot is used to
uniquely identify the version.
Toolkits can be deployed with
one or more process applications, but the lifecycle of each toolkit is bound to
the lifecycle of the process application. Each process application has its own
copy of the dependent toolkit or toolkits deployed to the server. A deployed
toolkit is not shared between process applications.
If the track associated with
the process application is named something other than the default of Main, the
track acronym is also part of the version context.
Process application snapshots
For process application
snapshot deployments, the version context is a combination of the following
items:
ü Process application name acronym
ü Process application track acronym (if a track other
than Main is used)
ü Process application snapshot acronym
Stand-alone toolkits
For toolkit snapshot
deployments, the version context is a combination of the following items:
ü Toolkit name acronym
ü Toolkit track acronym (if a track other than Main is
used)
ü Toolkit snapshot acronym
Tips
Process application tips are
used during iterative testing in Process Designer. They can be deployed to
Process Center servers only.
For process application tip
deployments, the version context is a combination of the following items:
ü Process application name acronym
ü Process application track acronym (if a track other
than Main is used)
ü "Tip"
Toolkit tips are also used
during iterative testing in Process Designer. They are not deployed to a
production server.
For toolkit tip deployments,
the version context is a combination of the following items:
ü Toolkit name acronym
ü Toolkit track acronym (if a track other than Main is
used)
ü "Tip"
Examples
Resources should be uniquely
named and identified externally using the version context.
ü The following table shows an example of names that are
uniquely identified. In this example, a process application tip uses the
default track name (Main):
Table 1. Process
application tip with default track name
|
|
Type of name
|
Example
|
Process
application name
|
Process
Application 1
|
Process application
name acronym
|
PA1
|
Process
application track
|
Main
|
Process
application track acronym
|
""
(when the track is Main)
|
Process
application snapshot
|
|
Process
application snapshot acronym
|
Tip
|
Any SCA modules associated
with this process application tip include the version context, as shown in the
following table:
Table 2. SCA modules and
version-aware EAR files
|
||
SCA module name
|
Version-aware name
|
Version-aware
EAR/application name
|
M1
|
PA1-Tip-M1
|
PA1-Tip-M1.ear
|
M2
|
PA1-Tip-M2
|
PA1-Tip-M2.ear
|
ü The following table shows an example of a process
application tip that uses a non-default track name:
Table 3. Process
application tip with non-default track name
|
|
Type
of name
|
Example
|
Process
application name
|
Process
Application 1
|
Process
application name acronym
|
PA1
|
Process
application track
|
Track1
|
Process
application track acronym
|
T1
|
Process
application snapshot
|
|
Process
application snapshot acronym
|
Tip
|
Any SCA modules associated
with this process application tip include the version context, as shown in the
following table:
Table 4. SCA modules and
version-aware EAR files
|
||
SCA module name
|
Version-aware name
|
Version-aware
EAR/application name
|
M1
|
PA1-T1-Tip-M1
|
PA1-T1-Tip-M1.ear
|
M2
|
PA1-T1-Tip-M2
|
PA1-T1-Tip-M2.ear
|
Similar naming conventions
apply to advanced Toolkit tip and snapshot deployments. They also apply to
advanced snapshots installed to Process Server.
ü The following table shows an example of names that are
uniquely identified. In this example, a process application snapshot uses the
default track name (Main):
Table 5. Process
application snapshot with default track name
|
|
Type
of name
|
Example
|
Process
application name
|
Process
Application 1
|
Process
application name acronym
|
PA1
|
Process
application track
|
Main
|
Process
application track acronym
|
""
(when the track is Main)
|
Process
application snapshot
|
Process
Shapshot V1
|
Process
application snapshot acronym
|
PSV1
|
Any SCA modules associated
with this process application snapshot include the version context, as shown in
the following table:
Table 6. SCA modules and
version-aware EAR files
|
||
SCA module name
|
Version-aware name
|
Version-aware
EAR/application name
|
M1
|
PA1-PSV1-M1
|
PA1-PSV1-M1.ear
|
M2
|
PA1-PSV1-M2
|
PA1-PSV1-M2.ear
|
ü The following table shows an example of a process
application snapshot that uses a non-default track name:
Table 7. Process
application snapshot with non-default track name
|
|
Type of name
|
Example
|
Process application name
|
Process
Application 1
|
Process application name acronym
|
PA1
|
Process application track
|
Track1
|
Process application track acronym
|
T1
|
Process
application snapshot
|
Process
Snapshot V1
|
Process
application snapshot acronym
|
PSV1
|
Any SCA modules associated
with this process application snapshot include the version context, as shown in
the following table:
Table 8. SCA modules and
version-aware EAR files
|
||
SCA module name
|
Version-aware name
|
Version-aware
EAR/application name
|
M1
|
PA1-T1-PSV1-M1
|
PA1-T1-PSV1-M1.ear
|
M2
|
PA1-T1-PSV1-M2
|
PA1-T1-PSV1-M2.ear
|
Naming
conventions for Process Server deployments
On
the Process Server, you can deploy the snapshot of a process application. The
process application snapshot acronym is used to uniquely identify the version.
For
process application snapshot deployments, the version context is a combination
of the following items:
ü Process application name acronym
ü Process application snapshot acronym
Resources
should be uniquely named and identified externally using the version context.
The following table shows an example of names that are uniquely identified:
Table
1. Example of names and acronyms
|
|
Type
of name
|
Example
|
Process
application name
|
Process
Application 1
|
Process
application name acronym
|
PA1
|
Process
application snapshot
|
1.0.0
|
Process
application snapshot acronym
|
1.0.0
|
A
resource, such as a module or library, has the version context as part of its
identify.
The
following table shows an example of two modules and how the associated EAR
files include the version context:
Table
2. SCA modules and version-aware EAR files
|
||
SCA
module name
|
Version-aware
name
|
Version-aware
EAR/application name
|
M1
|
PA1-1.0.0-M1
|
PA1-1.0.0-M1.ear
|
M2
|
PA1-1.0.0-M2
|
PA1-1.0.0-M2.ear
|
The
following table shows an example of two process-application-scoped libraries
and how the associated JAR files include the version context:
Table
3. Process-application-scoped libraries and version-aware JAR files
|
||
SCA
process-application-scoped library name
|
Version-aware
name
|
Version-aware
JAR name
|
Lib1
|
PA1-1.0.0-Lib1
|
PA1-1.0.0-Lib1.jar
|
Lib2
|
PA1-1.0.0-Lib2
|
PA1-1.0.0-Lib2.jar
|
Conclusion
In this article we covered IBM
Business Process Manager Versioning process applications and naming conversions
which are fit for IBM Process Server and IBM Process center. I hope it will be
very useful who is going to start their project where IBM BPM used.
Download
File Name
|
Size
|
Download
|
IBM BPM - Versioning Process Applications
|
510 KB
|
0 comments :
Post a Comment