Plugin Version: 3.0.2 | Release Notes
The Service Level Agreement plugin offers a new level of control over unfinished tasks and processes. This will help users maintain strict control over tasks and processes executed by any user assigned to it, avoiding any possible delays sending important information - all during an active process. This plugin will also help follow up on unfinished tasks.
This plugin allows users to have workflow control within specific conditions set by an admin user. Penalties may also be defined depending on the time exceeded while executing a task or process. The admin user will have the possibility to generate reports based on the SLA information set for process. If a penalty was set for hours exceeded, it will be reflected on the report.
This plugin is fully compatible with the following ProcessMaker versions:
- v. 2.5.2.x
- v. 2.8.0.x
- v. 3.0.1.x
- v. 3.1.x
- v. 3.2.x
- v. 3.3.x
Installation and Configuration
Go to ADMIN > Plugins and click on the Import button in the toolbar to import the Enterprise Edition with the pmSLA.
After importing the plugin, then enable it by going to ADMIN > Plugins > Enterprise Edition and selecting the plugin from the list. Then click on Enable in the toolbar. The status of the plugin should then change to Enabled.
Configuring the Service Level Agreement
After the plugin was enabled, go to "ADMIN > Settings" and the option SLA will be added in the list at the left. Click on this option to view the SLA information:
It will list all processes in which SLA was applied to.
Creating a New Service Level Agreement
Click on "New" to create a new SLA; it is possible to create more than one SLA depending on the processes created in the specific workflow. This means it only takes into account the process created in the current environment where the SLA will be set.
The SLA form to be filled out will be:
- Process: Process in which the SLA will be applied.
- Name: SLA Name.
- Description: Brief description of the SLA.
- Status: Indicates the status of the SLA (Active or Inactive).
- Type: Indicates SLA type, which include:
- Entire Process: The SLA will be applied for the entire process.
- Multiple Tasks: If this option is selected, the user is able to choose the range of tasks the SLA will be applied to. Set Task and To to specify range of the task.
- Task: Select the task SLA will be applied to.
- Duration: Define the maximum duration SLA will have. Expressed on Days and Hours.
- Condition: Condition that must be accomplished to have the SLA executed.
If a penalty needs to be defined, enable this option by marking the checkbox Activate Penalty.
- Penalty Value: The penalty value depends on the Enterprise rules, which determine whether the penalty is charged in dollars or points.
- Penalty Time: These fields indicate the exceeded hours to take into account in applying the penalty.
Generating SLA Reports
As was mentioned before, the Simple Report Plugin must be enabled to generate SLA reports, otherwise the SLA reports can't be accessed. Once the SLA penalties are configured, and the cases are started, Cron must be executed in order to generate reports. Then, go to the Home tab and at the end of the cases list the Reports icon will be added (only if the Simple Reports plugin is enabled); by accessing this option a window will be loaded on the right side of the screen.
For the purpose of this document, the types of reports were divided into 4 sections, which will be explained as follows.
Section 1: Filters
Filters allow different search criteria to be set in order to generate a final report:
- SLA: A list with all SLA created will display. It is possible to generate a report by choosing - All - SLA created.
- Dates: Select the date(s) when SLA had been applied. By selecting an option from the list, a new field with a date picker will display and a specific date must be selected. Possible options to select:
- Greater than: This filter will consider dates greater than the one selected in the field.
- Greater or equal than: This filter will consider dates greater than or equal to the one selected in the field.
- Less than: This filter will consider dates less than the one selected in the field.
- Less or equal than: This filter will consider dates less than or equal to the one selected in the field.
- Between: This filter will consider dates between the dates selected in the corresponding fields.
- Exceeded: Select this option to search based on whether or not the set time for SLA was exceeded. Possible options to select:
- Not Exceeded: Use this filter if the set time was not exceeded.
- Exceeded by less than: Use this filter if the time exceeded was less than 1 or 2 hours.
- Exceeded by more than: Use this filter if the time exceeded was more than 1 or 2 hours.
For the last two options, a new field will display next to the dropdown where the hour will be selected.
- Status: Filter by case status. Possible statuses to select: open, completed or -All-.
Once the filters are set, click on Generate Report button. If the filters need to be reset and set again, click on the Clear Filter button.
Section 2: SLA Summary
If the Generate Report button was clicked, a summary of the report will generate and open in a new tab:
The summary will detail:
- All calculations are based in cron: All penalties will be calculated as soon as cron is executed. So, the time shown in this section is the time of the cron execution.
- SLA Name: Name of the SLA given when it was created.
- Cases executed : Number of cases executed per SLA created.
- Total Duration: Total duration of the Process.
- Time planned: Time planned to start counting penalties.
- Time exceeded: This is based on the duration of the task or process, depending the SLA configuration.
- Average exceeded: Time exceeded, based on the duration of the task or process.
- Penalty rate: Penalty rate defined when the SLA was created.
- Penalty: Based on the penalty value. This value will be calculated according to time exceeded.
This report is available to export in PDF or XLS format. It's worth mentioning that the report will be generated based on the general information displayed on the current page.
Section 3: SLA Detailed Report
By clicking on one of the SLA generated in Section 2, the report will be detailed according to each case executed for the process or task where SLA was set. This will open a new tab:
As you can see, each case is calculated individually; moreover, it shows the status of the case or if the case hasn't started yet. This report can be also generated as an XLS or PDF file.
Section 4: SLA Cases
When the report mentioned in Section 3 is generated, click on a specific case to check its detailed information. This will be opened in a new tab:
Example: Purchase Request Using SLA
To further explain this plugin, an example of the Purchase Request process has been included in this section. The Process Map for purchase requests shown below:
Follow the steps below in order to create a SLA policy:
Step 1: Go to Admin > Settings and click on the SLA option. Configure the penalties to be applied as follows:
According to the information in the image above, the penailty will be applied to the entire Purchase Request process. The process will have an estimated duration of 1 hour. If the time was exceeded and the process has not been completed, a penalty of 2 dollars will be charged for every hour exceeded.
Step 2: Start a case and fill the information into the first DynaForm; at this point do not route the case.
Step 3: Let's pretend the user has not completed this task, and it is stored in Draft folder; also, 10 days have passed since this task was started. Next, the cron should be executed to generate the report.
Step 4: Once the cron is executed, go to Home and at the end of the cases List, the Reports option will be displayed. Click on that option to check the report generated, and in the Filter, select the name of the SLA created to see a more specific report:
Step 5: Click on Generate Report to see the final report. The summary will open in a new tab:
The summary will detail:
- SLA: Name of the SLA given when it was created. "SLA Purchase Request" in the example.
- Times Executed: 26 cases, for this specific example.
- Total duration: 617 H, 34 min based on total time penalty .
- Time planned: 1 H, 0 min based on total time penalty .
- Time exceeded: 594H 7 min, based on the duration of the task set for one day.
- Average exceeded: 22H 51 min.
- Penalty: Based on the Penalty rate. In the example, it is $2/hr exceeded.
Step 6: If the user doesn't need to print a detailed report, just click on the Excel or PDF icon to generate a report of the current page.
If the user needs a specific report, double-click on the report and a new window will open with a detailed report listed by case. At this point it is recommended to know the case number of the user to whom the penalty will be applied. In the last column, the case status can be verified. Finally, this report can be exported as a PDF and/or DOC file.