Business Process Designer > BPMN Processes > Graphical elements / Subprocess

Subprocess

subprocess

The Start Process activity is used to decompose a process diagram and increase its readability. It allows you to call a subprocess within the parent process. Fundamentally, a subprocess is an independent business process, the functionality of which is a part of a larger parent process.

For example, during the «Recruitment» process, the Hiring sub-process will be launched.

360020170751-mceclip1

The Hiring process is an independent business process described separately. All the conditions for execution are set within the process: participants, tasks, events, etc. The process diagram looks like this:

360020170691-mceclip0    

In other words, a subprocess is a complex task within the parent process. However, it is worth noting that the Starting Process activity is not an independent task, but only a reference to another process.

You can change the subprocess without modifying the parent process.

To go to the settings window of the Start Process activity, double-click on its shape in the process diagram. You can change the name, set the conditions for the execution, as well as map the variables in the parent and child processes.

General Tab

subprocess 1

  • Name. Enter the name of the subprocess activity that will be displayed on the diagram.
  • Process. Select the process that will be called as part of the parent process. Note that you can add only a published process.
  • Asynchronous start. You can determine the behavior of the system when starting a child process. If you select this option, after the start of the child process, the execution of the parent is not suspended.
  • Link to field. You can bind the subprocess launch to a main process variable or an App type variable. In this case, events occurring within the subprocess (for example, encountered errors, task reassignment, etc.) will be displayed in the app item associated activity stream.

Inputs and Outputs Tab

You can map context variables in the parent and child processes. Please note that only variables of the same type can be mapped. subprocess 2

  • Input variables. Variables that go from the parent process to the child process when the latter is started.
  • Output variables. Variables that go to the parent process from a child process when the latter is ended.