ShareDo workflows are built in Workflow Designer. This provides 2 different canvasses:
- A no-code, browser-based, drag-and-drop design tool. Through this tool Users can visually design complex or simple workflows on an infinite canvas.
- A javascript-based "code" canvas where technical developers have complete freedom to design any process that meets their needs.
Regardless of the canvas you choose, you can easily automate any process, including powerful patterns such as serial flows, parallel flows, rework, and looping. No limitation exists on how many workflows are created to meet solution requirements.
Introduction video to workflow management
View the playlist on YouTube: Platform Deep Dive - ShareDoShow.
Best Practice In Workflow Design
In your business analysis of workflows, you will often create complex process maps based on notation such as BPMN. Whilst it is perfectly possible to implement these complex processes in ShareDo we would typically recommend that you decompose these large process maps into shorter running processes.
Visual Design Canvas
The Workflow Designer provides visible, easy-to-understand process documentation.

Workflow steps are simply dragged onto the canvas from the Toolbox, allowing for quick visual prototyping in a familiar business process modelling and notation style.
Steps can be dragged onto the canvas and connected to other steps without extensive configuration, allowing for rapid prototyping and documentation of the workflow process.

The Workflow canvas is designed to be used by two different personas within your business:
- Subject Matter Experts – your process experts will often use the workflow canvas to design the series of steps that will be performed in the process without worrying about the implementation. SMEs need have no specific skills other than a knowledge of the process itself and some generic process modelling experience.
- Workflow Modellers – modellers will then typically complete the implementation of these steps using the toolbox items provided. Workflow modellers will require some training in the tool however, since the workflows are created and managed using a no-code, drag-and-drop editor, high levels of technical skill are not required. However some degree of IT technical understanding would be advisable.
See Creating a workflow using the Visual Design Canvas.
Extending The Workflow Palette
You are not restricted to the workflow actions that ShareDo provides but can extend these actions by creating custom toolbox items. This is done via the ShareDo IDE, see Extending the workflow palette through custom workflow actions.
Script Design Canvas
Whilst our no-code design canvas is the right solution for most workflows, sometimes you will need more control. ShareDo enables this through the Script Design canvas, which enables you to write complex javascript to meet your workflow processing needs.

See Creating a Sample Scripted Workflow.
Starting Workflows
Workflows can be started in one of the following ways:
- From an event - ShareDo's underlying architecture is based on the concept of complex events. When a significant business action happens in ShareDo, then an event is raised, and this trigger can be used to start workflows.
- From a menu - depending upon your work management style, it may be desirable to offer users a number of ad-hoc workflow actions for them to choose from a menu.
- From another workflow - all workflows are designed to be able to be called independently if required. Hence when designing your workflows, you should be aiming for re-use. For example, you may create generic "chasing" workflows that can be used across the system.
Allocating Tasks
In ShareDo, tasks, matters, offers, and the like can be allocated to teams or to users. This can be done manually or via automated allocation rules. Within the Workflow Designer toolbox, you will find a step for Allocation rules.

Allocation rules within the workflow are used to allocate work to the most appropriate person(s) or teams.

Allocation rules describe:
- An ordered set of rules to be executed to find the user or team to be allocated.
- A set of matching criteria determines whether a specific rule will be run.
- Matching criteria can “interrogate” case information, including work type, propensity to pay and the like.
- The allocation that is to be performed including:
- Select a team.
- Select a user based on a role.
- Select a user based on “Supervises” or other connection.
- Select a user based on their availability.
- Select a user based on their “busyness”.
- Selecting a user based on their competency.
- Selecting a user based on algorithms such as “Round Robin”.
These rules can then be combined to introduce sophisticated allocation algorithms, for example, allocation based on skill sets coupled with capacity and cost price (e.g. at the point of allocating the work item establish who in a given team/part of the business has the necessary skills, see how busy each member of that pool is, and then of those who have the skills and the capacity pick the user with the lowest internal cost price).
See Understanding Allocation Rules.
Workflow Versioning
Within the workflow modeller, you have full control of versions. For a given workflow version you can specify the following:
- Whether that version should be used for existing running processes, where it will amend workflow instances mid-flight. This is typically only suitable for minor changes to workflows.
- Whether that version should be used for new workflow instances - this means that you can make changes to a workflow design and deploy these changes without affecting already running workflow instances.
We also recommend you architect your workflow process to minimize the impact of needing to make a change by breaking what could be one workflow into multiple separate workflows and then stringing these together. Changes could be made to one of these separate processes without affecting the other workflows that comprise the overall process.
Workflow Management
In a large solution, you will have many hundreds or thousands of workflows executing simultaneously. You need to be able to manage these effectively.
Within the global feature, you can define system-wide defaults for error notifications and then override these on a workflow-by-workflow basis.

Within the Admin portal, you can also manage your workflow instances, understand their processing state, and retry them if necessary.
