Dynamic Sub-Processes

Dynamic sub-processes are used when a process (which can be either a business process or a pageflow process) calls one of several sub-processes at runtime, but it is not known at design time which of these sub-processes will be called.

The exact sub-process to be called on any given occasion is chosen at runtime, depending on the process data. For example, a corporate HR Department’s recruitment process might need to call different sub-processes for determining a candidate’s eligibility for employment depending on the country where the candidate is recruited.

In order for the main process to be able to accommodate any of the sub-processes that might be called, the sub-processes must all take and return a common set of parameters, which are known at design-time. This common data is specified by a process interface on which all the sub-processes are based. A call sub-process activity in the main process then specifies a call to the process interface instead of naming an individual sub-process.