Main   >    publications   >    Service for implementing user operations via email without using Process Board in ARIS Process Governance
17.04.2024

Service for implementing user operations via email without using Process Board in ARIS Process Governance

The opportunity for users to participate in the APG process to make decisions without logging in to ARIS.

Description

The purpose of the service is to implement the user participation in the APG process for decision-making without logging in to ARIS by providing decision buttons in the body of an email ("e-mail task").

The solution consists of the following components:

  1. REST API Web Service – ensures that user decisions are received, stored and provided upon requests.
  2. APG Service for sending user operations "e-mail task" – ensures sending emails in HTML format with GUI elements for decision-making.
  3. APG Service for receiving and processing of user answers from "e-mail task" type operations.
  4. ARIS script for generating a graphical image of a model.

During configuration the standard APG Service (contained in ARIS by default) is embedded in the process of ARIS Process Governance to run the ARIS script (component 4). The script generates a graphical image for the context model, stores it in RAM as bytes for transferring back to the APG process.

Then, the APG Service (component 2) is embedded in the process. As an input to the service, it is necessary to transfer the ARIS users, as well as the previously prepared graphic image. A separate email is sent to each user with a text, a graphic image of the model and buttons to make a decision.

After receiving the email, the user transfers their decision to the Web Service (component 1) by clicking one of the buttons in the email (Fig. 1). When clicking, the link containing the ID of e-mail task and the decision is opened in the browser. The Web Server receives this information and saves it, and the user sees a message in the browser that the decision has been considered (Fig. 2). This user operation can be performed both on a personal computer and on a smartphone/tablet running any operating system.

Figure 5. Script Editor development environment
Figure 1. An example of "e-mail task"

An example of the link that provides sending a user decision to Web Service: http://:/emailtask/p/89d19eb6-2097-4610-84a6-bf690a166e2e/positive

Figure 5. Script Editor development environment
Figure 2. An example of the Web Service response that the decision has been considered (can be customized)

After that, the next APG Service (component 3) is embedded in the process. This service is separate from component 2 to be able to embed user decisions in a more diverse way, for example, in parallel with other operations. The component regularly requests information from the Web Service about the decisions made. When certain conditions are met (for example, all users have sent their decisions), the component completes the execution. The output provides lists of users grouped by decision.

An example of using the Service

Figure 5. Script Editor development environment
Figure 3. An example of embedding the solution in the APG process

Input and output specifications of the APG Service for sending user operations "e-mail task" (component 2):

 

Input/Output name

Mandatory

Data type

Description

Input

1

recipients

+

user

Users who receive e-mail task

2

tenant

 

text

A current tenant for reading variables from the server configuration

3

subject

+

text

An email subject

4

text

+

text

An email text template. It can contain target marks for replacing with values

 

replaceTargetList

 

collection

An array of target marks for searching and replacing in the email text template

 

replaceValueList

 

collection

An array of values to replace target marks with them in the email text template

7

pictureBytesBase64

 

text

An array of bytes of graphical image as a base64 string

8

wsEndpoint

+

text

Web Server Endpoint. Syntax: http://:

9

buttonPositiveName

 

text

A button name for a positive user decision

10

buttonNegativeName

 

text

A button name for a negative user decision

Output

1

emailTaskIdList

 

text

IDs of usertask sent that are separated by a combination of characters "; ". The output is needed for the APG Service (component 3) to receive information about user decisions

2

userAccountList

 

text

Technical user names who usertask has been sent to, separated by a combination of characters "; ". The output is needed for the APG Service (component 3) to receive information about user decisions

 

 

 

Figure 5. Script Editor development environment
Figure 4. An example of data flow of function for sending user operations "e-mail task" (component 2)

Input and output specifications of the APG Service for receiving and processing user answers from "e-mail task" type operations (component 3):

 

Input/Output name

Mandatory

Data type

Description

Input

1

emailTaskIdList

+

text

IDs of usertask sent that are separated by a combination of characters "; ". It is an output from the APG Service of sending e-mail task (component 2)

2

userAccountList

+

text

Technical user names who usertask has been sent to, separated by a combination of characters "; ". It is an output from the APG Service of sending e-mail task (component 2)

3

wsEndpoint

+

text

Web Server Endpoint. Syntax: http://:

4

checkingInterval

 

text

An interval for regular check of user decisions in the Web Server. It is set in minutes. The default value is "30"

5

votePercent

 

text

A percentage of positive decisions relative to the total number of participating users, indicating the final positive decision. The default value is "100"

6

deadlinePeriod

 

text

Maximum time of the service operation. It is set in minutes. If the value is empty, the service will continue to work until the condition for the required number of positive solutions is met

Outputs

1

positiveAccountList

 

text

Technical user names who have made a positive decision, separated by a combination of characters "; "

2

negativeAccountList

 

text

Technical user names who have made a negative decision, separated by a combination of characters "; "

3

nullAccountList

 

text

Technical user names who have ignored making a decision by the end of the service operation, separated by a combination of characters "; "

4

positiveCount

 

text

A number of users who have made a positive decision

5

negativeCount

 

text

A number of users who have made a negative decision

6

nullCount

 

text

A number of users who have ignored making a decision by the end of the service operation

7

totalDecision

 

text

A final decision. It is positive if the percentage of positive decisions relative to the total number of participating users is equal or more than votePercent

 

 

 

Figure 5. Script Editor development environment
Figure 5. An example of data flow of function for receiving and processing user answers from "e-mail task" type operations (component 3)

Figure 5. Script Editor development environment
Figure 6. An example of further utilizing user answers in the process

Component functionalities

Functionality

Degree of implementation of the service

Prototype of solution

Final solution

REST-API WebService

Main target functionality

Partly, sufficient to demonstrate

Full

Configuration file support

Partly

Full

Ensuring the continuous operation of the Web Service: checking the operation of the Web Service with the restart function

No

Yes

Storing of user decisions

In RAM only (lost after restart)

Support of storing in permanent memory (not lost after restart). Implementation can be discussed with customers – storing in DBMS, local files, etc

Ability to change the user's decision (enabled option)

No

Yes

Prohibition on changing the user's decision (enabled option)

No

Yes

Support of secure protocol https

No

Yes. The necessity can be discussed with customers

Logging of processed requests

No

Yes

APG Service for sending e-mail task (emailTaskSender)

Main target functionality

Partly, sufficient to demonstrate

 Full

Support of sending emails from ARIS Connect Server

Partly, sufficient to demonstrate

Full

Support of text message template

Yes

Yes

Ability to change names of the buttons in a message

Yes

Yes

APG Service for processing e-mail task answers (emailTaskObserver)

Main target functionality

Partly, sufficient to demonstrate

Full

Checking for answers with the specified regularity

Yes, every 5 minutes

Да, настраивается

Ability to set the maximum service operation time

No

Yes

Ability to specify % of positive user decisions as a condition for completing the service operation

No

Yes

ARIS-скрипт формирования графического изображения модели

Main target functionality

Partly, sufficient to demonstrate

Full

 

 

 

Required working conditions for the REST API Web Service

  1. Since the Web Service is developed in Java, it is necessary to install JRE (JavaRuntimeEnvironment) to run on OS Windows. Also, there is an option to use portable versions of JRE.
  2. In order for the Web Service to receive requests from users and the APG Service, network must be configured accordingly. It is necessary to specify a free standard HTTP port (e.g., 80) in the configuration file of the Web Service and/or open it in firewall:
    • Server with Web Service – inbound rules;
    • Servers (nodes) with APG – outbound rules;
    • User’s PC– outbound rules.

If you have any questions about this service, please, contact us by the contact form or at info@dainovaro.com and we provide you with more information.

Other publications