Page tree
Skip to end of metadata
Go to start of metadata

Index

Introduction

Soffid includes in its Smart Engine a layer of BPM (Business Process Management) to provide useful workflows integrated with the processes and policies of the Soffid core.

Until now, the workflows were implemented with an external programming tool, and it required knowledge of the Soffid core and programming languages.

The BPM Editor Addon allow you to create, configure and publish business processes very easily for the Soffid administrators.

This addon is available from Soffid version 2.7.0.

Installation

This addon is located in the Addons section and its name is BPM web editor.

For download and install the addon you could review our generic documentation about this process: Addons installation

After the installation of the addon you could find its web page in the section: Start > Soffid Configuration > BPM editor

Overview

With this addon you can perform the next operations:

  • In the BPM editor page, you can create, edit and publish workflows (and also remove).
  • The workflows can be exported and imported to create backups and copy them in other environments of Soffid.
  • Nowadays, there are some templates to create new workflows: user management and permissions management

Once you have published a workflow with the proper configuration:

  • The users with the correct permissions will start, approve or observe the workflows.
  • The final user could start a new workflow from the Selfservice Portal or if he has more permissions also from the Console.
  • Once a workflow is published, this is already available from the menu.
    • In the Selfservice:  Start > New process > THE WORKFLOW
    • In the Console: Start > Processes and tasks > New process > THE WORKFLOW

Operations

The BPM editor page allow to the user the next operations.

And also, when you select a workflow, more operations are displayed.

These operations are described below.

New business process (button)

The button  allows you to create a new workflow (business process).

First, you have to fulfil the name and select a type.

About the attributes:

  • The Process name is the identifier of the workflow and the label name of the workflow in the Console and Selfservice for the final user.
  • The Process type has two options:
    • User management: used to create and update identities and their attributes.
    • Permissions management: used to create, update and remove permissions and account to identities.

To complete the creation, click the Accept button, and the next step will be the configuration of the workflow. For more information, go to the Configuration section.

Import process (button)

The button  allows you to import a workflow previously exported.

This functionality is very useful to next scenarios:

  • To restore a workflow from a backup (a workflow previously exported)
  • To deploy a workflow from one environment to other (for example from Test to Live)
  • To start a new workflow from a template

To import a new workflow you only have to select and upload a *.pardef file:

If a workflow already exits with the same name, this will be overwritten.

Edit process (icon)

The icon  open the workflow configuration page.

For more information, go to the Configuration section.

Remove process (icon)

The icon  allows you to remove a workflow.

Notice that the workflow is permanently removed in the BPM editor page, but if it was previously published, it is still available for the final user in the Console and Selfservice. To unpublish the workflow you have to disable it, for more information visit: Disable/enable a workflow

Export process (icon)

The icon  allows you to export a workflow to a *.pardef file.

This file could be imported later in the same Soffid or into another Soffid instance.

Configuration

In this section you could find information about how to configure all the aspects of a business process (workflow).

All the configurations explained are in the edit process page.

Main attributes

In this section you could update the main attributes of the workflow and the authorizations required for the users.

About the attributes:

  • Process name. This is the identifier name of the process and also the label name for the final users. If you change the name, a new instance will be published, the previous one could be disabled in the Business process definition page.
  • Process type. The type of the workflow: "User management" or "Permissions management".
  • Description. This is the description of the workflow. When a final user starts a workflow, this text is displayed into the Actions log tab.
  • Initiators. Here you could configure the roles or the identities that could start a new workflow from the Console and Selfservice. E.g. "admin" identity, "SOFFID_ADMIN" role, both separated by comma ',' as "admin,SOFFID_ADMIN" or if you want to publish the workflow to everyone, you can use the text "tothom" or the character '*'.
  • Managers. Here you could configure the roles or the identities that could perform tasks in the workflow as approve permissions or cancel the workflow.
  • Observers. Here you could configure the roles or the identities that could open the workflows in read-only mode.

Operation buttons

To complete the edition of the workflow, in this section you could find three options.

These are the buttons:

  • Save. This button save all your changes included after open the process editor.
  • Save and Publish. This button save all your changes included after open the process editor and also publish the workflow in Soffid. After that, this last version of the workflow is available for the final user (with the correct permissions) in the Console and the Selfservice.
  • Cancel. This button cancel all the changes included after open the process editor.

Steps section

The Steps tab has several parts.

Workflow diagram steps

This part has the set of the steps of your workflow.

You could select a step to see its configuration on its right side.

Also, you could create a new step with the button .

Finally, you could remove a step, you have to select the step and the button  will appear.

Notice that the list seems sequential, but a workflow diagram is not like a list or a tree, is like a graph, every step could have some incoming transitions and some outgoing transitions.

Step details

This part has the configuration details of the step.

These are the main attributes:

  • Step name. Identifier, name, and label of the step.
  • Step type. The type of this step:
    • Start.  Step to start the workflow.
    • Screen. Step to show the user a form that must be completed.
    • Grant approval. Step to show the manager a form with the changes that must be approved.
    • Mail. Step to send a mail.
    • Custom. Step to add custom logic.
    • Apply changes. Step to apply the changes of the user to Soffid repository.
    • End. Step to end the workflow.
  • Description. Description of the step.

The configuration tabs are described below and some of them depending on the step type selected.

Task details

This tab is for specific information about a step, it could be empty, and his information depends of the step type.

  • Start.  Empty.
  • Screen. To define the users that have to approve the user changes.

  • Grant approval. To define the users that have to approve the user changes.

  • Mail. Step to send a mail.

  • Custom. Step to add a custom script to include more business logic between steps.

  • Apply changes. Step to apply the changes of the user to Soffid repository.

  • End. Empty.

Fields

In this tab you could choose from the all the possible user attributes, which are visible in write-mode or only-mode.

The list of attributes is:

  • Metadata attributes created in the workflow (attributes tab of the workflow)
  • Default attributes of the user (identity)
  • Custom attributes of the user (additional data)

This steps is only available on the steps: Start, Approve and Grant approval.

Actions that you could perform:

  • Add a new field with the button .
  • Change the order of the fields in the workflow form, just drag and drop with holding this icon .
  • Remove a field with the icon , the icon is displayed at the right when you select the row of the field.
  • You could update the Label of the field displayed in the workflow.
  • Also you could update the Name of the field.
  • By default, the fields are in write mode, if you want display the field in read only mode, please mark the checkbox .
  • You could add a custom script to validate the value of the field.
  • You could add a custom script to decide the conditions to display the value.

In a validation or a visibility script you could access to the fields as the next script.

if (object{"userName"}==null){
	throw new Exception("The userName is mandatory");
}
return true;


Triggers

In this tab you could create custom scripts to be triggered from some actions.

This steps is only available on the steps: Start and Approve.

Actions that you could perform:

  • OnLoad. To perform some actions before the execution of the step.
  • OnPrepareTransition. To perform some actions after the execution of the step and before to start a transition to another step.
  • OnChange. When the value of the attribute if changed. You could choose the filed from a list.

In a trigger script you could access to the fileds as the next script:

// Example 1
executionContext.setVariable("profileServer", "null");
executionContext.setVariable("homeServer", "null");
executionContext.setVariable("mailServer", "null");
executionContext.setVariable("userType","A");
un = executionContext.getVariable("userName");
executionContext.setVariable("userName", un+"_INT");

// Example 2
a = executionContext.getVariable("shortName");
u = serviceLocator.getUserService().findUserByUserName(user);
s = serviceLocator.getDispatcherService().findDispatcherByName("OC_DTVEXT");
u.userName = an+"_ATT";
account = serviceLocator.getAccountService().createAccount (u, s, a);
serviceLocator.getUserService().update(u);
serviceLocator.getAccountService().updateAccount2(account);


Incoming transitions

In this tab you could see the previous steps those it has connected.

Actions that you could perform:

  • Create a new transition with the button.
  • Change the From step (step from the flow come).
  • Change the Name of the transition (Incoming Transition).
  • Change the To step (step where the flow go, but it is itself).
  • Create a custom script (Action)
  • Remove the transition with the icon .

Outgoing transitions

In this tab you could see the next steps those it has connected.

Actions that you could perform:

  • Create a new transition with the button.
  • Change the From step (step from the flow come, but it is itself).
  • Change the Name of the transition (Outgoing Transition).
  • Change the To step (step where the flow go).
  • Create a custom script (Action)
  • Remove the transition with the icon .

Attributes section

In this tab you could create custom attributes to be used in the workflow.

previously

This configuration is almost the same that you can find in the Agents#Accountmetadata or in the Additional data#Modifyobjects.

The attributes created by default are needed for the workflow, do not remove them.

You can create a new attribute with the button .

For every attribute, you could configure the next points:

  • Code. Text used internally as an identifier by the system. Try to create a short one without spaces and with uppercase to separate words.
  • Label. Label displayed in the web page. This may be a name or a short description.
  • Data type. Data type of the value of the metadata attribute. The data type includes:
    • Basic data types as String or Boolean.
    • Extended data types as Photo or E-mail.
    • Default Soffid  objects as User or Group.
    • Your own custom objects created in Soffid. 
  • Multiple values. (Optional) If this flag is enabled, the metadata may contain more than one value.
  • Size. (Optional) Set the maximum length of the value.
  • Values. (Optional) You may create a set of values to provide to the user as a list. Use the button  to create a new value. 

If the created metadata attribute should be deleted, click on, located on the right of the attribute.

These attributes will be used in the Steps tab to be mapped with the Soffid data.

About a generated workflow

Once you have a workflow named User.

With this configuration.

After publish it, the final user with the correct permissions will find the workflow here.

When you enter into the workflow the first page is the form generated from the fields and configuration of the step Start.

The header of the page is common for all the workflows.

In the body of the tab Task, all the fields of the step Start are displayed.

And the button  is the Outgoing Transition of the step Start to go to the Approve step.

Now the identities configured in the step Approve as managers should accept or remove this user creation request.

The manager will receive a mail and they could access to the workflow in My tasks page.

Notice that the workflow complete the Start step a workflow identifier is created to be found and observed for the creation user, manager and observers.

Once the manager is into the workflow he could read or update the fields configured in the step Approve.

At this moment the manager has to get the task with the button  and update the editable fields.


And finally decide if  or  the user creation.

Resources

Below you could find a set of workflows that you could import, edit and publish in your Soffid instance:

Documentation

Links to additional information in the documentation:


  • No labels