LSPS documentation logo
LSPS Documentation
Quickstart

This guide is the place to start if you are new to Living Systems Process Suite (LSPS). You will get familiar with the product's architecture, its environments, and related documentation, and create your first process model.

What is LSPS

LSPS is a suite of tools that allow you to develop a flexible company application that will distribute work to your employees, communicate with external systems and users, and that in a very short time-frame.

You will be able to manage processes and any related data, monitor key performance indicators of processes and activities, integrate with social media platforms, etc.

Tools

First, you need to install Process Design Suite (PDS): PDS is the environment for development of your application and process models.

You will set up and use a local application server, called PDS Embedded Server, with the LSPS Application deployed: The LSPS Application is a JEE application that allows you to deploy, run, and manage GO-BPMN models. The heart of the application is the LSPS Server, which stores and runs your models, manages their execution, their update, system user and their authentication and access rights, etc.

From PDS, you can manage the LSPS Server form of a dedicated perspective, called the Management perspective.

In this guide, you will deal only with models: Extending and modifications to the LSPS Application are out of scope of this brief introduction. Refer to the developer documentation for the information.

Summary:

  • Process Design Suite is an environment (IDE) where you design your business models and perform all management tasks.
  • PDS Embedded Server is an application server with the LSPS Application already deployed. It is intended for testing and demonstration purposes.
  • LSPS Application is a JEE application that works with your business models: It manages the uploaded models, runs the models and manages related resources, such as, user rights and roles.
simpleArchitecture.png
PDS Embedded Server that you start and control from PDS

Launching Process Design Suite

To launch the Process Design Suite, do the following:

  1. Go to the folder where you installed LSPS, $LSPS_HOME.
  2. Run the lsps-design binary for your operating system.
  3. In the Workspace Launcher dialog box, enter a path to the folder where you want to store everything you will create.
  4. Click OK.
  5. On the Welcome page, click the Modeling Perspective icon.

Creating the Hello World Model

First you will create GO-BPMN projects: projects exist only in your workspace and are intended for organization purposes. A GO-BPMN project contains modules, which allow you to organize the resources still further, but also provide the visibility and executability features, similarly to Java packages: A module contains definitions of processes as well as other resources, such as, variables, organization hierarchy of involved people, localization units, etc.

Modules are what you upload to the server. If a module is executable, it can be used to create a model instance: The server creates the model instance and creates in its context instances of the executable module and any imported modules.

To create the project structure with a module and a process, do the following:

  1. In PDS, create a project:
    1. On the main menu, go to File > New > GO-BPMN Project.
    2. In the New GO-BPMN Project dialog box, enter the HelloWorld project name.
      newProject.png
      New GO-BPMN Project dialog
    3. Click Finish.
  2. In the project, create a HelloWorld module:
    1. In the GO-BPMN Explorer view, right-click the HelloWorld project and go to New > GO-BPMN Module.
    2. In the New GO-BPMN Module dialog box, enter the HelloWorld module name.

      Note: Leave the executable module check box selected: an executable module is considered a model and can become a model instance (the flag somewhat resembles the logic of the main method in Java).

      newModule.png
      New GO-BPMN Module dialog
      You have created a HelloWorld project with a HelloWorld module. Note that the module contains the Standard Library imports.
    3. Create a process definition in the HelloWorld module:
      1. In the GO-BPMN Explorer, right-click the HelloWorld module and go to New > Process Definition.
      2. In the New Process Definition dialog box, enter the helloWorldProcess as the process name and click Finish. Make sure the Type is set to BPMN-based process.
        newProcess.png
        Creating a process definition file
  3. Now you can design the process content:
    1. In GO-BPMN Explorer, double-click the process definition.
    2. In the Modeler editor on the right, create a process with a None Start Event and a Simple End Event connected with the Flow:
      1. In the palette on the right, click the None Start Event.
      2. On the canvas, click where you want to position the None Start Event.
      3. Select the None Start Event and click-and-drag the quick linker icon next to it to the position where you want to place the Simple End Event. In the context menu, select Simple End Event.
        quicklinkerpull.png
        Using quick linker
    3. Select the Normal Flow element between the None Start Event and Simple End Event: in its Properties view, click the Assignment tab.
      helloworldassignment.png
      Hello World with the assignment expression
    4. On the Assignment tab, enter the following expression:
        log("Hello World!", INFO_LEVEL)
      
      log is a call to the log() function of the Standard Library that logs the specified message with its level to the database log of the application: the Logs can be viewed in the Management perspective.

The module should be valid: Open the Problems view. If the view contains a problem entry, you need to resolve it. Check the respective instructions above again and remedy any mistakes.

If there are no problems in the view, you can upload the model to PDS Embedded Server and run it.

Running Hello World

To run an instance of the HelloWorld model on PDS Embedded Server, do the following:

  1. Click to run PDS Embedded Server.

    PDS creates the .LSPSEmbedded folder in your workspace and generates the resources for the server with the LSPS Server, and runs the server with the LSPS Server deployed.

  2. Upload and instantiate the model: right-click the HelloWorld module and go to Run As > Model.

    This uploads the module and its module imports to the LSPS Server and creates its Model instance.

  3. You can check that the model instance was created in the Management perspective:
    1. Switch to the Management perspective (on the main menu, go to Window > Perspective > Open Perspective > Management).
    2. In the Module Management view, click the Refresh ( ) button: The view will display the HelloWorld module and the Standard Library modules.
    3. In the Model Instances view, click the Refresh ( ) button: The view will contain the instance of the HelloWorld model.
    4. In the Logs view, click the Refresh ( ) button: The view will contain the log message of the HelloWorld model.
      monitoringModel.png
      Hello World model instance entry in the Management perspective
  4. Optionally, check the system data in the underlying H2 database. Set the database URL to jdbc:h2:tcp://localhost/h2/h2;MVCC=TRUE;LOCK_TIMEOUT=60000 and connect to it with the user lsps and password lsps.

What Just Happened

When clicked Run As > Model on your executable module, the following happened:

  1. The module with all its module imports, in this case only modules of the Standard Library, were uploaded to the Module repository of the LSPS Server.
  2. The LSPS Server created a model instance based on your model.
  3. The model instance checked for Start Events in processes it could trigger: it found the None Start Event in your helloWorldProcess. Hence it created an instance of the process.
  4. The None Start Event produced a token, which indicates where the execution is currently at.
  5. The LSPS Server moved the token to the End Event, which consumed the token.
  6. Since no more tokens were present in the process instance, the process instance finished.
  7. Since no other processes were running in the model instance, the model instance finished.

What to Do Next

Now that you have a rough overview of how LSPS works, you can refer to one of the following: