Basic PROforma Concepts: Task State Transitions I
The Tallis Engine determines task states according to the scheduling constraints between the tasks, and according to the task properties.
The figure below shows the basic state transitions:
|Initial state||All tasks are initially dormant.
A dormant task cannot change state until its scheduling constraints are met (scheduling constraints are met if all the antecedent tasks are either completed or discarded).
|Scheduling constraints are met||The task becomes either in progress or discarded, depending on the value of its precondition and on the state(s) of its antecedent task(s).
For it to become in progress the following two conditions must be true:
Note: In fact, the task might still remain dormant if it has other unmet constraints, such as a state trigger.
|Task Completion||In progress enquiries become completed when values have been supplied for their mandatory (i.e. non-optional) sources.
In progress actions become completed when they have been confirmed.
In progress decisions become completed when they have been confirmed.
In progress plans become completed when all their mandatory (non-optional) sub-tasks have completed.
State transitions are further complicated by other task properties. You can learn more about it in the next section.