IBM BPM/BAW Live Instance Migration With Data From On-Prem to On-Cloud


  • We need to copy process applications from on prem to on cloud (Export/Import). This is very important because we are using flow object Id’s in the migration tool
  • We need to add human task to beginning of the all processes in on cloud
  • Check Timers UCA etc. If they are risky, remove these events
  • Check connection from one environment to another
  • This is the original version of the process.
  • This is the migration version of the process. We deploy this version to on-cloud and start this process during the migration. We are doing this because we don’t want to execute any system task when we start the process or move the token.

Components of Data Migration Tool

  • Java Integration
  • TWX running on On Prem BPM Environment
  • Table located in DB2 On Cloud
  • Get Current Status of on-Prem Instance
  • Get Visual Process Model of Instance. We need to differentiate parameters. Which one is input which one is private?
  • Start Process in BPM On Cloud with input parameters
  • Update private variables for main instance
  • Move token & Suspend Instance
  • Variables of the process application.
  • We need to get Instance Token Hierarchy
  • First we extract execution tree from on-prem instance current status
  • In this execution tree we are excluding all the event sub-processes
  • If it is only main process, we can move token directly to any step.
  • But if the main process has Linked Processes inside we cannot move the token directly inside the Linked Process. So first we need to move token to Linked Process’s start activity then we are able to move token inside the Linked Process
  • If it has Linked Process inside Linked Process, we need to move the token in a loop.
  • Execution tree of the process. We can see the execution level clearly in this view.
  • Instance child tree which is extracted from current state of on-prem instance.
  • After we process the child tree, we get the hierarchy below which is saying us that we need to move the token 3 times.
  • We need to update private variables in every single Linked Process. We cannot use Update variables rest api. But we can use the api below
  • In multi instance loops we cannot update Linked Process private variables according to loop index. Last update overrides all indexes
  • We cannot control which steps are closed already. We can lose data integrity
  • Migrate service is returning currents status and instance id for both on-prem and on-cloud instance. In my case all these data was stored in DB2 on Cloud.
  • This dashboard is providing the data to JAVA integration. This could run on on-prem, on-cloud and also outside of the BPM environments. It is only matter of connectivity.
  • This UI is only getting the list of instance Id’s and details about the process which we want to start.
  • After migration all the instances status will be suspended. We can check/control before resume them
  • After checking them, if everything is fine then we can resume them.
  • We need to migrate all the instances to the real version (the version without “Migrate — Inline User Task Step”)





Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

Navigation Rail Widget — Flutter 1.17

Set Up Twig for Web Projects in WampServer on Windows

7 Programming Concepts: Making Decisions

What Makes Adobe Coldfusion A Better Data Solution In 2020

Coping with Illusions of Competence

Everything in a Computer Is a Number

CLI for Indexing data from Postgres to Elasticsearch

Favorite WWDC 2019 sessions

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store



More from Medium

Batch task execution in google earth engine — explained

“Summary of 2021 “ from Storange Cloud

Incident Response Management in Google Cloud

How to use feature extraction to organise image data