iProcess to BPM Conversions

During the conversion process, the iProcess XPDL is first converted into TIBCO Business Studio XPDL for the iProcess Destination.

Then in a second stage the Studio iProcess XPDL is (automatically) migrated to the BPM destination during which various conversions are made to migrate between equivalent process features in the iProcess and BPM destinations.

The following conversion extensions are implemented in this release:

  • The conversion moves Participants from Process to Package level.
  • The Destination Environment for your process is set to BPM (all iProcess destinations that are enabled for the process are removed and replaced by the BPM destination).
  • The conversion converts expressions and scripts from iProcessScript grammar to TIBCO Business Studio ActiveMatrix BPM JavaScript.
  • CUSTAUDIT(…) iProcess Script Expression
  • Arrays: there are several important differences between array handling in iProcess and ActiveMatrix BPM which are covered in this conversion.
  • Unsupported iProcessScript SPECIALCHARS function will be replaced by a literal string copy of its original parameter.
  • Convert GETPROCESSNAME() to String Literal
  • CALCTIME() .
  • Standalone script objects will be replaced by using CALL(SCRIPT) or SCRIPT(SCRIPT, params …) expressions from within another script.
  • The conversion converts standalone receive tasks to Message Event Handlers.
  • Where the iProcess procedure has declared public start-steps, the conversion creates an additional message start event for each named public start step and directly link it to the named start step.
  • EAI Withdraw/Delayed Release: in ActiveMatrix BPM, Delayed Release is two separate activities, a Service Task that performs the action on external system followed by a Receive Task that holds the flow until it is triggered via web service invocation.
  • Event cannot have more than one incoming flow.
  • Leading digit process content naming restrictions for WSDL Generation: where the artifact name has leading digits, the names derived from it will be prefixed with an underscore.
  • Statically named iProcess user/group user step addressees will be replaced by BPM participant RQL queries that reference organization model resources with specific names.
  • EAI DB (SQL): iProcess to Studio iProcess XPDL already converts EAI DB step into Database Service Task. Some small modifications are made in this conversion.
  • iProcess EAI Mail step will be converted to the ActiveMatrix BPM Email service task.
  • Transaction control steps: there is no direct equivalent for this activity type in ActiveMatrix BPM so they are converted to a task type None activity.
  • iProcess dynamic sub-procedure steps and ActiveMatrix BPM dynamic sub-process invocation tasks are similar, therefore most of the conversion is performed in the initial iProcess to Studio iProcess XPDL conversion. This conversion sets ActiveMatrix BPM dynamic sub-process tasks to multi-instance-parallel, they have the "Allow Unqualified Sub-Process Identification" property set by default, and the multi-instance 'loop expression' (number of instances in the case of parallel) is automatically set to RuntimeIdentifierArrayField.size() .
  • Duplicate activity names in a process are not permtted in BPM, so when converted will be suffixed with an incrementing integer.
  • Set Unique Parameter Label.
  • SW_fields: · SW_ and IDX_ system fields will be removed (from Studio iProcess XPDL generated by initial import) and scripted use of a specific subset of system fields will be converted to ActiveMatrix BPM JavaScript equivalents.
  • The conversion removes iProcess extensions.
  • Out of bound gateway names should not truncate gateway labels whose length exceeds 58 chars.
  • Handle date to date and time to time field assignment semantic differences (BPM is not copy by value, so needs to create new date from right hand side so that fields don't reference same object internally).