Dirigent.io Concepts

Please bare in mind that this is a shortened version of the Help section, which can be found within the Dirigent.io application. For more information, please sign into your account, and click on "Help" in the lower part of the menu on the left.

For information on bug fixes an improvements on different versions of Dirigent.io, visit our release notes page.

BPM

Business Process Management (BPM) is a field in operations management that focuses on improving corporate performance by managing and optimising a company's business processes (Wikipedia).

Dirigent.io

Dirigent.io is web-based workflow automation and BPM software. It helps companies create process-driven applications that enable coordination of people, information and systems.

Dirigent.io Designer

The Dirigent.io Designer is a graphical modeling tool that is used for designing a process flow. The Dirigent.io Designer allows you to create a process by dragging and dropping different tasks on a Canvas and editing the properties of these tasks.

Processes

A Process is a set of tasks that will accomplish a specific organizational goal. Processes are created in Dirigent Designer and represent a sequence of tasks that will be performed by people or automatically. Each Process must have one starting event and at least one end event, but also can contain decision points, known as gateways. All tasks are linked to each other using connections. A Process is always contained within an Application.

Applications

The Dirigent.io Application consists of a Process, and as many reusable External Process Calls as needed. In order to run an Application its status must be active. The application ID is an auto increment number that identifies each Application.
There are two views for applications: card view and list view.

Cases

When an Application is being run it creates a new Case. If an Application has to be started at a specific time or repeated, Scheduling should be performed.

The Dashboard

The Dashboard is a user interface that contains small graphs, charts that provide data on key information about a Workspace.

Documents

Documents section is a place where all uploaded documents are stored. Depending on the plan you use, your storage size can be different. Users can search for a specific document or filter and sort documents by name, size, the user it was uploaded by, business type etc. Documents can be uploaded and downloaded using User Tasks and Forms during an Application Case. Uploaded documents are archived in Documents but they can also be downloaded via User task.

Forms

Forms can be used by unlimited number of processes and applications. One User Task or Process Form can call one form. When that Application is running then assigned users are able to see the form and to populate it. All data from user forms can be logged.

Connectors

Some tasks work only when an adequate connector is set. There are four types of connectors: Email, Remote Agent, Confluence and JIRA. The Email connector must be set if your processes include sending emails. If you want to user Remote Agent to run programs on your local computer then Remote Agent connector must be configured. Likewise, processes that contain steps for creating or updating a JIRA issue, require a JIRA type connector to be configured.

Remote Agent

Use Remote Agent to run software in your environment and capture the result in your process. See which tasks need to have the Remote agent configured and running. Design your process combining Wait For File, Copy and Move process tasks to execute file system operations in remote location while controlling workflow in Dirigent process.

Tasks

Tasks are where users will recieve all of the forms assigned to them or to groups they belong to, via the User Task. Users can search for a specific task, or they can sort them by their due date or time of arrival.

To Do

The tasks that need to be completed. My tasks tab are tasks assigned to a user or users, and they are not visible to other users. User tasks which are assigned to a group are shown under Available tab and all group members will see these task. All tasks tab shows all user tasks for My tasks and Available tab.

Done

The tasks that are completed. Completed tasks include information that was submitted in them.

Work Orders

Work Orders represent a list of jobs that should be done. Each Work order can contain attributes that closely describe the job that should be done. Work orders can be created from scratch or by using a template, either manually or automatically within a process.

User management

User management includes management over Users and Groups. In order to control who can have access to important content permissions can be set on user and group level. User permissions have priority over Group permissions.

Users

Under the Users section you can see and manage all of the users in the workspace. You can also invite other users to join you in the workspace. Users who have been invited to a workspace, but still haven't accepted an invitation will be on this list with an Invited status. When you select a specific user you can edit the user, and it as a member of group.

Groups

Under the Groups section, each group and its members can be viewed. Groups allow you to categorize users and define acces permissions based on different roles, hierarchy levels and departments.

Workspaces

All workspaces are separated from each other, so that each user only sees and works with the relevant applications that exist in the workspace. This allows users to divide work into logical compartments. Create workspaces for specific applications, projects, business areas or just have one where you can test new applications without mixing them with your live production.

Workspaces are a great feature where you can invite users, create groups and manage user and group permissions. Workspace owners and other users with proper permissions can invite other users to the workspaces.

Each user can be an owner of at least one workspace and a member as many workspaces as they are invited to. Depending on the plan in use, the user may not be able to create a new workspace. When an invited (not manually added) Cloud user is registered, a workspace is automatically created for them. If a user without an existing Dirigent.io account is invited to join a workspace, they will be taken to the register account page before they can accept the invitation. Workspaces are independent from one another and users can switch between workspaces.

Default workspace

A Default workspace is the workspace that will be opened every time user signs in.

Getting started

The following sections contain information to help you get started using Dirigent.io.

Free plan

All users can try Dirigent.io for free, by registering for a free trial, or by downloading the free self-hosted version. If this plan is limiting your business you can change your plan at any time. If you wish to transfer all your data from free plan just request a backup and then you can continue where you left off.

Create an account

In order to create an account, users must populate all the necessary information and then wait for the email with an account activation link. After the account is activated, users can sign in.

Sign in to Dirigent.io

The Dirigent.io application has a security mechanism in place, as well as implemented permissions that restrict workspace access and actions to certain users and user groups. Users be prompted to log in to Dirigent.io.

If users prefer to sign in their Twitter accounts, they need to complete the sign up and authorization step, after which they can sign in with Twitter each time they wish to sign in.

Account recovery

If a user forgets their password, they need to provide the email address that was used to sign in to Dirigent.io where they will recieve instructions on how to recover their password. Account recovery can also be used to activate an account that has been deactivated. The same can be done to activate accounts suspended after several unsuccessful login tries.

User profile

Every user can set their User Profile. This is where the name, contact information, etc. can be added.

Edit profile - Your profile page is a place where you can edit your personal details, change password and deactivate your Dirigent.io account.

Emails - section in which you can add or remove your email addresses and set primary email address. Primary email address is the one where we send emails for account recovery.

Workspaces - All workspaces to which you are a member of are listed here. Here you can set default workspace, add new workspaces, edit workspaces which you have created and add licenses.


User's Guide

Processes

A Process is created along with Application. The Process can contain Sub Processes and External Process Calls.

External Process Calls

External Process Calls are processes that can be called upon in workflows via the External Process Call element whenever there is repetetive job that needs to be done. They are designed separately from the Process, and once they are created, they can be added to any Process in the workspace.

Sub Process

A Sub-Process is a task that contains other tasks, gateways, events, etc. which on itself form a process that is part of the bigger process. Once Sub Process is designed and configured it can be collapsed to an icon. Sub Process completely defined inside a parent Process, and unlike Externall Process Call it can't be used by other Applications.

Designing a flow

All process flows are designed in the Dirigent.io Designer with the simple drag and drop method. The Dirigent.io Designer has four major categories: The canvas, the propertioes area, the menu and the palette.

Canvas

Provides the area in which you can design your process using the elements from the Palette. Moving an element onto the Canvas is done with the Drag & Drop tool. Click-and-hold on an element in the palette and drag it to where you want the item in the Canvas. Select and move elements on the Canvas with a click. Elements are connected to each other by means of connectors to create the basic framework of the process structure.

Properties area

There are Process and Element properties, and these are located in the right side pane. Process properties - Provide an interface for managing basic process information. Element properties - Element properties will appear when an element is selected.

MENU

Name Function
Hides/shows the Palette.
Save Saves the process.
Save as External process call Saves the process as an External process call, which can be used in other processes.
Save as new application Saves the process as a new application.
Undo Reverts the last action
Redo Reverts the reversion of the last action
Import/export Shows a preview of the JSON file of the process, and provides the option of editing it or uploading a JSON filer, or donwloading the XML or JSON file.
Export image Exports the process as a PNG image.
Settings Toggles the grid, task toolbar and snaplines.
Allign elements Alligns all the elements in the process
Zoom in Zooms in
Default zoom. Resets default zoom.
Zoom out Zooms out
Filter elements Filters elements based on the name.
Help Shows a panel with shortcuts.

Palette

The Palette provides items that you can use to model your process. The Palette consists of Events, Gateways and Elements. Click the ≡ button to hide or restore the palette and view the available items. Drag an element from the Palette onto the canvas and then use the properties to control the implementation of the element.

Connections

Each of the elements represents one step in the overall process while the connections specify how to transition from one element to the other. Connections have a name and constraint. Connections are visualized as an arrow going from the source task towards the target task.

Events

Dirigent is capable of triggering user defined events. Events can be used to begin an alternative way in the process flow which is executed simultaneously with the rest of the process. How this alternate flow interacts with the rest of the application - for example does it abort the main application flow or not - depends entirely on the user. An Event is represented by a circle and is something that happens during the course of a Process. Events affect the flow of the process and usually have a cause (trigger) or an impact (result).

Gateways

A gateway is used to control the flow of execution. A gateway is capable of consuming or generating tokens. A gateway is graphically visualized as a diamond shape, with an icon inside.

Elements

Elements represent predefined tasks that will be performed by system or by user.

User Task

A User Task represents a task that needs to be executed by a human actor. While some of the work performed in a process can be executed automatically, some tasks need to be executed by human actors. In order to have users participate in your processes, you need to (1) include User task inside your process, (2) compose a Form that will be displayed to users, (3) have end users interact with a User task they get inside their Inbox and complete the tasks assigned to them.

Multiple users is a part of User task. When this is marked it initiates multiple Cases, one for each user that is selected in Select Users form.

Sub Process task

The Sub Process task contains a process within the main process. Unlike the External proces, it cannot be used in a number of different processes, only in the process it is created in. When the main flow reaches the Sub Process task, it is started, carried out and completed before the main flow can continue.

External Process task

The External Process task contains a process within the main process. Unlike the Sub proces, it can be used in a number of different processes, regardless of the process it is created in. When the main flow reaches the External process task, it is started, carried out and completed before the main flow can continue.

Annotation

Annotation task doesn't have any functional infuence on the flow. It's purpose is for flow designer to further explain what is happening in the process.

Pool

Pools are used to section and better organize the flow.Pools can be separated by lanes. Lanes represent areas of responsibility for users or groups. Tasks can be divided between lanes based on the users or groups the tasks will be assigned to.

Sleep task

The Sleep task delays the execution of the task that follows, for the defined amount of time.

Set Variable task

The Set variable task sets the value of a process variable.

Regular Expression task

The RegExp task uses Regular Expressions to perform pattern-matching.

Mapper task

The Mapper task allows JSON input to be mapped to process variables through its own query language.

Log task

Log task creates a log entry in Application Case Activites. Log Task may be used for taking a note or capturing some value (e.g. Process variable or other task's result). Use Log task whenever you want to have a clear knowledge exactly what happened in a flow.

Work Order task

A Work Order task can be used to create a new Work Order, or to update an existing one.

Start Application task

The Start Application task starts a new case of another application.

Document Upload and Details tasks

The Document Upload task uploads a document to Dirigent.io Documents section. The Document Details task will attribute desired details to a document from the Dirigent.io Documents section.

Git task

The Git task is used for connecting to a remote repository in order to perform git commands like pull, clone or checkout. It uses the Remote agent connector, so in order for it to perform defined commands, the Remote Agent connector must be set properly.

JIRA task

The JIRA task allows users to create and update JIRA issues automatically, as a part of their workflow.

Confluence task

The Confluence task is used to create and update Confluence pages and spaces and add comments on the pages and spaces.

Send Email task

The send email task allows users to send emails as a part of their automated process.

FTP task

FTP task is used to perform FTP commands on FTP server that you have access to. For this task to work a connector of FTP type must be selected. The FTP connector allows users to save parameters that are required to connect to the FTP server. There are 3 types of FTP connector FTP, SFTP and FTPS. Choose these depending on which FTP server you want to connect to.

Web Service task

The Web Service task sends requests to web services and recieves responses from them.

Script task

The Script task executes programs on the host operating system.

Copy task

The Copy task copies all data from one destination to another one.

Move task

The Move task moves all data from one destination to another one.

List Files task

The List Files task filters files at a given destination. The task takes the list of files (non recursive, excluding directories) under Path. If no Filename or Pattern was specified every file will be included in the list of the response object (ListFilesResponse). If either Filename or Pattern is specified the task will try to match every files' name against the Filename and the Pattern in thas order, and include only the files matching the FileInfo object in the list of the response.

Wait for File task

The task periodically (specified by Wait) takes the list of files (non recursive) under Path and tries to match every single files' name against: the Filename and the Pattern, in that order. When a match is found the task will exit immediately and its response object (WaitForFileResponse) will contain information about the first matched file. If the file is not found after set number of attempts the case will terminate.

DBQuery task

DBQuery Executes read query on the specified database.

DBUpdate task

DBUpdate executes write query on the specified database.

Technical requirements

Before you start using Dirigent.io it is quite useful to know that there are different plans to choose from. Decide which option suites you the most and make sure that fits with your equipment.

Since Dirigent.io is a web based application some browser requirements must be met for both the Cloud and Self-hosted plans and these are:

  • A modern web browser
  • JavaScript enabled in the web browser
  • Cookies must be allowed according to the standard settings of your web browser
  • No limitations to normal web browsing. These may apply to certain users in organisations.
  • A PDF viewer (such as Adobe reader or Foxit reader) with support for viewing PDF files in the web browser
  • HTTPS traffic to the https://play.dirigent.io website must be allowed
  • Operating system Linux, Windows, Mac

If you wish to install Dirigent.io on your server then you should also meet the following:

  • Server minimum: 2GHz CPU, dual core, 4GB RAM
  • Java 8
  • PostgreSQL database 9.4 (or newer)
  • HTTPS communication between Remote Agent and server
  • JDK 8 (OpenJDK or Oracle)

If all of the aforementioned is met then you can proceed with self-hosted instalation which is explaind in our FAQ page.