General information
Unlike automations, which is for automating away repetitive work, the purpose of workflows is to support collaboration between users, by standardizing business processes. Therefore, workflows require user interaction in order to advance.
An example of such a standardized business process can be found below - both in graphic (flow mode) and text forms (text mode).
This image shows a basic request workflow, in flow mode, where the things being requested could be e.g. the download of an asset, or the publishing of an asset:
The below image shows fragments of the same workflow as the image above. This, however, shows the code behind. This mode is called flow mode:
To access workflows, press the Settings button in the top right corner, and enter Workflows.
From here you’ll get access to edit and delete existing workflows, or creating new ones.
Creating and editing workflows
Creating a new workflow
In order to create a new workflow, click the Create button in the upper area of the Workflows section, and then choose between one of two options:
Create new workflow
Create workflow from DSL
Creating a workflow from DSL
When the user selects the option to create a new workflow, the most common method would be to either make a completely new workflow from the scratch or select a template or use one of the pre-existing ones as a base for a new one. It is also possible to create a workflow from DSL. Here the user can quickly copy and paste the text form of another workflow, for example from the documentation.
Creating new workflow
Selecting Create new workflow will prompt a new modal, where the user should type the name of a new workflow and choose one of the templates (if available). What’s understood as “templates” here are other existing workflows that can be used as a base for creating new ones.
Once the information is filled out, the workflow edit area becomes available.
In case of creating workflows manually from scratch, once in the workflow edit area, the user begins creating a workflow by clicking Add first stage button. The following stages are added by clicking the dot at the bottom of stage and dragging the line to the next stage, while holding the cursor.
The user is now ready to start editing the transitions and stages.
Editing transitions
In order to edit a transition, the user needs to hover the cursor over one of them which will prompt the appearance of a transition menu. From here the user can either edit the transition or delete it.
Selecting Edit will open an editing area on the right side of the screen.
The following editing options are available for transitions:
Changing the name of the transition
Selecting between manual and automatic transition
Setting priority (automatic transition only)
Changing the name of the unique ID
Adding a description
Adding constraints
If the user is in doubt about what kind of information should be filled out in specific fields, hovering over a question mark next to it will prompt an explanation.
Constraints are the required conditions that need to be met in order to transition to a stage. There are four types of constraints available in the system:
Input constraints
Metadata constraints
Upload constraints
Execution condition
In order to add a new constraint, the user needs to navigate to the tab Constraints and then click on the button Add new constraint.
The next step is to select the correct option from the list of available constraint types.
Constraint type | Description |
---|---|
Input constraints | This type of constraint can usually be found in download requests. Here, the user is asked for different types of input. The following constraints are available:
This is an example of this type of constraint: |
Metadata constraints | This type of constraint gives the workflows administrator a great flexibility in terms of constraints as it allows to point to and interact with the metadata fields available in the customer’s Media Manager. In this type of constraint the metadata field’s content must match the condition. This is an example of a metadata constraint: |
Upload constraints | The user who makes a download request will have to attach a file in the from specified by workflows administrator. This could be e.g. a consent form. This is an example of an upload constraint: |
Execution condition | This type of constraints is related to who can execute the transition. The following constraints are possible:
This is an example of an execution condition constraint: |
Each constraint item has two icons in the upper right corner: one for the available actions regarding the constraint, and the other for re-ordering the constraints.
Additionally, the user can click on the top area of a constraint box in order to collapse or expand it. This is how collapsed constraints look:
Editing stages
The user can edit a stage by hovering the mouse pointer over it, clicking on the three dots and then selecting Edit.
The editing area will open on the right side of the screen. This is how the stage editor looks:
The following editing options are available for stages:
Changing the name of the stage
Changing the name of the unique ID
Adding a description
Indicating whether the stage completes the workflow
Indicating relevant meta fields
Assigning a stage owner (automatically or dynamically)
Adding labels
Automatic/dynamic assignment of a stage owner
The stage owner is a user or user group who gets a particular stage in the workflow assigned. As a consequence they receive a task related to that stage and will need to take an action, such as approving or denying download request.
There are 5 different scenarios that can be configured in the process of editing a stage:
Scenario | Configuration | Explanation |
---|---|---|
There is no stage owner. | Set Automatically Assign Stage to “Do not automatically assign”. | This option should be used for the stages which should not lead to a change of the task’s assignment. An example of a use case for this scenario is an approved stage, where no further action is needed after a request download was granted. Select this if you want to assign it back to the initial reporter |
The stage owner is a user. | Set Automatically Assign Stage to “Assign to a user”. In the new field below select the stage owner from the provided list. | This option should be used for stages that should be assigned to a certain user. All the available users are presented in the drop-down list. |
The stage owner is a user group. | Set Automatically Assign Stage to “Assign to a user group”. In the new field below select the stage owner from the provided list. | This option should be used for stages that should be assigned to a certain user group. All the available user groups are presented in the drop-down list. |
The stage owner is the instance owner | Set Automatically Assign Stage to “Assign to the instance owner”. | This option should be selected, if the stage needs to be assigned back to the initial reporter. An example of a use case:
|
The stage owner is assigned dynamically. | Set Automatically Assign Stage to any value. Then, select the correct MasterItemReference type metafield from the list under Dynamically Assign Stage. | This option allows for more flexibility when assigning, as this gives the ability to assign users and groups based on a selected value in a metafield. An example of a use case is the situation in which each asset has an owner who is responsible for what happens with this particular asset. The asset owner is determined by a metafield. Note that dynamic assignment works only, if there is one asset in the task. If the dynamic assignment fails because of multiple assets in the task or because the indicated metadata field is empty, the automatic stage assignment is the fallback. This is why the user needs to configure both options. |
Saving a workflow
Once the workflow is fully defined, the user should click Save button in the upper right corner of the workflow edition area.
Tasks
Tasks can be accessed by clicking the Tasks icon on the right side of the top bar.
The tasks are available to two categories of users:
Workflow administrators can access the tasks assigned to them in order to see all active and completed tasks as well as take actions.
End users can interact with the system in a different way. As an example, they can make requests (such as an ability to download or upload an asset) and then access the status of those requests.
Each task is defined by the workflow name, status and the created time and and date. The tasks can be sorted by creation date, modification date and name. It’s not necessary to reload the page to see the most current task list. The user can simply hit the refresh button in the upper right corner.
In order to simplify the process of working with tasks, the list is paginated and the user can select how many tasks should be visible on one page (between 12 and 200).
The users have the following filters at their disposal, when working with tasks:
Quick filters
Status
Workflows
Assets
Created by
Created by group
Assignee
Assigned group
The details of the task are opened in the right-side panel after clicking on it once. At the top of the newly-opened panel the user can review the details of the task (name, description, status as well as the outcome of input constraints) and take action. In the lower part of the panel there are three tabs with additional content that the user can switch between:
Assets (all the assets related to the task)
Comments (used for the direct communication between users involved in the same workflow and between users with access to other users' tasks)
Attachments (related to upload constraints)
(new screenshot placeholder)
Use case examples
(to come)