Workflows
Introduction to workflows in ConSol CM
Workflows are used to model business processes in ConSol CM. This includes both modeling and designing the process from a logical point of view and implementing the process in a technical object. Workflows hold all information about the process flow, exceptions and interrupts.
Concepts, terms and definitions
Concept |
Other terms |
Definition |
---|---|---|
business process |
process |
Procedure used in an organization to perform certain tasks |
workflow |
|
Technical representation of the business process |
queue |
process |
Instance of the business process; links the used workflow to the stakeholders, i.e., the involved contacts and users |
contact |
customer |
Person who has an interest in the outcome of the business process |
case |
ticket |
Object which runs through a process and records the performed tasks |
role |
|
Definition of the responsibilities of the users by providing access permissions to objects and functions |
interrupt |
|
Interruption in the process caused by a trigger or a scope activity. After the interrupt, the case returns to its previous position in the process. |
exception |
|
Change in the process flow caused by a trigger or scope activity. After the exception, the case continues the process from its new position. |
Purpose and usage
A workflow implements a specific process, i.e., the actions and decisions which are required for handling the customer requests. Each request is modeled as a case, where the request data, progress and involved people are stored. The degree of flexibility when working on a case depends on the workflow design. You can either define fixed paths which a case can take or use scope activities to allow certain actions at any point of the process. In both cases the case starts the process at the start node and ends it at the end node.
It is possible to represent process chains by linking several workflows using jump in and jump out nodes.
Interrupts and exceptions in the process are modeled using triggers, which allow the process to react to external incidents.
Workflows are assigned to queues, which determine the process stakeholders, i.e., the users who work on the tasks and the contacts who are interested in the process outcome.
Basic process logic
The following basic principles apply to ConSol CM processes:
-
An element can have outgoing connections to either one automatic element, or one or several manual elements.
-
A case always waits after the last executed workflow element.
-
Interrupts and exceptions can be caused by triggers or scope activities.
-
If the trigger or scope activity has one or more subsequent automatic actions, it initiates an interrupt. After the execution of the automatic actions, the case returns to its previous position in the workflow, i.e., the position it held when the interrupt occurred. This behavior can be modified in a specific situation, see Modifying the execution flow.
-
If the trigger or scope activity has one or more subsequent manual actions, it initiates an exception. After the exception, the case continues the process from its new position.
-
Loops are not detected when saving or deploying a workflow. They cause an InfiniteWorkflowLoopException on runtime.
Available settings for workflows
Workflows have the following settings:
-
Name
Mandatory. The technical name of the workflow. Used when assigning a workflow to a queue. -
Version
The version of the workflow. Assigned automatically by the ConSol CM system when saving or deploying the workflow. See Saving and deploying a workflow. -
Description
Optional. The description of the workflow. -
Status
The status of the workflow. There are four possible status:-
Saved: This workflow version is not deployed.
-
Deployed and in use: This workflow version is currently deployed and the workflow is assigned to at least one queue.
-
Deployed: This workflow version is currently deployed but the workflow is not assigned to any queue.
-
Deactivated: This workflow version has been deactivated. Deactivating a workflow version is for information purposes only. The workflow can still be assigned to queues.
-
-
Last modification date
The date when the workflow was last modified. -
Case transfer progress
The progress of the ongoing case transfer which was started after deploying a new workflow version. The info box in the details panel shows the status of the last transfer, the number of cases to transfer and the number of cases for which the transfer failed or succeeded. -
Used in queues
The queues which have this workflow assigned.
Available workflow components
There are two kinds of workflow components:
-
Workflow elements are used to define the process flow. They can either by executed automatically or manually by a user.
-
Adornments can be attached to workflow elements to define exceptions, interrupts and forms.
The following table shows the workflow elements:
Element |
Icon |
Description |
Execution |
Link |
---|---|---|---|---|
Scope |
|
Scopes are used to group workflow elements to define the status of the cases which are located within the scope at this moment. |
n/a |
|
Start node |
|
The start node is the entry point to the process for the cases. |
Automatic |
|
End node |
|
End nodes are the end of the process. Once a case reaches an end node, it is closed. |
Automatic or manual |
|
Activity |
|
Activities are steps in the business process. There are three types of activities:
|
Automatic or manual |
|
Reopen activity |
|
Reopen activities can be used to reopen a closed case. |
Automatic or manual |
|
Decision node |
|
Decision nodes allow to route cases according to a defined condition. |
Automatic |
|
Jump-in node |
|
Jump-in nodes are entry points for cases from other queues. |
Automatic |
|
Jump-out node |
|
Jump-out nodes are exit points for cases which pass to another queue. |
Automatic or manual |
|
Note |
|
Notes are used to document the workflow. |
n/a |
The following table shows the adornments:
Adornment |
Icon |
Description |
Link |
---|---|---|---|
Time trigger |
|
A time trigger is an interrupt which occurs when a certain time period has passed. Time triggers can be attached to scopes and activities. |
|
Email trigger |
|
An email trigger is an interrupt which occurs when an email is received for a case. Email triggers can be attached to scopes. |
|
Event trigger |
|
An event trigger is an interrupt which occurs when a certain action or change has occurred for a case. Event triggers can be attached to scopes. |
|
Activity form |
|
Activity forms can be attached to activities. They define the form which the user has to fill out to execute an activity. |
Usage of scripts
Scripts can be used in many places of the workflow to fine-tune the behavior of the workflow components and add logic to the process.
Most of the workflow elements can have two types of scripts:
-
Visibility script: Determines whether the element is displayed in the Web Client and CM/Track.
-
Script: Contains code to be executed when the case passes the element.
Adornments can have different types of scripts according to their purpose.
Basic tasks
Managing workflows
Workflows are managed in the first tab, called All workflows, of the Workflows page of the Web Admin Suite. The following actions are available:
-
Create a new workflow
Click the New workflow button above the list of workflows. You can click the Clone icon to duplicate an existing workflow. When creating a new workflow you can choose between the basic template and a simple workflow, or start with an empty canvas. -
Edit a workflow
Click the Edit icon or the workflow’s row and update the desired data in the details panel on the right. -
Open a workflow
Click the Open icon to open the workflow in the workflow editor and update its content. The workflow is opened in a new tab. See Using the workflow editor. -
Import a workflow
Click the Import workflow button above the list of workflows to import a workflow as PAR file. -
Deactivate a workflow
You can deactivate workflows which are not assigned to any active queue by clicking the Deactivate icon.Deactivating a workflow does not have any effects other than indicating that a certain workflow is not needed at the moment. It does not prevent a workflow from being assigned to a queue.
-
Activate a workflow
You can activate workflows which are deactivated by clicking the Activate icon. -
Delete a workflow
You can delete workflows which are not assigned to any queue by clicking the Delete icon. To delete several workflows at once, select them and click the Delete icon at the top of the table. -
Delete old workflow versions
You can clean up your system by removing all old workflow versions. Click the button Remove old versions above the list of workflows to delete all workflow versions except for the deployed versions and the newest versions.
Using the workflow editor
The workflow editor allows to create the workflow content. The basic steps are:
-
Place a workflow element on the canvas by dragging it from the element panel to the desired position.
-
Edit the details of the element. This can be done either in the details panel on the right or using the toolbar. You can find information about the available settings on the subpage of the element type, see Available workflow components.
-
Connect the workflow element with other workflow elements by drawing arrows.
You can perform the following actions in the workflow editor:
-
Add an element to the workflow
Click the element in the element panel and drag it to the desired place on the canvas.You can create a connected activity by clicking the icon in the lower left corner of a workflow element.
-
Connect two elements
Select the element. A small arrow icon is displayed on its right side. Click the icon and drag an arrow to the element which you want to connect. The order determines the direction of the arrow, i.e., the arrow starts on the first element and points to the second element. Alternatively, you can press the CTRL key to draw an arrow with the mouse. -
Copy and paste elements
Select the element and press CTRL+C to copy it. You can paste the element with CTRL+V.Copy and paste is available for scopes, activities and nodes. Elements are copied with all the elements and adornments they contain. They are pasted next to the original element. You need to move the pasted element to place it correctly.
If you copy a scope, you can paste it to another workflow of the same installation.
-
Select multiple elements
You can hold the Shift key and click several workflow elements to select them. Afterwards you can move or delete all the selected elements. -
Switch language
Select one of the languages defined on the Languages page to display the workflow in this language. -
Display an overview
Click the Workflow overview button to show an outline of the workflow consisting of the scopes and workflow elements placed outside scopes only.Changes done in the overview mode cannot be saved.
You can undo the deletion of an element, e.g. a scope, by pressing CTRL+Z.
Actions which are related to specific types of elements are described in the subsection of the element type.
Saving and deploying a workflow
Workflows are versioned so it is possible to view the history of a workflow and check older workflow versions. The versioning pattern is “major.minor”, e.g. 1.2.
There are several actions which you can perform in the context of saving and deploying a workflow.
-
Modify properties of a workflow element
Select a workflow element and edit its properties, either in the details panel or in the toolbar.The effect of modifying element properties depends on the deployment mode (see Deployment mode):
-
Strict versioning: The changes will become effective when the workflow is deployed.
-
Development mode: Changes to the following elements will become effective immediately:
-
Scripts
-
Labels
-
Activity forms
-
Sorting of activities and scopes
The other changes will become effective when the workflow is deployed.
-
-
-
Save a workflow
Click the Save button below the workflow editor. Saving the workflow does not increase the version number unless you modify a deployed workflow version for the first time. In this case, the minor version number is increased. -
Save a workflow as a new version
Click the Save as new version button below the workflow editor. Saving the workflow as a new version increases the minor version number. -
Deploy a workflow
Click the Update workflow button below the workflow editor. Deploying a workflow increases the major version number if Strict versioning is selected for the deployment mode (see Deployment mode). In the development mode, the version number is not increased. The new workflow version is used in production and, if needed, cases are transferred to the new version automatically, see Background knowledge about case transfers. The transfer is done in a way that the cases stay as close as possible to their previous position. If the activity where a case is located has been removed, the case is moved backwards to the last existing activity which it has passed.A case transfer is needed for the following changes:
-
Deleting activities or scopes
-
Changing the technical name of a workflow element
-
Moving a workflow element to another location, e.g. to a different scope
-
Adding automatic activities or changing manual activities to automatic
-
Adding a time trigger
A message that a transfer is in progress is displayed below the workflow editor and the progress of the case transfer is displayed in the workflow list. The details panel of the workflow contains information about the status and the number of transferred cases. If the case transfer failed, you can resume it by clicking the Resume transfer icon in the workflow table.
It is not required to stop ConSol CM during workflow deployment.
-
-
Validate a workflow
You can validate the workflow at any time by clicking the Validate button. Workflow elements with validation errors have a red name. The validation message is displayed when hovering the affected element.
Advanced tasks
Modifying editor settings
The workflow editor has the following global settings. Click the Settings button to modify them.
Deployment mode
The deployment mode determines when changes to the properties of workflow elements, e.g., labels, scripts, or icons, become effective.
-
Strict versioning: All changes become active when the workflow is deployed. This mode ensures that an exact snapshot exists for each workflow version which has been used in production.
-
Development mode: Changes which do not cause a case transfer become active immediately. This applies to scripts, labels, descriptions, adding activity forms, expose to customers setting (except for scope activities) and skip update event setting. The other changes become effective when clicking the Update workflow button. This updates the current workflow version, i.e., the version number is not increased. This mode can speed up workflow development and creates less workflow versions.
Changes to the workflow structure, e.g., moving an activity or adding a time trigger, always become effective when the workflow is deployed.
Workflow drafts
The setting Automatically create draft version allows to determine whether a draft version should be created with the first important change to a deployed or saved workflow, e.g. adding an element, editing a script or modifying a label, and updated with subsequent changes. When you leave the application because your session times out or you close the browser tab, and log in again, the information about the draft is displayed when you open the workflow. You can choose to open the draft version or to discard it.
This feature works only for deployed or saved workflows, but not for newly created workflows which have not been saved yet.
Background knowledge about case transfers
A case transfer is needed for the following changes:
-
Deleting activities or scopes
-
Changing the technical name of a workflow element
-
Moving a workflow element to another location, e.g. to a different scope
-
Adding automatic activities or changing manual activities to automatic
-
Adding a time trigger