IBM Business Process Manager (BPM) Test Framework

IntegrationQA together with Parasoft has developed an API/Service Virtualisation framework that validates the distribution of tasks over multiple agents to a single Service Virtualisation server.

While on assignment, a recent customer recognised early in the adoption of the IBM BPM suite that a quality assurance framework through the SDLC would provide the business with faster feedback on the impact of change as well as greater confidence deploying changes in a already complex distributed environment.

Two key challenges that were solved

  • Reducing the number of testers required to test various routing, skills, and availability rules concurrently.
  • Verifying configuration rules without having to run long running end to end test case.

BPM_IBM_Framework

Based locally in Wellington, IntegrationQA was able to bring the right people onto the assignment at the right time.

Chris Wellington was initially engaged to provide a quality assurance strategy.  This was endorsed by architecture, development and test teams and then commissioned to be implemented.

Paul Hicks then developed a custom CometD protocol adapter to simulate the Agent behaviour – the first such Service Virtualization adapter published in the world.

Thomas Recker then implemented a series of test cases based on the technical layering of the application, initially targeting the IBM BPM API verifying business process logic and then a smaller subset of  UI based based test cases.  Development was able to hand over a compiled build to test which was verified in seconds.

The group worked collaboratively with the developer(s) to work on a re-useable framework to expose the BPM configuration which could then be called via a REST service and unit tested.

This saved considerable time in having to setup data and run-time scenarios to validate the business logic held within the custom BPM rules.

One of the side effects of the engagement was that by embedding the knowledge of how the business process worked into the test assets developed, the knowledge was transferred from the development and test consultants on the project into discoverable artifacts stored in source control.

This means that future developers and testers of the solution have a suite of re-runnable test actions to confirm how the system is expected to behave without having to have subject matter experts on hand.