best grammar app

Subprocess - BPM Basics

Submitted by Abhishek on Mon, 2012-04-16 13:29

Subprocesses are an integral part of any BPM Systems. Business processes are complex and have several moving parts. While designing the process you feel that this could be broken into smaller individual parts. When processes become too complex, subprocesses come into picture.
A subprocess is like a process within a process. For example, an Employee onboarding process could involve sub processes like Active Directory Account Creation, SAP Account Creation, Payroll Setup and so on. Whenever an instance of Employee onboarding process is created, dependent instances of Active Directory, SAP and Payroll processes are created.
What problems do a sub processes solve

  1. Process Diagrams and execution becomes less complex.
  2. Sub processes created can be reused again and again across processes
  3. Debugging with sub processes is easier
  4. Parallel processing of a section can be achieved with subprocesses

Subprocesses would be dependent as well as independent within themselves. If the entire existence of the subprocess depends on the parent process then its a dependent processes. However, if the subprocess itself can be invoked without invoking the parent process we would call it an independent sub processes.
Another classification is that a subprocess could be synchronous or asynchronous. If the parent process waits for the subprocess to complete, it is synchronous, otherwise it is asynchronous. Async processes are good option if the parent process has no dependent activities.
Scope is another method of classification. Sometimes, subprocess could exist only within the parent scope. i.e. If you remove the parent process, the sub process gets removed automatically. On the other hand if the scope is not dependent, subprocess could exist even after the parent process is removed/completed.
Data sharing between parent and child processes needs to be addressed carefully. Most of the products have a one to one mapping between parent and child dataslots. Some products like Savvion support Indexed Sub Processes which allow you to pass a collection which gets distributed across multiple sub processes.
Hope this is helpful. Comments and questions are welcome.

Abhishek Mishra
Good experience in working with BPM technologies like Savvion, JBPM. Founder and Chief Editor of Founder of Savvion Business Manager Mobility Framework Savmobify| View my BPMGeek Profile
best grammar app

About BPMGeek

BPMGeek is an initiative to collaborate and communicate with the growing Business process management community out there. The goal is to help developers connect with experts, ask questions, post their learning and get understanding of BPM Concepts. Often tool specific knowledge of niche areas end up developers perplexed and confused - especially when there are very less number of resources available. We will be coming up several several new features. Have a look at our Roadmap here

BPMGeek is an independent entity not associated with any Product. All BPM product professionals are invited to contribute. The Logos and Names used across the site belong to their respective owners. The viewpoints mentioned by Individual contributors are their own. BPMgeek cannot be held liable for any issues arising out of it.

BPMgeek is promoting the Nounshoun English Grammar App - developed by Constellation Software.