Механизм рабочего процесса с открытым исходным кодом Imixs-Workflow поддерживает этот тип моделирования рабочего процесса.Imixs-Workflow основан на BPMN 2.0 и поддерживает работу с различными бизнес-моделями в одном экземпляре процесса.
Бизнес-логика не ограничивается одной моделью рабочего процесса.Можно запустить новые экземпляры процесса в другой модели рабочего процесса.Это называется подпроцессом , который запускается основным процессом, но запускается в независимом экземпляре процесса с собственной моделью рабочего процесса:
В этом примере процесс «Продажи» обеспечивает управление данными клиента.В случае предоставления новых данных о клиентах модель проверяет наличие предложения.Если да, то запускается новый подпроцесс «Заказ».Этот процесс выполняется в полностью независимой модели рабочего процесса.Но механизм рабочего процесса знает о связях «родитель-потомок», которые позволяют подпроцессу взаимодействовать с родительским процессом.Например, событие submit процесса 'Order' может отправить бизнес-данные обратно в процесс 'Sales'.
Создание подпроцесса связано с событием 'submit order' с определением результата:
<item name="subprocess_create">
<modelversion>1.0.0</modelversion>
<task>100</task>
<event>10</event>
<items>namTeam</items>
</item>
С этим определением также возможно обмениваться данными между обоими экземплярами процесса.
В этом примере два определения модели объединены в один файл BPMN.Но вы также можете разделить модели рабочих процессов в разных BPMN-файлах, которые идентифицируются с помощью «модели версии».
В сочетании с Концепцией безопасности вы также можете ограничить доступ к экземпляру процесса вашего подпроцесса в детальном порядке.