See ActiveVOS in action!


Attend an "Intro to ActiveVOS" webinar

Wednesday, September 8 at 12pm EDT / 9am PDT / 16:00 UTC

Register here >

CTO Tuesdays webinars

Free, weekly, educational BPM podcasts

Tuesday, September 14 at 12pm EDT / 9am PDT / 16:00 UTC

Topics: BPM, BPMN, web services, BPEL, SOA and more

Register here >

 

Best Practices:
Designing Orchestration Flow

Once you have completed your analysis and have a blueprint in place, you can proceed with the development of the processes and the associated artifacts.

Process development cycle

The development of a process usually involves a number of steps:

Important design principles using BPEL

The following are some of the most important BPEL process design considerations:

Use of integrated testing for quality control

To ensure the quality of the application and reduce maintenance costs, ActiveVOS includes a set of built-in features that makes it much easier to perform quality control. There features are simulation and BUnit test.

Functional testing through simulation

Simulation allows a developer to test the correctness of the orchestration logic in the development environment. By providing sample data for all inbound messages, you can create a “scenario” that simulates a set of business conditions. You can then run the simulation against the process and check if the process behaves as expected under these conditions.

Simulation is a powerful tool to validate the process without the need of ever having to deploy it. You can simulate as many scenarios as you want for a given process. Simulation is especially useful for testing newly added logic. The key to simulation is to collect sample data early and understand how they can apply for the test scenarios.

Use BUnit for automated testing

While simulation is good in validating new functionalities, you would have to run many simulations in order to have good coverage of a process if it has multiple execution routes. And simulation requires human interaction, which means you cannot automate it.

To solve the problem of test coverage (especially important for regression test) and test automation, you can use the BUnit test function provided by ActiveVOS.

BUnit test is very similar to JUnit in that it is driven by scripts, can be run outside of the IDE as part of a build process and does not require human interaction.

There are two ways to generate the BUnit test cases:

In most cases you want to bundle all test cases for a given process in a test suite so it can be incorporated into one offline test.