Workflow Engine
TobFlow features its own workflow engine based on the thorough experience of its creators in business processes.
This engine manages flows of activities between actors who have to work on object instances (for example a particular incident report). The engine is able to handle several versions of the same workflow and provides good traceability of the life of the object instance.
TobFlow interprets the activities and transitions stated in the model (see modeling). The following diagram gives an example of the main workflow components that the engine can handle :
Activities :
- Start : always used to start a workflow
- Finish : always used to end a workflow
- Interactive : used for normal activities which require user intervention
- WFProcess : to launch an independent sub-process (subflow)
- SFProcess : to launch a linked sub-process (subflow). It normally always has an associated Join
- Join : to wait for the end of linked activities/subflows
The model creator can specify many more parameters concerning an activity : maximum duration, people assigned to it, etc.
Transitions :
- Next : to a next activity.
- Back : to a previous activity.
- Creation : associated to a subflow.
Each time an object instance goes through a transition, the engine attaches to it a State which is defined in the model. Rules can be associated to the current state. This feature permits to put a field in read or edit mode depending on the user's rights.
The model creator also has the possibility to create a script (often in python) which will be executed when a transition starts. And TobFlow also offers an API to manipulate model components.