As your BPMN workflow grows, complexity becomes the enemy of clarity. That’s when Sub-Processes become your best ally.
From our experience in designing scalable process automation in Flowable, using sub-processes smartly can improve readability, reusability, and control — especially in large or multi-team projects.
✅ What is a Sub-Process?
A Sub-Process is a BPMN element that allows you to encapsulate a section of your workflow into a reusable, structured block — like a function or method in programming.
There are two types:
-
๐น Embedded Sub-Process (inline in the same model)
-
๐น Call Activity (calls an external BPMN process)
๐ฅ Top Tips for Using Sub-Processes
1. Split Complex Logic into Embedded Sub-Processes
If your BPMN diagram looks like spaghetti, it's time to group related tasks into an embedded sub-process.
๐ง Example:
"Validate Input", "Enrich Data", "Check Conditions" → Grouped into "Prepare Request" sub-process
This makes your main process cleaner and easier to read.
2. Reuse Logic with Call Activities
Have the same set of steps across multiple processes? Use a Call Activity to call a reusable BPMN process.
๐ฆ Example: "Send Email Notification" or "Generate Invoice" used across many workflows.
In Flowable:
<callActivity calledElement="generateInvoiceProcess" />
3. Use Sub-Processes for Error Isolation
Encapsulate risky logic in a sub-process with its own error boundary event. This localizes failures and improves resilience.
✔️ You can catch errors inside the sub-process and handle them gracefully — without crashing the main workflow.
4. Use Event Sub-Processes for Interruptions
An Event Sub-Process can listen for events like signals, timers, or messages — and interrupt the main process when needed.
๐ก Example: If a cancellation message arrives, terminate the current flow and handle cleanup in the event sub-process.
5. Add Looping Behavior with Sub-Processes
Need to repeat a group of tasks for multiple items? Wrap them in a multi-instance sub-process.
Flowable makes it easy to configure looping based on a collection of variables.
6. Improve Collaboration
When multiple teams work on a large BPMN model, break the process into callable sub-processes owned by different teams.
✅ This supports parallel development and better process ownership.
๐ Real Examples from Our Flowable Experience
✅ "User Onboarding" as a reusable sub-process in multiple products
✅ "Approval Workflow" as a call activity for HR, Finance, and Legal flows
✅ Event sub-process to catch escalation signal and alert admins
✅ Looping sub-process to generate multiple PDF reports for each department
๐ฏ Pro Tip:
Start with sub-processes when your diagram gets too wide to fit on the screen.
If your process model looks messy, break it into logical sub-flows using embedded or call activities.
Have you tried structuring your BPMN with sub-processes? Share your experience or challenges in the comments!
#Flowable #BPMN #SubProcess #CallActivity #WorkflowDesign #ProcessAutomation #LowCode #ModularWorkflow #AKITIInstitute #DevTips
0 Comments