We are going to see what are the simple jBPM components or nodes available. Basically using these nodes we are going to develop BPM workflow model.
1. Task Components
User Task is a typical workflow Task where a human performer performs the Task with the assistance of a software application. The lifecycle of the Task is managed by a software component (called task manager) and is typically executed in the context of a Process. The User Task can be implemented using different technologies, specified by the implementation attribute. Besides the Web service technology, any technology can be used.
Script Task is executed by a business process engine. The modeler or implementer defines a script in a language that the engine can interpret. When the Task is ready to start, the engine will execute the script. When the script is completed, the Task will also be completed.
Business Rule Task provides a mechanism for the Process to provide input to a Business Rules Engine and to get the output of calculations that the Business Rules Engine might provide.
2. Sub Process Components
Sub-Process is an Activity whose internal details have been modeled using Activities, Gateways, Events, and Sequence Flows. Sub-Processes define a contextual scope that can be used for attribute visibility, transactional scope, for the handling of exceptions, of Events, or for compensation. A Sub-Process can be in a collapsed view that hides its details or in an expanded view that shows its details within the view of the Process in which it is contained.
Reusable Process other name is Call Activity It identifies a point in the Process where a global Process or a Global Task is used. The Call Activity acts as a wrapper for the invocation of a global Process or Global Task within the execution. The activation of a call Activity results in the transfer of control to the called global Process or Global Task.
3. Boundary Event Components
Error or Timer events are attached to the borders of an Activity (Task or Sub processes components) and are used to handle conditions (Event Definitions) that may have resulted during execution of the Activity.
4. Events
Start event as the name implies, the Event indicates where a particular Process will start.
End event as the name implies, the Event indicates where a particular Process will end.
5. Gateways
Diverging Exclusive Gateway (Decision) is used to create alternative paths within a Process flow. This is basically the “diversion point in the road” for a Process. For a given instance of the Process, only one of the paths can be taken. A Decision can be thought of as a question that is asked at a particular point in the Process. The question has a defined set of alternative answers. Each answer is associated with a condition Expression that is associated with a Gateway’s outgoing Sequence Flows.
Parallel Gateway is used to synchronize (combine) parallel flows and to create parallel flows. A Parallel Gateway creates parallel paths without checking any conditions; each outgoing Sequence Flow is passed control upon execution of this Gateway. For incoming flows, the Parallel Gateway will wait for all incoming flows before triggering the flow through its outgoing Sequence Flows.