Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Agents act semi-autonomously. More precisely, a number of JS7 - Workflow Instructions are performed with a Controller or with an Agent.
  • If an Agent meets a workflow instruction that is executable
    • by the Agent then autonomous execution with the Agent will apply.
    • by a Controller then this invalidates the autonomy of the Agent. The Agent has to wait until the Controller is available and confirms the results of the workflow instruction.
  • Scenarios
    • If a workflow is performed by executing the jobs included in the workflow with a single the same Agent then autonomy can be assumed.
    • If a workflow assigns different Agents to jobs then - after job execution - one Agent will hand over the order to the Controller to decide about the next Agent to be used. Such workflows cannot be executed in an autonomous manner - they require the availability of the Controller.
  • The workflow instructions that allow Agent autonomy and those that require a Controller to be present are described in the section below.
    • If Agent autonomy cannot be guaranteed for an individual order then the Agent will store any state information with its journal and forward the information to the Controller when the Controller becomes available.

...

  • JS7 - Fail Instruction
    • The Fail Instruction forces an order to transition to the FAILED state. This state transition has to be forwarded to a Controller to become visible with the JOC Cockpit user interface.
    • If the Fail Instruction is nested in a Try / Catch Instruction then an Agent handles the Fail Instruction autonomously. Otherwise the Fail Instruction requires user intervention to cancel, suspend or resume the order, see JS7 - Order State Transitions.
  • JS7 - Fork / -Join Instruction
    • The Fork Instruction is executed by the Agent if the first few jobs in each branch are assigned the same Agent, otherwise the Fork Instruction is executed by the Controller.
    • The corresponding Join Instruction is executed by the Controller. This behavior will change with early releases of JS7.
  • JS7 - ForkList / -Join Instruction
    • The behavior is similar to the Fork / Join Instruction.
  • JS7 - If Instruction
  • JS7 - PostNotice PostNotices Instruction
    • A notice is posted independently of the availability of a Controller and therefore allows a workflow to proceed with execution using the same Agent.
    • The notice is forwarded to the Controller depending on its availability.
  • JS7 - Retry Instruction
  • JS7 - Try / -Catch Instruction

Workflow Instructions for execution with a Controller

  • JS7 - ExpectNotice ExpectNotices Instruction
    • This instruction requires the notices available with JS7 - Notice Boards to be checked and therefore has to be executed by the Controller.
  • JS7 - Finish Instruction
    • The instruction is technically performed by an Agent that forwards the relevant order state transition to the Controller.
    • As the Finish Instruction causes an order to leave the workflow, there is no change in Agent autonomy except for the fact that the final result of an order being no longer active with its workflow will only become visible in the JOC Cockpit user interface after the Controller becomes available.
  • JS7 - Fork / -Join Instruction
    • The Fork Instruction is executed by the Controller if any jobs in forked branches are assigned different Agents, otherwise the Fork Instruction is executed by the Agent.
    • The corresponding Join Instruction is executed by the Controller. This behavior will change with early releases of JS7.
  • JS7 - ForkList / -Join Instruction
    • The behavior is similar to the Fork / Join Instruction.
  • JS7 - Prompt Instruction
    • As this instruction requires acknowledgement from a 3rd party it is executed with a Controller.

...