Task scheduling determines the flow of the process-description, and the order in which tasks are enacted. The ordering of the task can be controlled directly, by connecting two tasks with a scheduling constraint, or indirectly, by manipulating the state trigger or event trigger of a task.
The scheduling constraint method of ordering tasks creates a deterministic workflow: A scheduling constraint is graphically represented as an arrow connecting two tasks; it specifies that a pair of tasks should be carried out in a particular order – the task at the head of the arrow cannot start until the task at the tail of the arrow (the antecedent task) has completed. In the figure below, the enquiry’s antecedent task is the action. The action has to be completed before the enquiry can be enacted.
Using the state trigger of a task to control scheduling provides for a more flexible dataflow: Tasks do not necessarily follow one another, but rather monitor the state and the data changes in the process-description and become active in response to these changes. Thus, the graphical view of a dataflow network holds no information as to the ordering of the tasks. The scheduling is manifested in the expressions populating the scheduling properties of the tasks.
Processes can also be event-driven. Tasks with event triggers monitor events happening outside the process-description and become active in response to certain events. Event triggers can also be used as a way of handing the control over to the end-user: event triggers allow end-users to trigger specific tasks at any point in time, regardless of the scheduling constraints or the state of the process-description. This allows for non-linear processes: end-users can choose between tasks, skip tasks and even re-run tasks.
Learn more about:
- Workflow: Scheduling Constraints and Preconditions
- Preconditions: Creating a task that runs only if certain conditions are met
- Cold And Flu Guide
- A simple workflow process where, based on a decision, one of several branches is chosen.
- Dataflow: State Triggers
- State Triggers: Creating a task that runs only after something else happens
- Cold And Flu Guide
- Although mostly a workflow process, the Recommend Vaccine action is separated from the workflow: it has a state trigger which monitors the age of the patient and is only activated for patients over 65 years of age.
- Non-linear processes: Event Triggers
- This process is a collection of simple workflows, each enclosed within a “triggerable” plan. The Introduction action serves as a menu: it contains a list of hyperlinks that are linked to the appropriate event triggers, and allows the end-user to select between the available sub-processes.