Workflow in a laboratory context refers to the movement of resources through a series of steps. Sequential movement and transformation of data alone can be managed using a data integration pipeline
. A workflow process comprised entirely of steps performed by people can be managed using the issue tracker
When the workflow includes a combination of human and system tasks, decision points within the flow, and may involve parallel or repeating tasks, a business process management system can be designed to track and manage the workflow. The Workflow
module supports using BPMN 2.0 compliant workflows within LabKey Server.
Business Process Modeling & Notation 2.0 is a graphical notation for representing business processes. The LabKey workflow module is built on the open-source Activiti BPM Platform
. Process diagrams like the following show the work proceeding along the arrows. Tasks are shown in rectangles with a cog icon indicating a system task; a person is shown for a human task. Events (such as starts, stops, messages exchanged among processes) are shown as circles. Gateways (decisions) are shown as diamonds - an 'X' indicates an exclusive gateway (only one outcome is possible) while a '+' indicates a parallel gateway enabling the launch of parallel processes from that point.
Activiti implements a large subset of the full BPMN 2.0 standard, including many more options than those shown above. For more options, see Activiti BPMN 2.0 Constructs
The workflow module includes:
- API: a wrapper around Activiti objects, with interfaces and base classes for various types of workflow activities.
- Database: holds the workflow schema in which tables are created.
- Resources: the workflow process definitions.
- Permissions Handler
- Email Notifier: enables sending of email from a workflow process.
- System Task Runner
- Boundary Event Handlers