The Process library supports processes that orchestrate the flow between multiple scripts, with additional support for status rules that control what options are available to the user.
Some business processes may span more than one area of responsibility. Rather than implementing a business processes as a single entity, it can make sense to break the process down into separate processes, each of which supports the parts of the process run by a specific role.
A process worker, or "worker" for short, represents a runtime instance of the part of a business process used by on role. This allows the business process to span multiple roles, in particular in Portal solutions.
For example, if you have a process to ask someone to perform some work, there will be two workers. Your will have a worker that sends a request and which receives the response back. The other person will have a worker that receives the request and which sends the response back.
Some processes may have only one worker because they only involve one participant, and some may have more than two workers because they have multiple participants.
Each worker is independent of the other workers in the process. It has its own process definition and its own data to control process execution, record events, and to store business data and files. It communicates with the other workers in the process using connections.
Each worker in a process has a role. The worker that starts the process always has a role of "owner". The owner starts the process by sending each other partner a definition of their part of the process, which the other partner uses to create a worker.
In a process to request some work from a partner, the order of operations would be:
-
Create the owner worker.
-
The owner worker sends the partner a request to create a corresponding worker. This request includes the process for the worker to follow.
-
The partner creates a worker.
-
The owner sends a request to the partner's worker to perform some work.
-
The partner performs the work and returns a response.
-
The owner receives the response.
To keep track of what's going on, workers in the same process have the same process identifier.