LSPS documentation logo
LSPS Documentation
Processes

A Process is defined in a process definition file, which can hold one BPMN or GO-BPMN Process. When the process is executed, it is executed directly based on the definition: no compilation or code translation takes place.

  • A process represents a namespace, and as such, can define process variables. It can also define parameters.

For further information on Processes and their elements, refer to GO-BPMN Modeling Language Guide.

Creating a Process

To create a Process, do the following:

  1. In GO-BPMN Explorer, right-click the Module and go to New > Process Definition.
  2. In the dialog box, define the properties of the Process:
    • Container: parent Module
    • Type: whether the Process is goal based or a standard BPMN process without the GO-BPMN extension
    • Visibility: if Private, the Process content will not be accessible from importing modules. Also, you will not be able to use such a process in a reusable process.
    • Executable: when selected the process is instantiated as part of the model instance and can be used as a Sub-Process or as the Activity parameter of the Execute task.

      The flag marks a process that serves only for documentation purposes.

    • Instantiate Automatically: if selected, the Process is instantiated when its parent Model is instantiated and that even if it is imported in a non-executable Module.
  3. Now you can define the workflow of the Process.

    Note: Modeler is a diagram editor: you can editing the content of the Process definition via a diagram, hence consider getting familiar with the concept of diagrams and diagram editors.

creatingProcess.png
Creating Process workflow

Defining Process Parameters

You can instantiate your process with parameters if it is instantiated with a function call or by a reusable sub-Process, etc. If a process is instantiated automatically by its model it cannot take any input parameter.

To define process parameters, do the following:

  1. Make sure the process is open in the process editor.
  2. In the Outline view, right-click the process and select New > Parameter. Make sure to select the parameter as Required if it cannot be null: if not required and the process is instantiated without the parameter, the parameter value is null.

    Alternatively, you can open the process properties in the Properties view and click Add on the Parameters tab.

  3. In the Property view, define the parameter properties. In the case of reusable-Subprocesses, the parameter values are defined on the Parameters tab of its Properties view.

Example process instantiation

applicationProcess(user -> admin, requestedHardware -> Hardware.ssd)

Defining Process Variables

Process variables are accessible from within the process context and are initialized when the process instance is created.

To define local process variables do the following:

  1. Make sure, you have the process resource opened in the Process editor.
  2. In the Outline view, right-click the process and go to New > Variable.
  3. In the displayed Properties view, define the variable properties.

Modeling a Process

After you have created a process, you can model its content: the way you design your process and the element you use are primarily determined by the process type you have chosen, that is, whether your process is BPMN- or GOBPMN-based.

Process content is defined using the Modeler, which is a dedicated diagram editor: when you open a process for editing, the editor opens a diagram. As you insert new element views onto the diagram, the elements are created in the process and displayed in the Outlook view.

Changing Task Type

To change the task type of an existing Task, right-click the Task in the canvas and click Change Type. In the dialog box with task types select the new Task Type.

Note that any parameter value you have already defined are lost unless the new Task Type defines the same parameter.

Removing Invalid Task Parameters

To remove the invalid parameters and keep only the parameters that are relevant for the new Task Types, go to Project -> Task Parameter Cleanup: Task type parameter cleanup automatically removes irrelevant parameters and parameter values.

Extracting Process Elements into a Reusable Sub-Process

To nest one or multiple Process elements into a Sub-process, select the elements, right-click the selection, and in the context menu, click Extract to Subprocess.

Linking Goal to Goal Diagram

To continue designing a goal sub-tree in a new diagram (that is, to create an implicit hyperlink on a goal):

  1. In a goal diagram, right-click the goal you wish to decompose further on a new diagram.
  2. Click Create Goal Diagram.
creatinggoalhyperlink.png
Creating a new goal diagram with an implicit goal hyperlink
Canvas with a new diagram with a hyperlink view of the selected goal opens. Both views of the goal (one in the original diagram, one in the new diagram) are provided hyperlink markers. Double-clicking a goal view with an implicit hyperlink opens the diagram with the connected goal view.