Versions Compared

Key

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

...

Generic Term

Specific TermMeaning
Job

The smallest unit of what can be executed on a given machine, for example from the command line (shell) of the operating system. Jobs are stateless objects, the instance of a Job is called a Task.

Jobs are available as Shell Jobs and they can run in a Java Virtual Machine as JVM Jobs, see JS7 - Job Templates.

For details see JS7 - Job Instruction.


TaskThe instance of a Job that is executed. A Job can run in a number of parallel Tasks.

ProcessThe operating system view of a Task. In addition, Tasks can have child Processes.

Return CodeA summary term for the Exit Code of a Process and the Return Code provided by Jobs running in a JVM.

Exit CodeAn Exit Code is returned by a terminating Process. This includes that shell Jobs return Exit Codes, JVM Jobs do not return Exit Codes as their Tasks can be re-used. Instead, JVM Jobs complete with a Return Code.
Workflow

A Workflow is started by an Order that passes the Nodes and Instructions included with the Workflow. Any number of Orders can execute the same Workflow in parallel instances that run independently from each other.

The succession of Instructions in a Workflow implements a Workflow Pattern, for example a Sequence. However, the most simple Workflow Pattern can include to execute a single Job.

Frequently used synonyms include the terms Job Net, Job Stream. For details see JS7 - Workflows.


InstructionInstructions implement Workflow Patterns such as Fork/Join, a Sequence etc. Instructions rule job dependencies, see JS7 - Workflow Instructions.

NodeThe position of an Instruction, for example to execute a Job, in a Workflow. Nodes are assigned labels that allow to recognize steps in a Workflow.

Workflow PatternA number of Nodes that are implemented by Instructions in a Workflow. Instructions include for example to execute a Job or to fork processing according to a Workflow Pattern. For details see JS7 - Workflow Patterns.

SequenceA Workflow Pattern that implements sequential execution of Instructions in a Workflow.
Order

Orders represent triggers for execution of Workflows.

  • Order is the summary term for any Order instance, such as Timed Orders, Ad hoc OrdersFile Orders.
  • Orders are executed just once for a given date and time.
  • If an Order meets a Fork/Join Instruction in a Workflow then this results in a number of Child Orders being created.

Timed OrderSuch Orders are automatically created by a Schedule that determines when to run the Order and what parameterization to apply.

Ad hoc OrderSuch Orders are added by users or from external applications on-the-fly, no Schedules are involved.

File OrderAn Order that is represented by an incoming file, see JS7 - File Watching.

State

Orders are stateful objects that pass a number of State Transitions during lifetime. States include for example to be scheduled for later execution, to wait for resources, to be running, to be failed etc.


State Transition

Orders are subject to State Transitions when moving from one State to the next. The JS7 implements a Finite-state Machine with non-deterministic transitions that can be considered a Directed Acyclic Graph.

State Transitions are signaled by Events. For details see JS7 - Order State Transitions.


EventEvents signal State Transitions of Orders. They are used for example to automatically update information in the JOC Cockpit GUI about Orders being running, being waiting, being failed etc.
File Order Source
The scheduling object that defines a source for File Orders, for example the directory that should be watched for incoming files, for details see JS7 - File Watching.
Resource Lock

Resource Locks implement mutual exclusion and can be used to limit parallelism of Jobs, for details see JS7 - Resource Locks.

Job Resource
Job Resources are used to propagate variables and to inject environment variables to shell Jobs. They are a flexible means to parameterize Workflows and Jobs, for details see JS7 - Job Resources.
Notice Board
Notice Boards implement job dependencies, for example to make a Job wait for some other Job in a different Workflow, for details see JS7 - Notice Boards.
Script Include
Script Includes are re-usable pieces of shell code that can be added to Job scripts, for details see JS7 - Script Includes.
Calendar

Calendars determine the days that are are considered by Schedules when creating Orders. For example, a business day Calendar can specify Monday to Friday as possible days for Workflow execution. A Schedule that is assigned this Calendar can further restrict execution to more specific days, for details see JS7 - Calendars.

Schedule

Schedules make use of Calendars that specify possible days for Workflow execution. Schedules can create Orders for any days of the assigned Calendar and they can further restrict for which days to create Orders.:

  • Schedules create and parameterize Orders for execution of Workflows.
  • Schedules can restrict execution dates of a Calendar, for example to create Orders exclusively for Mondays, for the 1st Tuesday in month, for the last day of month etc.
  • Schedules determine the point in time during the day when an Order should be executed.

For details see JS7 - Schedules.

Terminology for Operations used with JS7


Generic Term

Specific TermMeaning
DeploymentDeploy

Deployment includes to forward objects to Controllers and Agents that store deployed objects with their respective journal. This applies to objects such as Workflows, Job Resources, Resource Locks etc.


RevokeUsers can Revoke a Deployment which forces deletion of the respective scheduling object from Controllers and Agents.
SubmissionSubmit

Submission includes to add Orders to Controllers and Agents. Submitted Orders can be cancelled or suspended..

ReleasingRelease

To Release objects includes to make JS7 - Calendars and JS7 - Schedules available for processing by the Daily Plan.

RolloutRolloutScheduling objects are rolled out to separate environments, for example for a sequence of dev -> test -> prod environments.

Mapping of the Terminology used for Objects with JS1

...