.. This work is licensed under a Creative Commons Attribution 4.0 International License. .. http://creativecommons.org/licenses/by/4.0 .. Copyright 2017 Huawei Technologies Co., Ltd. BPMN Project Structure ======================= BPMN main process flow ---------------------- A BPMN main process flow is a top-level flow. All main process flows are under the src/main/resources/process folder. CreateVfModuleVolumeInfraV1 is a main process flow. .. image:: ../images/bpmn_project_structure_1.png Open BPMN files with the camunda modeler (standalone application). To launch the modeler from eclipse, right-click→open-with→Other→Browse. Select Check the boxes on the dialog so that eclipse will open all .bpmn files with the camunda-modeler executable. BPMN subprocess flow --------------------- A BPMN subprocess flow is meant to be invoked by other flows (either main process flows or other subprocess flows). All subprocess flows are under the src/main/resources/subprocess folder. The CreateVfModuleVolumeInfraV1 process flow is delivered with two custom subflows: DoCreateVfModuleVolumeV2 and DoCreateVfModuleVolumeRollback. .. image:: ../images/bpmn_project_structure_2.png Groovy scripts --------------- There is one groovy script for each BPMN file. Groovy scripts are invoked by script tasks within the BPMN flows. .. image:: ../images/bpmn_project_structure_3.png Unit Tests ----------- Normally, we create a unit test class for every flow. This one is missing a unit test for its rollback flow. .. image:: ../images/bpmn_project_structure_4.png Unit Test Resource Files ------------------------ Any files needed by the unit tests are kept under the src/test/resources/__files folder. .. image:: ../images/bpmn_project_structure_5.png