Understanding Workflow Service terminology

The Workflow Service uses many components to enable you to fully automate business processes in LUSID. This page provides further information on each component for your reference.

Term

Definition

Workflow

A series of one of more task definitions and workers that combine to complete a process.

Task definition

Modelled as a Mealy state machine, a sequence of states and actions which encapsulate a workflow (or part of a complex workflow). Within a task definition, you can configure parameters for a task, such as states, fields and allowable state transitions. Task definitions also include actions, which can run workers to interrogate your data and generate child tasks. The task definition determines what a particular task does when an instance of that task occurs.

Task

An occurrence of the workflow defined in a task definition. You can create multiple tasks from one task definition, typically with changing input values, for example you might create one task per LUID for securities to be screened.

State

A condition a task can exist in, for example Pending, In progress or Complete. State names are completely customisable and can be defined in a task definition.

State transition

Movement from one state to another. Each state transition includes a start state, end state and is prompted by a trigger.

Guard

An operational condition which must be met for a state transition to succeed. For example, all child tasks are in the state Complete.

Field

The way in which data is passed into, around and out the other end of the task. Field names and data types are completely customisable and can be defined in a task definition. Field values can be specified when creating or updating a task. 

Trigger

Defined within a state transition, a prompt which induces a state transition to occur.

Worker

Units of functionality which can access LUSID data. Called by tasks, workers take input parameters mapped from the fields of a task, and return results which can be mapped to a task definition. Worker status can be used to trigger a parent task automatically.

Action

An activity detailed in a state transition to be taken on completion of the transition. For example, start a worker, create a child task or trigger a parent task.